diff options
-rw-r--r-- | source3/librpc/gen_ndr/libnetapi.h | 30 | ||||
-rw-r--r-- | source3/librpc/gen_ndr/ndr_libnetapi.c | 50 | ||||
-rw-r--r-- | source3/librpc/gen_ndr/ndr_libnetapi.h | 12 |
3 files changed, 91 insertions, 1 deletions
diff --git a/source3/librpc/gen_ndr/libnetapi.h b/source3/librpc/gen_ndr/libnetapi.h index 23a18331fe..55d2408248 100644 --- a/source3/librpc/gen_ndr/libnetapi.h +++ b/source3/librpc/gen_ndr/libnetapi.h @@ -2,6 +2,8 @@ #include <stdint.h> +#include "libcli/util/ntstatus.h" + #define LIBNETAPI_LOCAL_SERVER(x) (!x || is_myname_or_ipaddr(x)) #ifndef MAXSUBAUTHS #define MAXSUBAUTHS 15 /* max sub authorities in a SID */ @@ -2069,4 +2071,32 @@ struct NetFileEnum { }; + +struct NetShutdownInit { + struct { + const char * server_name; + const char * message; + uint32_t timeout; + uint8_t force_apps; + uint8_t do_reboot; + } in; + + struct { + enum NET_API_STATUS result; + } out; + +}; + + +struct NetShutdownAbort { + struct { + const char * server_name; + } in; + + struct { + enum NET_API_STATUS result; + } out; + +}; + #endif /* _HEADER_libnetapi */ diff --git a/source3/librpc/gen_ndr/ndr_libnetapi.c b/source3/librpc/gen_ndr/ndr_libnetapi.c index 856e8a0c4e..25956bff85 100644 --- a/source3/librpc/gen_ndr/ndr_libnetapi.c +++ b/source3/librpc/gen_ndr/ndr_libnetapi.c @@ -990,6 +990,7 @@ _PUBLIC_ enum ndr_err_code ndr_push_SERVER_INFO_598(struct ndr_push *ndr, int nd NDR_CHECK(ndr_push_uint8(ndr, NDR_SCALARS, r->sv598_disablestrictnamechecking)); } if (ndr_flags & NDR_BUFFERS) { + NDR_CHECK(ndr_push_GUID(ndr, NDR_BUFFERS, &r->sv598_serverguid)); } return NDR_ERR_SUCCESS; } @@ -1042,6 +1043,7 @@ _PUBLIC_ enum ndr_err_code ndr_pull_SERVER_INFO_598(struct ndr_pull *ndr, int nd NDR_CHECK(ndr_pull_uint8(ndr, NDR_SCALARS, &r->sv598_disablestrictnamechecking)); } if (ndr_flags & NDR_BUFFERS) { + NDR_CHECK(ndr_pull_GUID(ndr, NDR_BUFFERS, &r->sv598_serverguid)); } return NDR_ERR_SUCCESS; } @@ -7604,3 +7606,51 @@ _PUBLIC_ void ndr_print_NetFileEnum(struct ndr_print *ndr, const char *name, int ndr->depth--; } +_PUBLIC_ void ndr_print_NetShutdownInit(struct ndr_print *ndr, const char *name, int flags, const struct NetShutdownInit *r) +{ + ndr_print_struct(ndr, name, "NetShutdownInit"); + ndr->depth++; + if (flags & NDR_SET_VALUES) { + ndr->flags |= LIBNDR_PRINT_SET_VALUES; + } + if (flags & NDR_IN) { + ndr_print_struct(ndr, "in", "NetShutdownInit"); + ndr->depth++; + ndr_print_string(ndr, "server_name", r->in.server_name); + ndr_print_string(ndr, "message", r->in.message); + ndr_print_uint32(ndr, "timeout", r->in.timeout); + ndr_print_uint8(ndr, "force_apps", r->in.force_apps); + ndr_print_uint8(ndr, "do_reboot", r->in.do_reboot); + ndr->depth--; + } + if (flags & NDR_OUT) { + ndr_print_struct(ndr, "out", "NetShutdownInit"); + ndr->depth++; + ndr_print_NET_API_STATUS(ndr, "result", r->out.result); + ndr->depth--; + } + ndr->depth--; +} + +_PUBLIC_ void ndr_print_NetShutdownAbort(struct ndr_print *ndr, const char *name, int flags, const struct NetShutdownAbort *r) +{ + ndr_print_struct(ndr, name, "NetShutdownAbort"); + ndr->depth++; + if (flags & NDR_SET_VALUES) { + ndr->flags |= LIBNDR_PRINT_SET_VALUES; + } + if (flags & NDR_IN) { + ndr_print_struct(ndr, "in", "NetShutdownAbort"); + ndr->depth++; + ndr_print_string(ndr, "server_name", r->in.server_name); + ndr->depth--; + } + if (flags & NDR_OUT) { + ndr_print_struct(ndr, "out", "NetShutdownAbort"); + ndr->depth++; + ndr_print_NET_API_STATUS(ndr, "result", r->out.result); + ndr->depth--; + } + ndr->depth--; +} + diff --git a/source3/librpc/gen_ndr/ndr_libnetapi.h b/source3/librpc/gen_ndr/ndr_libnetapi.h index cae0a70ea6..f714302382 100644 --- a/source3/librpc/gen_ndr/ndr_libnetapi.h +++ b/source3/librpc/gen_ndr/ndr_libnetapi.h @@ -104,7 +104,11 @@ #define NDR_NETFILEENUM (0x30) -#define NDR_LIBNETAPI_CALL_COUNT (49) +#define NDR_NETSHUTDOWNINIT (0x31) + +#define NDR_NETSHUTDOWNABORT (0x32) + +#define NDR_LIBNETAPI_CALL_COUNT (51) enum ndr_err_code ndr_push_NET_API_STATUS(struct ndr_push *ndr, int ndr_flags, enum NET_API_STATUS r); enum ndr_err_code ndr_pull_NET_API_STATUS(struct ndr_pull *ndr, int ndr_flags, enum NET_API_STATUS *r); void ndr_print_NET_API_STATUS(struct ndr_print *ndr, const char *name, enum NET_API_STATUS r); @@ -687,4 +691,10 @@ void ndr_print_NetFileGetInfo(struct ndr_print *ndr, const char *name, int flags enum ndr_err_code ndr_push_NetFileEnum(struct ndr_push *ndr, int flags, const struct NetFileEnum *r); enum ndr_err_code ndr_pull_NetFileEnum(struct ndr_pull *ndr, int flags, struct NetFileEnum *r); void ndr_print_NetFileEnum(struct ndr_print *ndr, const char *name, int flags, const struct NetFileEnum *r); +enum ndr_err_code ndr_push_NetShutdownInit(struct ndr_push *ndr, int flags, const struct NetShutdownInit *r); +enum ndr_err_code ndr_pull_NetShutdownInit(struct ndr_pull *ndr, int flags, struct NetShutdownInit *r); +void ndr_print_NetShutdownInit(struct ndr_print *ndr, const char *name, int flags, const struct NetShutdownInit *r); +enum ndr_err_code ndr_push_NetShutdownAbort(struct ndr_push *ndr, int flags, const struct NetShutdownAbort *r); +enum ndr_err_code ndr_pull_NetShutdownAbort(struct ndr_pull *ndr, int flags, struct NetShutdownAbort *r); +void ndr_print_NetShutdownAbort(struct ndr_print *ndr, const char *name, int flags, const struct NetShutdownAbort *r); #endif /* _HEADER_NDR_libnetapi */ |