Source code pulled from OpenBSD for OpenNTPD. The place to contribute to this code is via the OpenBSD CVS tree.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

99 lines
3.1 KiB

  1. .\" Copyright (c) 1990, 1991 The Regents of the University of California.
  2. .\" All rights reserved.
  3. .\"
  4. .\" This code is derived from software contributed to Berkeley by
  5. .\" the American National Standards Committee X3, on Information
  6. .\" Processing Systems.
  7. .\"
  8. .\" Redistribution and use in source and binary forms, with or without
  9. .\" modification, are permitted provided that the following conditions
  10. .\" are met:
  11. .\" 1. Redistributions of source code must retain the above copyright
  12. .\" notice, this list of conditions and the following disclaimer.
  13. .\" 2. Redistributions in binary form must reproduce the above copyright
  14. .\" notice, this list of conditions and the following disclaimer in the
  15. .\" documentation and/or other materials provided with the distribution.
  16. .\" 3. All advertising materials mentioning features or use of this software
  17. .\" must display the following acknowledgement:
  18. .\" This product includes software developed by the University of
  19. .\" California, Berkeley and its contributors.
  20. .\" 4. Neither the name of the University nor the names of its contributors
  21. .\" may be used to endorse or promote products derived from this software
  22. .\" without specific prior written permission.
  23. .\"
  24. .\" THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
  25. .\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
  26. .\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
  27. .\" ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
  28. .\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
  29. .\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
  30. .\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
  31. .\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
  32. .\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  33. .\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  34. .\" SUCH DAMAGE.
  35. .\"
  36. .\" from: @(#)system.3 6.5 (Berkeley) 6/29/91
  37. .\" $Id: system.3,v 1.2 1995/11/01 16:43:27 deraadt Exp $
  38. .\"
  39. .Dd June 29, 1991
  40. .Dt SYSTEM 3
  41. .Os
  42. .Sh NAME
  43. .Nm system
  44. .Nd pass a command to the shell
  45. .Sh SYNOPSIS
  46. .Fd #include <stdlib.h>
  47. .Ft int
  48. .Fn system "const char *string"
  49. .Sh DESCRIPTION
  50. The
  51. .Fn system
  52. function
  53. hands the argument
  54. .Fa string
  55. to the command interpreter
  56. .Xr sh 1 .
  57. The calling process waits for the shell to finish executing the command,
  58. ignoring
  59. .Dv SIGINT
  60. and
  61. .Dv SIGQUIT ,
  62. and blocking
  63. .Dv SIGCHLD .
  64. .Pp
  65. If
  66. .Fa string
  67. is a
  68. .Dv NULL
  69. pointer,
  70. .Fn system
  71. will return non-zero.
  72. Otherwise,
  73. .Fn system
  74. returns the termination status of the shell in the format specified by
  75. .Xr waitpid 2 .
  76. .Sh RETURN VALUES
  77. If a child process cannot be created, or the termination status of
  78. the shell cannot be obtained,
  79. .Fn system
  80. returns -1 and sets
  81. .Va errno
  82. to indicate the error.
  83. If execution of the shell fails,
  84. .Fn system
  85. returns the termination status for a program that terminates with a call of
  86. .Fn exit 127 .
  87. .Sh SEE ALSO
  88. .Xr sh 1 ,
  89. .Xr execve 2 ,
  90. .Xr popen 3 ,
  91. .Xr waitpid 3 ,
  92. .Sh STANDARDS
  93. The
  94. .Fn system
  95. function
  96. conforms to
  97. .St -ansiC
  98. and
  99. .St -1003.2-92 .