From 75903038bc52105bc7479fe5f2b75f22f10c1c50 Mon Sep 17 00:00:00 2001
From: jasone <jasone@FreeBSD.org>
Date: Wed, 12 Jan 2000 09:23:48 +0000
Subject: Add three-tier symbol naming in support of POSIX thread cancellation
 points.  For library functions, the pattern is __sleep() <-- _libc_sleep()
 <-- sleep().  The arrows represent weak aliases.  For system calls, the
 pattern is _read() <-- _libc_read() <-- read().

---
 lib/libc/stdlib/system.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

(limited to 'lib/libc/stdlib/system.c')

diff --git a/lib/libc/stdlib/system.c b/lib/libc/stdlib/system.c
index 00db7d6..0039c078 100644
--- a/lib/libc/stdlib/system.c
+++ b/lib/libc/stdlib/system.c
@@ -29,6 +29,8 @@
  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  * SUCH DAMAGE.
+ *
+ * $FreeBSD$
  */
 
 #if defined(LIBC_SCCS) && !defined(lint)
@@ -44,7 +46,8 @@ static char sccsid[] = "@(#)system.c	8.1 (Berkeley) 6/4/93";
 #include <paths.h>
 #include <errno.h>
 
-int system(command)
+int
+__system(command)
 	const char *command;
 {
 	pid_t pid;
@@ -81,7 +84,7 @@ int system(command)
 		_exit(127);
 	default:			/* parent */
 		do {
-			pid = waitpid(pid, &pstat, 0);
+			pid = _libc_waitpid(pid, &pstat, 0);
 		} while (pid == -1 && errno == EINTR);
 		break;
 	}
@@ -90,3 +93,6 @@ int system(command)
 	(void)sigprocmask(SIG_SETMASK, &oldsigblock, NULL);
 	return(pid == -1 ? -1 : pstat);
 }
+
+__weak_reference(__system, _libc_system);
+__weak_reference(_libc_system, system);
-- 
cgit v1.1