mirror of
https://git.openafs.org/openafs.git
synced 2025-01-31 05:27:44 +00:00
tests: Correctly pass string args in superuser-t
We need to give a NULL pointer for string OUT arguments, so XDR knows to allocate a new string. Also free the string each time so it gets set back to NULL. Change-Id: I1eb0c63dc4019b855a2cbecd9e35393f2fbb0fd7 Reviewed-on: http://gerrit.openafs.org/4708 Tested-by: BuildBot <buildbot@rampaginggeek.com> Reviewed-by: Derrick Brashear <shadow@dementia.org>
This commit is contained in:
parent
6e2ecfbeeb
commit
83322372fb
@ -123,7 +123,7 @@ startClient(char *configPath)
|
||||
struct hostent *he;
|
||||
afs_uint32 addr;
|
||||
afs_int32 result;
|
||||
char *string;
|
||||
char *string = NULL;
|
||||
|
||||
plan(63);
|
||||
|
||||
@ -255,6 +255,8 @@ startClient(char *configPath)
|
||||
is_int(0, code, "Can get identity back");
|
||||
is_string("<LocalAuth>", string, "Forged token is super user");
|
||||
|
||||
xdr_free((xdrproc_t)xdr_string, &string);
|
||||
|
||||
/* Throw away this connection and security class */
|
||||
rx_DestroyConnection(conn);
|
||||
rxs_Release(class);
|
||||
@ -275,9 +277,11 @@ startClient(char *configPath)
|
||||
is_int(EPERM, code,
|
||||
"Running new interface RPC as non-super user fails as expected");
|
||||
code = TEST_WhoAmI(conn, &string);
|
||||
xdr_free((xdrproc_t)xdr_string, &string);
|
||||
is_int(EPERM, code,
|
||||
"Running RPC returning string fails as expected");
|
||||
code = TEST_NewWhoAmI(conn, &string);
|
||||
xdr_free((xdrproc_t)xdr_string, &string);
|
||||
is_int(EPERM, code,
|
||||
"Running new interface RPC returning string fails as expected");
|
||||
ok(afsconf_AddUser(dir, "rpctest") == 0,
|
||||
@ -289,9 +293,11 @@ startClient(char *configPath)
|
||||
code = TEST_WhoAmI(conn, &string);
|
||||
is_int(0, code, "Running RPC returning string as %s works", "rpctest");
|
||||
is_string("rpctest", string, "Returned user string matches");
|
||||
xdr_free((xdrproc_t)xdr_string, &string);
|
||||
code = TEST_NewWhoAmI(conn, &string);
|
||||
is_int(0, code, "Running new RPC returning string as %s works", "rpctest");
|
||||
is_string("rpctest", string, "Returned user string for new interface matches");
|
||||
xdr_free((xdrproc_t)xdr_string, &string);
|
||||
rx_DestroyConnection(conn);
|
||||
rxs_Release(class);
|
||||
|
||||
@ -310,9 +316,11 @@ startClient(char *configPath)
|
||||
is_int(EPERM, code,
|
||||
"Running new interface RPC as non-super user fails as expected");
|
||||
code = TEST_WhoAmI(conn, &string);
|
||||
xdr_free((xdrproc_t)xdr_string, &string);
|
||||
is_int(EPERM, code,
|
||||
"Running RPC returning string fails as expected");
|
||||
code = TEST_NewWhoAmI(conn, &string);
|
||||
xdr_free((xdrproc_t)xdr_string, &string);
|
||||
is_int(EPERM, code,
|
||||
"Running new interface RPC returning string fails as expected");
|
||||
|
||||
@ -326,11 +334,13 @@ startClient(char *configPath)
|
||||
code = TEST_WhoAmI(conn, &string);
|
||||
is_int(0, code, "Running RPC returning string as %s works", "rpctest/admin");
|
||||
is_string("rpctest.admin", string, "Returned user string matches");
|
||||
xdr_free((xdrproc_t)xdr_string, &string);
|
||||
code = TEST_NewWhoAmI(conn, &string);
|
||||
is_int(0, code, "Running new interface RPC returning string as %s works",
|
||||
"rpctest/admin");
|
||||
is_string("rpctest.admin", string,
|
||||
"Returned user string from new interface matches");
|
||||
xdr_free((xdrproc_t)xdr_string, &string);
|
||||
|
||||
rx_DestroyConnection(conn);
|
||||
rxs_Release(class);
|
||||
|
Loading…
x
Reference in New Issue
Block a user