diff options
author | Günther Deschner <gd@samba.org> | 2008-04-09 12:38:22 +0200 |
---|---|---|
committer | Günther Deschner <gd@samba.org> | 2008-04-09 13:23:09 +0200 |
commit | 6b2ae8e9ffabfa61f48397bf27966fd87a39aff9 (patch) | |
tree | 6733f4e9c963ac09c9b110d651575a05bc537224 /source3/lib/netapi/libnetapi.c | |
parent | fcdf2c020279b84a8f78348cb0d68030bb78c134 (diff) | |
download | samba-6b2ae8e9ffabfa61f48397bf27966fd87a39aff9.tar.gz samba-6b2ae8e9ffabfa61f48397bf27966fd87a39aff9.tar.bz2 samba-6b2ae8e9ffabfa61f48397bf27966fd87a39aff9.zip |
Add NetUserAdd to libnetapi.
Guenther
(This used to be commit cb98996ed2ac93a0e15838048405772d2043021a)
Diffstat (limited to 'source3/lib/netapi/libnetapi.c')
-rw-r--r-- | source3/lib/netapi/libnetapi.c | 46 |
1 files changed, 46 insertions, 0 deletions
diff --git a/source3/lib/netapi/libnetapi.c b/source3/lib/netapi/libnetapi.c index ed97df2143..9d92dac39f 100644 --- a/source3/lib/netapi/libnetapi.c +++ b/source3/lib/netapi/libnetapi.c @@ -441,3 +441,49 @@ NET_API_STATUS DsGetDcName(const char * server_name /* [in] [unique] */, return r.out.result; } +/**************************************************************** + NetUserAdd +****************************************************************/ + +NET_API_STATUS NetUserAdd(const char * server_name /* [in] [unique] */, + uint32_t level /* [in] */, + uint8_t *buffer /* [in] [ref] */, + uint32_t *parm_error /* [out] [ref] */) +{ + struct NetUserAdd r; + struct libnetapi_ctx *ctx = NULL; + NET_API_STATUS status; + WERROR werr; + + status = libnetapi_getctx(&ctx); + if (status != 0) { + return status; + } + + /* In parameters */ + r.in.server_name = server_name; + r.in.level = level; + r.in.buffer = buffer; + + /* Out parameters */ + r.out.parm_error = parm_error; + + if (DEBUGLEVEL >= 10) { + NDR_PRINT_IN_DEBUG(NetUserAdd, &r); + } + + if (LIBNETAPI_LOCAL_SERVER(server_name)) { + werr = NetUserAdd_l(ctx, &r); + } else { + werr = NetUserAdd_r(ctx, &r); + } + + r.out.result = W_ERROR_V(werr); + + if (DEBUGLEVEL >= 10) { + NDR_PRINT_OUT_DEBUG(NetUserAdd, &r); + } + + return r.out.result; +} + |