s3-lib: Fix util_cmdline which doesn't use popt.
authorAndreas Schneider <asn@samba.org>
Mon, 30 Jan 2012 09:53:18 +0000 (10:53 +0100)
committerAndreas Schneider <asn@cryptomilk.org>
Wed, 1 Feb 2012 20:54:21 +0000 (21:54 +0100)
This creates its own header file for util_cmdline so it doesn't need to
link against popt.
This should fix linking on FreeBSD.

source3/include/auth_info.h [new file with mode: 0644]
source3/include/popt_common.h
source3/include/proto.h
source3/lib/netapi/cm.c
source3/lib/util_cmdline.c
source3/libsmb/cliconnect.c
source3/libsmb/libsmb_dir.c
source3/libsmb/proto.h
source3/wscript_build

diff --git a/source3/include/auth_info.h b/source3/include/auth_info.h
new file mode 100644 (file)
index 0000000..6b5105d
--- /dev/null
@@ -0,0 +1,67 @@
+/*
+ * Unix SMB/CIFS implementation.
+ *
+ * Copyright (c) 2012      Andreas Schneider <asn@samba.org>
+ *
+ * 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 3 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, see <http://www.gnu.org/licenses/>.
+ */
+
+#ifndef _AUTH_INFO_H
+#define _AUTH_INFO_H
+
+struct user_auth_info {
+       char *username;
+       char *domain;
+       char *password;
+       bool got_pass;
+       bool use_kerberos;
+       int signing_state;
+       bool smb_encrypt;
+       bool use_machine_account;
+       bool fallback_after_kerberos;
+       bool use_ccache;
+};
+
+struct user_auth_info *user_auth_info_init(TALLOC_CTX *mem_ctx);
+const char *get_cmdline_auth_info_username(const struct user_auth_info *auth_info);
+void set_cmdline_auth_info_username(struct user_auth_info *auth_info,
+                                   const char *username);
+const char *get_cmdline_auth_info_domain(const struct user_auth_info *auth_info);
+void set_cmdline_auth_info_domain(struct user_auth_info *auth_info,
+                                 const char *domain);
+void set_cmdline_auth_info_password(struct user_auth_info *auth_info,
+                                   const char *password);
+const char *get_cmdline_auth_info_password(const struct user_auth_info *auth_info);
+bool set_cmdline_auth_info_signing_state(struct user_auth_info *auth_info,
+                                        const char *arg);
+int get_cmdline_auth_info_signing_state(const struct user_auth_info *auth_info);
+void set_cmdline_auth_info_use_ccache(struct user_auth_info *auth_info,
+                                     bool b);
+bool get_cmdline_auth_info_use_ccache(const struct user_auth_info *auth_info);
+void set_cmdline_auth_info_use_kerberos(struct user_auth_info *auth_info,
+                                       bool b);
+bool get_cmdline_auth_info_use_kerberos(const struct user_auth_info *auth_info);
+void set_cmdline_auth_info_fallback_after_kerberos(struct user_auth_info *auth_info,
+                                       bool b);
+bool get_cmdline_auth_info_fallback_after_kerberos(const struct user_auth_info *auth_info);
+void set_cmdline_auth_info_use_krb5_ticket(struct user_auth_info *auth_info);
+void set_cmdline_auth_info_smb_encrypt(struct user_auth_info *auth_info);
+void set_cmdline_auth_info_use_machine_account(struct user_auth_info *auth_info);
+bool get_cmdline_auth_info_got_pass(const struct user_auth_info *auth_info);
+bool get_cmdline_auth_info_smb_encrypt(const struct user_auth_info *auth_info);
+bool get_cmdline_auth_info_use_machine_account(const struct user_auth_info *auth_info);
+bool set_cmdline_auth_info_machine_account_creds(struct user_auth_info *auth_info);
+void set_cmdline_auth_info_getpass(struct user_auth_info *auth_info);
+
+#endif /* _AUTH_INFO_H */
index 10dd2f4ebeeeff07f9964b8e2c749ea082ac306c..2125ed6f83afb1823685073e37ba24b1a520f549 100644 (file)
@@ -21,6 +21,7 @@
 #define _POPT_COMMON_H
 
 #include <popt.h>
+#include "auth_info.h"
 
 /* Common popt structures */
 extern struct poptOption popt_common_samba[];
@@ -47,19 +48,6 @@ extern const struct poptOption popt_common_dynconfig[];
 #define POPT_COMMON_DEBUGLEVEL { NULL, 0, POPT_ARG_INCLUDE_TABLE, popt_common_debuglevel, 0, "Common samba debugging:", NULL },
 #define POPT_COMMON_OPTION { NULL, 0, POPT_ARG_INCLUDE_TABLE, popt_common_option, 0, "Common samba commandline config:", NULL },
 
-struct user_auth_info {
-       char *username;
-       char *domain;
-       char *password;
-       bool got_pass;
-       bool use_kerberos;
-       int signing_state;
-       bool smb_encrypt;
-       bool use_machine_account;
-       bool fallback_after_kerberos;
-       bool use_ccache;
-};
-
 void popt_common_set_auth_info(struct user_auth_info *auth_info);
 
 #endif /* _POPT_COMMON_H */
index 2bccaa6406bdd24da4d2a52400271ac00454c242..4efa3b60281d4d575411070ef15f96ea54fa32d7 100644 (file)
@@ -597,39 +597,6 @@ bool map_open_params_to_ntcreate(const char *smb_base_fname,
                                 uint32_t *pprivate_flags);
 void init_modules(void);
 
-/* The following definitions come from lib/util_cmdline.c  */
-
-struct user_auth_info *user_auth_info_init(TALLOC_CTX *mem_ctx);
-const char *get_cmdline_auth_info_username(const struct user_auth_info *auth_info);
-void set_cmdline_auth_info_username(struct user_auth_info *auth_info,
-                                   const char *username);
-const char *get_cmdline_auth_info_domain(const struct user_auth_info *auth_info);
-void set_cmdline_auth_info_domain(struct user_auth_info *auth_info,
-                                 const char *domain);
-void set_cmdline_auth_info_password(struct user_auth_info *auth_info,
-                                   const char *password);
-const char *get_cmdline_auth_info_password(const struct user_auth_info *auth_info);
-bool set_cmdline_auth_info_signing_state(struct user_auth_info *auth_info,
-                                        const char *arg);
-int get_cmdline_auth_info_signing_state(const struct user_auth_info *auth_info);
-void set_cmdline_auth_info_use_ccache(struct user_auth_info *auth_info,
-                                     bool b);
-bool get_cmdline_auth_info_use_ccache(const struct user_auth_info *auth_info);
-void set_cmdline_auth_info_use_kerberos(struct user_auth_info *auth_info,
-                                       bool b);
-bool get_cmdline_auth_info_use_kerberos(const struct user_auth_info *auth_info);
-void set_cmdline_auth_info_fallback_after_kerberos(struct user_auth_info *auth_info,
-                                       bool b);
-bool get_cmdline_auth_info_fallback_after_kerberos(const struct user_auth_info *auth_info);
-void set_cmdline_auth_info_use_krb5_ticket(struct user_auth_info *auth_info);
-void set_cmdline_auth_info_smb_encrypt(struct user_auth_info *auth_info);
-void set_cmdline_auth_info_use_machine_account(struct user_auth_info *auth_info);
-bool get_cmdline_auth_info_got_pass(const struct user_auth_info *auth_info);
-bool get_cmdline_auth_info_smb_encrypt(const struct user_auth_info *auth_info);
-bool get_cmdline_auth_info_use_machine_account(const struct user_auth_info *auth_info);
-bool set_cmdline_auth_info_machine_account_creds(struct user_auth_info *auth_info);
-void set_cmdline_auth_info_getpass(struct user_auth_info *auth_info);
-
 /* The following definitions come from lib/util_builtin.c  */
 
 bool lookup_builtin_rid(TALLOC_CTX *mem_ctx, uint32 rid, const char **name);
index e1e7a41a4f4d1e293462d07746ebf1f241ed44a5..4dfa6b50a255b5e3a4f1d9d615ceb8fbc5283bf9 100644 (file)
@@ -18,7 +18,7 @@
  */
 
 #include "includes.h"
-#include "popt_common.h"
+#include "auth_info.h"
 
 #include "lib/netapi/netapi.h"
 #include "lib/netapi/netapi_private.h"
index 9fbdf77f1914a43ea79ca708945d760bff83345a..1d2c7256eabde73e952e0b94f149955b1806017b 100644 (file)
@@ -22,7 +22,7 @@
 */
 
 #include "includes.h"
-#include "popt_common.h"
+#include "auth_info.h"
 #include "secrets.h"
 
 /**************************************************************************n
index 76e32565e4b2bb2a347f4eedd7894495201d8c1d..146fc3d3b47d0726dd97868d78445663009f5e63 100644 (file)
@@ -22,7 +22,7 @@
 
 #include "includes.h"
 #include "libsmb/libsmb.h"
-#include "popt_common.h"
+#include "auth_info.h"
 #include "../libcli/auth/libcli_auth.h"
 #include "../libcli/auth/spnego.h"
 #include "smb_krb5.h"
index 8d3d12d86a923be6144b1c50d24e6aa0edb8f3b5..ef93dd064bd32322767f82180c57c1546c832e4b 100644 (file)
@@ -24,7 +24,7 @@
 
 #include "includes.h"
 #include "libsmb/libsmb.h"
-#include "popt_common.h"
+#include "auth_info.h"
 #include "libsmbclient.h"
 #include "libsmb_internal.h"
 #include "rpc_client/cli_pipe.h"
index 8dac82358b2e03dfcd740d5efd3fb5841c1eb83a..9e03ec4798e060ced1fdbf5e47e56d32295bb490 100644 (file)
@@ -27,6 +27,7 @@
 #define _LIBSMB_PROTO_H_
 
 #include "ads.h"
+#include "auth_info.h"
 
 struct smb_trans_enc_state;
 
index 417e096e57faa3baedaa3805670f152cdea0b4cc..5df95197bf56bec02b61bd3f7c1067ec72aa5e0f 100755 (executable)
@@ -643,7 +643,7 @@ bld.SAMBA3_LIBRARY('netapi',
                     source=LIBNETAPI_SRC,
                     public_deps='''
                     talloc
-                    popt
+                    util_cmdline
                     msrpc3
                     ads
                     NDR_LIBNETAPI
@@ -800,7 +800,7 @@ bld.SAMBA3_LIBRARY('popt_samba3',
 
 bld.SAMBA3_LIBRARY('util_cmdline',
                    source='lib/util_cmdline.c',
-                   deps='secrets3 popt',
+                   deps='secrets3',
                    private_library=True)
 
 bld.SAMBA3_SUBSYSTEM('KRBCLIENT',
@@ -1422,7 +1422,7 @@ bld.SAMBA3_BINARY('smbget',
                  source=SMBGET_SRC,
                  deps='''
                  talloc
-                 popt
+                 popt_samba3
                  smbclient''',
                  vars=locals())