Author: metze
Date: 2004-08-18 11:01:06 +0000 (Wed, 18 Aug 2004)
New Revision: 1878

WebSVN: http://websvn.samba.org/websvn/changeset.php?rep=samba&path=/&rev=1878&nolog=1

Log:
implemet libnet_context_{init,destroy}

and implement libnet_Change_Password_generic()

metze

Added:
   branches/SAMBA_4_0/source/libnet/libnet.c
Modified:
   branches/SAMBA_4_0/source/libnet/config.mk
   branches/SAMBA_4_0/source/libnet/libnet_passwd.c


Changeset:
Modified: branches/SAMBA_4_0/source/libnet/config.mk
===================================================================
--- branches/SAMBA_4_0/source/libnet/config.mk  2004-08-18 10:35:46 UTC (rev 1877)
+++ branches/SAMBA_4_0/source/libnet/config.mk  2004-08-18 11:01:06 UTC (rev 1878)
@@ -1,6 +1,8 @@
 #################################
 # Start SUBSYSTEM LIBNET
 [SUBSYSTEM::LIBNET]
+INIT_OBJ_FILES = \
+               libnet/libnet.o
 ADD_OBJ_FILES = \
                libnet/libnet_passwd.o \
                libnet/libnet_rpc.o

Added: branches/SAMBA_4_0/source/libnet/libnet.c
===================================================================
--- branches/SAMBA_4_0/source/libnet/libnet.c   2004-08-18 10:35:46 UTC (rev 1877)
+++ branches/SAMBA_4_0/source/libnet/libnet.c   2004-08-18 11:01:06 UTC (rev 1878)
@@ -0,0 +1,45 @@
+/* 
+   Unix SMB/CIFS implementation.
+   
+   Copyright (C) Stefan Metzmacher     2004
+   
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+   
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+   
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+*/
+
+#include "includes.h"
+
+struct libnet_context *libnet_context_init(void)
+{
+       TALLOC_CTX *mem_ctx;
+       struct libnet_context *ctx;
+
+       mem_ctx = talloc_init("libnet_context");
+
+       ctx = talloc_p(mem_ctx, struct libnet_context);
+       if (!ctx) {
+               return NULL;
+       }
+
+       ctx->mem_ctx = mem_ctx;
+
+       return ctx;
+}
+
+void libnet_context_destroy(struct libnet_context **libnetctx)
+{
+       talloc_destroy((*libnetctx)->mem_ctx);
+
+       (*libnetctx) = NULL;
+}

Modified: branches/SAMBA_4_0/source/libnet/libnet_passwd.c
===================================================================
--- branches/SAMBA_4_0/source/libnet/libnet_passwd.c    2004-08-18 10:35:46 UTC (rev 
1877)
+++ branches/SAMBA_4_0/source/libnet/libnet_passwd.c    2004-08-18 11:01:06 UTC (rev 
1878)
@@ -106,7 +106,20 @@
 
 static NTSTATUS libnet_ChangePassword_generic(struct libnet_context *ctx, TALLOC_CTX 
*mem_ctx, union libnet_ChangePassword *r)
 {
-       return NT_STATUS_NOT_IMPLEMENTED;
+       NTSTATUS status;
+       union libnet_ChangePassword r2;
+
+       r2.generic.level        = LIBNET_CHANGE_PASSWORD_RPC;
+       r2.rpc.in.account_name  = NULL;
+       r2.rpc.in.domain_name   = NULL;
+       r2.rpc.in.oldpassword   = NULL;
+       r2.rpc.in.newpassword   = NULL;
+
+       status = libnet_ChangePassword(ctx, mem_ctx, &r2);
+
+       r->generic.out.error_string = r2.rpc.out.error_string;
+
+       return status;
 }
 
 NTSTATUS libnet_ChangePassword(struct libnet_context *ctx, TALLOC_CTX *mem_ctx, union 
libnet_ChangePassword *r)

Reply via email to