mirror of
https://github.com/samba-team/samba.git
synced 2025-12-07 20:23:50 +03:00
s3-lib: Fix util_cmdline which doesn't use popt.
This creates its own header file for util_cmdline so it doesn't need to link against popt. This should fix linking on FreeBSD.
This commit is contained in:
committed by
Andreas Schneider
parent
8c66c8c756
commit
8080dbad78
67
source3/include/auth_info.h
Normal file
67
source3/include/auth_info.h
Normal file
@@ -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 */
|
||||
@@ -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 */
|
||||
|
||||
@@ -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);
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
*/
|
||||
|
||||
#include "includes.h"
|
||||
#include "popt_common.h"
|
||||
#include "auth_info.h"
|
||||
#include "secrets.h"
|
||||
|
||||
/**************************************************************************n
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -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"
|
||||
|
||||
@@ -27,6 +27,7 @@
|
||||
#define _LIBSMB_PROTO_H_
|
||||
|
||||
#include "ads.h"
|
||||
#include "auth_info.h"
|
||||
|
||||
struct smb_trans_enc_state;
|
||||
|
||||
|
||||
@@ -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())
|
||||
|
||||
|
||||
Reference in New Issue
Block a user