diff options
author | Jeremy Allison <jra@samba.org> | 2000-05-02 02:23:41 +0000 |
---|---|---|
committer | Jeremy Allison <jra@samba.org> | 2000-05-02 02:23:41 +0000 |
commit | 693ffb8466ada58ecc59fde754ba79fc6f51528d (patch) | |
tree | 639fae54b3d874aae78e5732aef20f52de5b60bf /source3/client | |
parent | 830a9e571eee5330097376e94af7dc0f2d5f2f02 (diff) | |
download | samba-693ffb8466ada58ecc59fde754ba79fc6f51528d.tar.gz samba-693ffb8466ada58ecc59fde754ba79fc6f51528d.tar.bz2 samba-693ffb8466ada58ecc59fde754ba79fc6f51528d.zip |
Added sys_fork() and sys_getpid() functions to stop the overhead
of doing a system call every time we want to just get our pid.
Jeremy.
(This used to be commit 148628b616b5c29ba6340d65fc3ddbcabba6e67a)
Diffstat (limited to 'source3/client')
-rw-r--r-- | source3/client/client.c | 8 | ||||
-rw-r--r-- | source3/client/smbmount.c | 4 |
2 files changed, 6 insertions, 6 deletions
diff --git a/source3/client/client.c b/source3/client/client.c index ade1436871..7431b2704e 100644 --- a/source3/client/client.c +++ b/source3/client/client.c @@ -849,7 +849,7 @@ static void cmd_more(void) fstrcat(rname,"\\"); slprintf(tmpname, sizeof(fstring)-1, - "%s/smbmore.%d",tmpdir(),(int)getpid()); + "%s/smbmore.%d",tmpdir(),(int)sys_getpid()); fstrcpy(lname,tmpname); if (!next_token(NULL,rname+strlen(rname),NULL,sizeof(rname)-strlen(rname))) { @@ -1159,7 +1159,7 @@ static void cmd_mput(void) FILE *f; slprintf(tmpname,sizeof(pstring)-1, - "%s/ls.smb.%d",tmpdir(),(int)getpid()); + "%s/ls.smb.%d",tmpdir(),(int)sys_getpid()); if (recurse) slprintf(cmd,sizeof(pstring)-1, "find . -name \"%s\" -print > %s",p,tmpname); @@ -1269,11 +1269,11 @@ static void cmd_print(void) pstrcpy(rname,lname); p = strrchr(rname,'/'); if (p) { - slprintf(rname, sizeof(rname)-1, "%s-%d", p+1, (int)getpid()); + slprintf(rname, sizeof(rname)-1, "%s-%d", p+1, (int)sys_getpid()); } if (strequal(lname,"-")) { - slprintf(rname, sizeof(rname)-1, "stdin-%d", (int)getpid()); + slprintf(rname, sizeof(rname)-1, "stdin-%d", (int)sys_getpid()); } do_put(rname, lname); diff --git a/source3/client/smbmount.c b/source3/client/smbmount.c index 18af824c1f..ec3f32bd36 100644 --- a/source3/client/smbmount.c +++ b/source3/client/smbmount.c @@ -72,7 +72,7 @@ static void daemonize(void) signal( SIGTERM, exit_parent ); - if ((child_pid = fork()) < 0) { + if ((child_pid = sys_fork()) < 0) { fprintf(stderr,"could not fork\n"); } @@ -437,7 +437,7 @@ static void init_mount(void) args[i++] = xstrdup(tmp); } - if (fork() == 0) { + if (sys_fork() == 0) { if (file_exist(BINDIR "/smbmnt", NULL)) { execv(BINDIR "/smbmnt", args); fprintf(stderr,"execv of %s failed. Error was %s.", BINDIR "/smbmnt", strerror(errno)); |