diff options
author | Andrew Tridgell <tridge@samba.org> | 1999-07-14 06:56:06 +0000 |
---|---|---|
committer | Andrew Tridgell <tridge@samba.org> | 1999-07-14 06:56:06 +0000 |
commit | d09e7ab999c71460c5d5bba77429305135fade7e (patch) | |
tree | 99a0a93de933d71653d2ea9e473f1ea47b1144b2 | |
parent | 2d2961ba090079add917574c04a5857e5b2211a7 (diff) | |
download | samba-d09e7ab999c71460c5d5bba77429305135fade7e.tar.gz |
transfer some more fixes from the 2.0 branch (mostly smbtorture changes)
-rw-r--r-- | source/utils/nbio.c | 4 | ||||
-rw-r--r-- | source/utils/rpctorture.c | 2 | ||||
-rw-r--r-- | source/utils/smbpasswd.c | 4 | ||||
-rw-r--r-- | source/utils/testparm.c | 4 | ||||
-rw-r--r-- | source/utils/torture.c | 26 |
5 files changed, 27 insertions, 13 deletions
diff --git a/source/utils/nbio.c b/source/utils/nbio.c index 4b369848cdf..71ac959f117 100644 --- a/source/utils/nbio.c +++ b/source/utils/nbio.c @@ -37,7 +37,7 @@ static struct { static struct cli_state *c; -static int sigsegv(int sig) +static void sigsegv(int sig) { char line[200]; printf("segv at line %d\n", line_count); @@ -50,6 +50,8 @@ static int sigsegv(int sig) void nb_setup(struct cli_state *cli) { signal(SIGSEGV, sigsegv); + /* to be like a true Windows client we need to negotiate oplocks */ + cli->use_oplocks = True; c = cli; } diff --git a/source/utils/rpctorture.c b/source/utils/rpctorture.c index 201130f1eba..20d101fa9f8 100644 --- a/source/utils/rpctorture.c +++ b/source/utils/rpctorture.c @@ -182,7 +182,7 @@ static void create_procs(int nprocs, int numops, { if (fork() == 0) { - int mypid = getpid(); + pid_t mypid = getpid(); sys_srandom(mypid ^ time(NULL)); fn(numops, cli_info, cli); fflush(out_hnd); diff --git a/source/utils/smbpasswd.c b/source/utils/smbpasswd.c index 61cba2a1a18..8daa36bf2fa 100644 --- a/source/utils/smbpasswd.c +++ b/source/utils/smbpasswd.c @@ -357,7 +357,7 @@ static int process_root(int argc, char *argv[]) usage(); } - if (!user_name && (pwd = getpwuid(0))) { + if (!user_name && (pwd = sys_getpwuid(0))) { user_name = xstrdup(pwd->pw_name); } @@ -503,7 +503,7 @@ static int process_nonroot(int argc, char *argv[]) } if (!user_name) { - pwd = getpwuid(getuid()); + pwd = sys_getpwuid(getuid()); if (pwd) { user_name = xstrdup(pwd->pw_name); } else { diff --git a/source/utils/testparm.c b/source/utils/testparm.c index d8b41bc3f06..7baeecd80b3 100644 --- a/source/utils/testparm.c +++ b/source/utils/testparm.c @@ -238,8 +238,8 @@ int main(int argc, char *argv[]) } if (argc >= 3) { - char *cname; - char *caddr; + char *cname=NULL; + char *caddr=NULL; if (argc == 3) { cname = argv[optind]; diff --git a/source/utils/torture.c b/source/utils/torture.c index 9f15aaca4e9..55047dbb4ff 100644 --- a/source/utils/torture.c +++ b/source/utils/torture.c @@ -88,13 +88,17 @@ static void *shm_setup(int size) static BOOL open_connection(struct cli_state *c) { struct nmb_name called, calling; + struct in_addr ip; + extern struct in_addr ipzero; ZERO_STRUCTP(c); make_nmb_name(&calling, myname, 0x0, ""); make_nmb_name(&called , host, 0x20, ""); - if (!cli_initialise(c) || !cli_connect(c, host, NULL)) { + ip = ipzero; + + if (!cli_initialise(c) || !cli_connect(c, host, &ip)) { printf("Failed to connect with %s\n", host); return False; } @@ -179,7 +183,7 @@ static BOOL rw_torture(struct cli_state *c) fstring fname; int fnum; int fnum2; - int pid2, pid = getpid(); + pid_t pid2, pid = getpid(); int i, j; char buf[1024]; @@ -299,6 +303,8 @@ static void run_netbench(int client) line[strlen(line)-1] = 0; + /* printf("[%d] %s\n", line_count, line); */ + all_string_sub(line,"CLIENT1", cname); for (i=0;i<20;i++) params[i] = ""; @@ -824,7 +830,7 @@ static void run_maxfidtest(void) fnum = 0; while (1) { - slprintf(fname,sizeof(fname)-1,template, fnum,getpid()); + slprintf(fname,sizeof(fname)-1,template, fnum,(int)getpid()); if (cli_open(&cli, fname, O_RDWR|O_CREAT|O_TRUNC, DENY_NONE) == -1) { @@ -839,7 +845,7 @@ static void run_maxfidtest(void) printf("cleaning up\n"); while (fnum > n) { fnum--; - slprintf(fname,sizeof(fname)-1,template, fnum,getpid()); + slprintf(fname,sizeof(fname)-1,template, fnum,(int)getpid()); if (cli_unlink(&cli, fname)) { printf("unlink of %s failed (%s)\n", fname, cli_errstr(&cli)); @@ -1113,14 +1119,16 @@ static double create_procs(void (*fn)(int )) for (i=0;i<nprocs;i++) { if (fork() == 0) { - int mypid = getpid(); - sys_srandom(mypid ^ time(NULL)); + pid_t mypid = getpid(); + sys_srandom(((int)mypid) ^ ((int)time(NULL))); + + slprintf(myname,sizeof(myname),"CLIENT%d", i); while (1) { memset(¤t_cli, 0, sizeof(current_cli)); if (open_connection(¤t_cli)) break; if (tries-- == 0) { - printf("pid %d failed to start\n", getpid()); + printf("pid %d failed to start\n", (int)getpid()); _exit(1); } msleep(10); @@ -1258,6 +1266,7 @@ static void usage(void) extern char *optarg; extern int optind; extern FILE *dbf; + static pstring servicesf = CONFIGFILE; dbf = stdout; @@ -1265,6 +1274,9 @@ static void usage(void) charset_initialise(); + lp_load(servicesf,True,False,False); + load_interfaces(); + if (argc < 2) { usage(); } |