s3-libnetapi: add NetCreateProvisioningPackage boilerplate
authorGünther Deschner <gd@samba.org>
Mon, 15 Feb 2021 13:27:27 +0000 (14:27 +0100)
committerGünther Deschner <gd@samba.org>
Fri, 9 Jul 2021 17:45:43 +0000 (19:45 +0200)
Guenther

Signed-off-by: Guenther Deschner <gd@samba.org>
source3/lib/netapi/joindomain.c
source3/lib/netapi/libnetapi.c
source3/lib/netapi/libnetapi.h

index da40a88717200e4c67deccb1cd70dc85a42408f5..0e7ff463e50042a631c709a76410d69e842127eb 100644 (file)
@@ -916,3 +916,21 @@ WERROR NetRequestOfflineDomainJoin_l(struct libnetapi_ctx *ctx,
 
        return W_ERROR(NERR_JoinPerformedMustRestart);
 }
+
+/****************************************************************
+****************************************************************/
+
+WERROR NetCreateProvisioningPackage_r(struct libnetapi_ctx *ctx,
+                                     struct NetCreateProvisioningPackage *r)
+{
+       return WERR_NOT_SUPPORTED;
+}
+
+/****************************************************************
+****************************************************************/
+
+WERROR NetCreateProvisioningPackage_l(struct libnetapi_ctx *ctx,
+                                     struct NetCreateProvisioningPackage *r)
+{
+       return WERR_NOT_SUPPORTED;
+}
index 2fd97bba75bed105cb1cfc364919a4e5fd3eec02..188137acd0c29c2d185094818f1acd1586d6f62c 100644 (file)
@@ -345,6 +345,56 @@ NET_API_STATUS NetProvisionComputerAccount(const char * domain /* [in] [ref] */,
        return (NET_API_STATUS)r.out.result;
 }
 
+/****************************************************************
+ NetCreateProvisioningPackage
+****************************************************************/
+
+NET_API_STATUS NetCreateProvisioningPackage(struct NETSETUP_PROVISIONING_PARAMS *provisioning_params /* [in] [ref] */,
+                                           uint8_t **provision_bin_data /* [in,out] [unique] */,
+                                           uint32_t *provision_bin_data_size /* [in,out] [unique] */,
+                                           const char * *provision_text_data /* [in,out] [unique] */)
+{
+       struct NetCreateProvisioningPackage r;
+       struct libnetapi_ctx *ctx = NULL;
+       NET_API_STATUS status;
+       WERROR werr;
+       TALLOC_CTX *frame = talloc_stackframe();
+
+       ZERO_STRUCT(r);
+
+       status = libnetapi_getctx(&ctx);
+       if (status != 0) {
+               TALLOC_FREE(frame);
+               return status;
+       }
+
+       /* In parameters */
+       r.in.provisioning_params = provisioning_params;
+       r.in.provision_bin_data = provision_bin_data;
+       r.in.provision_bin_data_size = provision_bin_data_size;
+       r.in.provision_text_data = provision_text_data;
+
+       /* Out parameters */
+       r.out.provision_bin_data = provision_bin_data;
+       r.out.provision_bin_data_size = provision_bin_data_size;
+       r.out.provision_text_data = provision_text_data;
+
+       if (DEBUGLEVEL >= 10) {
+               NDR_PRINT_IN_DEBUG(NetCreateProvisioningPackage, &r);
+       }
+
+       werr = NetCreateProvisioningPackage_l(ctx, &r);
+
+       r.out.result = W_ERROR_V(werr);
+
+       if (DEBUGLEVEL >= 10) {
+               NDR_PRINT_OUT_DEBUG(NetCreateProvisioningPackage, &r);
+       }
+
+       TALLOC_FREE(frame);
+       return (NET_API_STATUS)r.out.result;
+}
+
 /****************************************************************
  NetRequestOfflineDomainJoin
 ****************************************************************/
index d217656845d7ca7b2567191bf2153f72ac1527e1..3b06ef3e983635c9e0e42c7d84cc35ea7cd21e99 100644 (file)
@@ -75,6 +75,14 @@ WERROR NetProvisionComputerAccount_r(struct libnetapi_ctx *ctx,
                                     struct NetProvisionComputerAccount *r);
 WERROR NetProvisionComputerAccount_l(struct libnetapi_ctx *ctx,
                                     struct NetProvisionComputerAccount *r);
+NET_API_STATUS NetCreateProvisioningPackage(struct NETSETUP_PROVISIONING_PARAMS *provisioning_params /* [in] [ref] */,
+                                           uint8_t **provision_bin_data /* [in,out] [unique] */,
+                                           uint32_t *provision_bin_data_size /* [in,out] [unique] */,
+                                           const char * *provision_text_data /* [in,out] [unique] */);
+WERROR NetCreateProvisioningPackage_r(struct libnetapi_ctx *ctx,
+                                     struct NetCreateProvisioningPackage *r);
+WERROR NetCreateProvisioningPackage_l(struct libnetapi_ctx *ctx,
+                                     struct NetCreateProvisioningPackage *r);
 NET_API_STATUS NetRequestOfflineDomainJoin(uint8_t *provision_bin_data /* [in] [unique] */,
                                           uint32_t provision_bin_data_size /* [in] */,
                                           uint32_t options /* [in] */,