Skip to content

Commit

Permalink
source3: move lib/substitute.c functions out of proto.h
Browse files Browse the repository at this point in the history
BUG: https://bugzilla.samba.org/show_bug.cgi?id=14897

Signed-off-by: Ralph Boehme <[email protected]>
Reviewed-by: Andreas Schneider <[email protected]>
  • Loading branch information
slowfranklin committed Nov 11, 2021
1 parent c28be40 commit 25043eb
Show file tree
Hide file tree
Showing 39 changed files with 100 additions and 33 deletions.
1 change: 1 addition & 0 deletions source3/auth/auth_generic.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,7 @@
#include "auth/credentials/credentials.h"
#include "lib/param/loadparm.h"
#include "librpc/gen_ndr/dcerpc.h"
#include "source3/lib/substitute.h"

static NTSTATUS auth3_generate_session_info_pac(struct auth4_context *auth_ctx,
TALLOC_CTX *mem_ctx,
Expand Down
1 change: 1 addition & 0 deletions source3/auth/auth_ntlmssp.c
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
#include "auth.h"
#include "libcli/security/security.h"
#include "lib/util/tevent_ntstatus.h"
#include "source3/lib/substitute.h"

NTSTATUS auth3_generate_session_info(struct auth4_context *auth_context,
TALLOC_CTX *mem_ctx,
Expand Down
1 change: 1 addition & 0 deletions source3/auth/auth_util.c
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,7 @@
#include "rpc_client/util_netlogon.h"
#include "source4/auth/auth.h"
#include "auth/auth_util.h"
#include "source3/lib/substitute.h"

#undef DBGC_CLASS
#define DBGC_CLASS DBGC_AUTH
Expand Down
33 changes: 0 additions & 33 deletions source3/include/proto.h
Original file line number Diff line number Diff line change
Expand Up @@ -139,39 +139,6 @@ int smbrun_no_sanitize(const char *cmd, int *outfd, char * const *env);
int smbrun(const char *cmd, int *outfd, char * const *env);
int smbrunsecret(const char *cmd, const char *secret);

/* The following definitions come from lib/substitute.c */

bool set_local_machine_name(const char *local_name, bool perm);
const char *get_local_machine_name(void);
bool set_remote_machine_name(const char *remote_name, bool perm);
const char *get_remote_machine_name(void);
void sub_set_smb_name(const char *name);
void set_current_user_info(const char *smb_name, const char *unix_name,
const char *domain);
void sub_set_socket_ids(const char *peeraddr, const char *peername,
const char *sockaddr);
const char *get_current_username(void);
void standard_sub_basic(const char *smb_name, const char *domain_name,
char *str, size_t len);
char *talloc_sub_basic(TALLOC_CTX *mem_ctx, const char *smb_name,
const char *domain_name, const char *str);
char *talloc_sub_specified(TALLOC_CTX *mem_ctx,
const char *input_string,
const char *username,
const char *grpname,
const char *domain,
uid_t uid,
gid_t gid);
char *talloc_sub_advanced(TALLOC_CTX *mem_ctx,
const char *servicename, const char *user,
const char *connectpath, gid_t gid,
const char *str);
char *talloc_sub_full(TALLOC_CTX *mem_ctx,
const char *servicename, const char *user,
const char *connectpath, gid_t gid,
const char *smb_name, const char *domain_name,
const char *str);

/* The following definitions come from lib/sysquotas.c */

int sys_get_quota(const char *path, enum SMB_QUOTA_TYPE qtype, unid_t id, SMB_DISK_QUOTA *dp);
Expand Down
1 change: 1 addition & 0 deletions source3/lib/substitute.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@


#include "includes.h"
#include "substitute.h"
#include "system/passwd.h"
#include "secrets.h"
#include "auth.h"
Expand Down
63 changes: 63 additions & 0 deletions source3/lib/substitute.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
/*
Unix SMB/CIFS implementation.
string substitution functions
Copyright (C) Andrew Tridgell 1992-2000
Copyright (C) Gerald Carter 2006
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 SUBSTITUTE_H
#define SUBSTITUTE_H

bool set_local_machine_name(const char *local_name, bool perm);
const char *get_local_machine_name(void);
bool set_remote_machine_name(const char *remote_name, bool perm);
const char *get_remote_machine_name(void);
void sub_set_socket_ids(const char *peeraddr, const char *peername,
const char *sockaddr);
void set_current_user_info(const char *smb_name,
const char *unix_name,
const char *domain);
const char *get_current_username(void);
void standard_sub_basic(const char *smb_name,
const char *domain_name,
char *str,
size_t len);
char *talloc_sub_basic(TALLOC_CTX *mem_ctx,
const char *smb_name,
const char *domain_name,
const char *str);
char *talloc_sub_specified(TALLOC_CTX *mem_ctx,
const char *input_string,
const char *username,
const char *grpname,
const char *domain,
uid_t uid,
gid_t gid);
char *talloc_sub_advanced(TALLOC_CTX *ctx,
const char *servicename,
const char *user,
const char *connectpath,
gid_t gid,
const char *str);
char *talloc_sub_full(TALLOC_CTX *ctx,
const char *servicename,
const char *user,
const char *connectpath,
gid_t gid,
const char *smb_name,
const char *domain_name,
const char *str);
#endif
1 change: 1 addition & 0 deletions source3/modules/vfs_expand_msdfs.c
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
#include "auth.h"
#include "../lib/tsocket/tsocket.h"
#include "msdfs.h"
#include "source3/lib/substitute.h"

#undef DBGC_CLASS
#define DBGC_CLASS DBGC_VFS
Expand Down
1 change: 1 addition & 0 deletions source3/modules/vfs_full_audit.c
Original file line number Diff line number Diff line change
Expand Up @@ -73,6 +73,7 @@
#include "passdb/machine_sid.h"
#include "lib/util/tevent_ntstatus.h"
#include "lib/util/string_wrappers.h"
#include "source3/lib/substitute.h"

static int vfs_full_audit_debug_level = DBGC_VFS;

Expand Down
1 change: 1 addition & 0 deletions source3/modules/vfs_recycle.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
#include "system/filesys.h"
#include "../librpc/gen_ndr/ndr_netlogon.h"
#include "auth.h"
#include "source3/lib/substitute.h"

#define ALLOC_CHECK(ptr, label) do { if ((ptr) == NULL) { DEBUG(0, ("recycle.bin: out of memory!\n")); errno = ENOMEM; goto label; } } while(0)

Expand Down
1 change: 1 addition & 0 deletions source3/modules/vfs_unityed_media.c
Original file line number Diff line number Diff line change
Expand Up @@ -62,6 +62,7 @@
#include "../lib/tsocket/tsocket.h"
#include "lib/util/smb_strtox.h"
#include <libgen.h>
#include "source3/lib/substitute.h"

#define UM_PARAM_TYPE_NAME "unityed_media"

Expand Down
1 change: 1 addition & 0 deletions source3/modules/vfs_virusfilter_utils.c
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@ struct iovec;
#include "lib/util/iov_buf.h"
#include <tevent.h>
#include "lib/tsocket/tsocket.h"
#include "source3/lib/substitute.h"

int virusfilter_debug_class = DBGC_VFS;

Expand Down
1 change: 1 addition & 0 deletions source3/nmbd/nmbd.c
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
#include "util_cluster.h"
#include "lib/gencache.h"
#include "lib/global_contexts.h"
#include "source3/lib/substitute.h"

int ClientNMB = -1;
int ClientDGRAM = -1;
Expand Down
1 change: 1 addition & 0 deletions source3/nmbd/nmbd_synclists.c
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
#include "libsmb/clirap.h"
#include "../libcli/smb/smbXcli_base.h"
#include "lib/util/string_wrappers.h"
#include "source3/lib/substitute.h"

struct sync_record {
struct sync_record *next, *prev;
Expand Down
1 change: 1 addition & 0 deletions source3/param/loadparm.c
Original file line number Diff line number Diff line change
Expand Up @@ -76,6 +76,7 @@
#include "lib/crypto/gnutls_helpers.h"
#include "lib/util/string_wrappers.h"
#include "auth/credentials/credentials.h"
#include "source3/lib/substitute.h"

#ifdef HAVE_SYS_SYSCTL_H
#include <sys/sysctl.h>
Expand Down
1 change: 1 addition & 0 deletions source3/passdb/passdb.c
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
#include "auth/credentials/credentials.h"
#include "lib/param/param.h"
#include "lib/util/string_wrappers.h"
#include "source3/lib/substitute.h"

#undef DBGC_CLASS
#define DBGC_CLASS DBGC_PASSDB
Expand Down
1 change: 1 addition & 0 deletions source3/passdb/pdb_ldap.c
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@
#include "lib/util_sid_passdb.h"
#include "lib/util/smb_strtox.h"
#include "lib/util/string_wrappers.h"
#include "source3/lib/substitute.h"

#undef DBGC_CLASS
#define DBGC_CLASS DBGC_PASSDB
Expand Down
1 change: 1 addition & 0 deletions source3/printing/print_generic.c
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
#include "includes.h"
#include "printing.h"
#include "smbd/proto.h"
#include "source3/lib/substitute.h"

extern userdom_struct current_user_info;

Expand Down
1 change: 1 addition & 0 deletions source3/printing/printing.c
Original file line number Diff line number Diff line change
Expand Up @@ -40,6 +40,7 @@
#include "lib/util/string_wrappers.h"
#include "lib/global_contexts.h"
#include "source3/printing/rap_jobid.h"
#include "source3/lib/substitute.h"

extern userdom_struct current_user_info;

Expand Down
1 change: 1 addition & 0 deletions source3/rpc_server/lsa/srv_lsa_nt.c
Original file line number Diff line number Diff line change
Expand Up @@ -53,6 +53,7 @@
#include "librpc/rpc/dcesrv_core.h"
#include "librpc/rpc/dcerpc_helper.h"
#include "lib/param/loadparm.h"
#include "source3/lib/substitute.h"

#include "lib/crypto/gnutls_helpers.h"
#include <gnutls/gnutls.h>
Expand Down
1 change: 1 addition & 0 deletions source3/rpc_server/netlogon/srv_netlog_nt.c
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@
#include "lib/param/param.h"
#include "libsmb/dsgetdcname.h"
#include "lib/util/util_str_escape.h"
#include "source3/lib/substitute.h"

extern userdom_struct current_user_info;

Expand Down
1 change: 1 addition & 0 deletions source3/rpc_server/srvsvc/srv_srvsvc_nt.c
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@
#include "messages.h"
#include "serverid.h"
#include "lib/global_contexts.h"
#include "source3/lib/substitute.h"

extern const struct generic_mapping file_generic_mapping;

Expand Down
1 change: 1 addition & 0 deletions source3/smbd/ipc.c
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,7 @@
#include "smbd/globals.h"
#include "smbprofile.h"
#include "rpc_server/srv_pipe_hnd.h"
#include "source3/lib/substitute.h"

#define NERR_notsupported 50

Expand Down
1 change: 1 addition & 0 deletions source3/smbd/lanman.c
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@
#include "rpc_server/rpc_ncacn_np.h"
#include "lib/util/string_wrappers.h"
#include "source3/printing/rap_jobid.h"
#include "source3/lib/substitute.h"

#ifdef CHECK_TYPES
#undef CHECK_TYPES
Expand Down
1 change: 1 addition & 0 deletions source3/smbd/message.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,7 @@
#include "smbd/smbd.h"
#include "smbd/globals.h"
#include "smbprofile.h"
#include "source3/lib/substitute.h"

extern userdom_struct current_user_info;

Expand Down
1 change: 1 addition & 0 deletions source3/smbd/msdfs.c
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
#include "librpc/gen_ndr/ndr_dfsblobs.h"
#include "lib/tsocket/tsocket.h"
#include "lib/global_contexts.h"
#include "source3/lib/substitute.h"

/**********************************************************************
Parse a DFS pathname of the form \hostname\service\reqpath
Expand Down
1 change: 1 addition & 0 deletions source3/smbd/process.c
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,7 @@
#include "libcli/smb/smbXcli_base.h"
#include "lib/util/time_basic.h"
#include "smb1_utils.h"
#include "source3/lib/substitute.h"

/* Internal message queue for deferred opens. */
struct pending_message_list {
Expand Down
1 change: 1 addition & 0 deletions source3/smbd/reply.c
Original file line number Diff line number Diff line change
Expand Up @@ -50,6 +50,7 @@
#include "libcli/smb/smb2_posix.h"
#include "lib/util/string_wrappers.h"
#include "source3/printing/rap_jobid.h"
#include "source3/lib/substitute.h"

/****************************************************************************
Ensure we check the path in *exactly* the same way as W2K for a findfirst/findnext
Expand Down
1 change: 1 addition & 0 deletions source3/smbd/server.c
Original file line number Diff line number Diff line change
Expand Up @@ -60,6 +60,7 @@
#include "rpc_server/fssd.h"
#include "rpc_server/mdssd.h"
#include "lib/global_contexts.h"
#include "source3/lib/substitute.h"

#ifdef CLUSTER_SUPPORT
#include "ctdb_protocol.h"
Expand Down
1 change: 1 addition & 0 deletions source3/smbd/service.c
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
#include "lib/afs/afs_funcs.h"
#include "lib/util_path.h"
#include "lib/util/string_wrappers.h"
#include "source3/lib/substitute.h"

bool canonicalize_connect_path(connection_struct *conn)
{
Expand Down
1 change: 1 addition & 0 deletions source3/smbd/sesssetup.c
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
#include "auth/gensec/gensec.h"
#include "../libcli/smb/smb_signing.h"
#include "lib/util/string_wrappers.h"
#include "source3/lib/substitute.h"

/****************************************************************************
Add the standard 'Samba' signature to the end of the session setup.
Expand Down
1 change: 1 addition & 0 deletions source3/smbd/share_access.c
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@
#include "../libcli/security/security.h"
#include "passdb/lookup_sid.h"
#include "auth.h"
#include "source3/lib/substitute.h"

/*
* We dropped NIS support in 2021, but need to keep configs working.
Expand Down
1 change: 1 addition & 0 deletions source3/smbd/smb2_server.c
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
#include "lib/util/iov_buf.h"
#include "auth.h"
#include "libcli/smb/smbXcli_base.h"
#include "source3/lib/substitute.h"

#if defined(LINUX)
/* SIOCOUTQ TIOCOUTQ are the same */
Expand Down
1 change: 1 addition & 0 deletions source3/smbd/smb2_sesssetup.c
Original file line number Diff line number Diff line change
Expand Up @@ -28,6 +28,7 @@
#include "../lib/tsocket/tsocket.h"
#include "../libcli/security/security.h"
#include "../lib/util/tevent_ntstatus.h"
#include "source3/lib/substitute.h"

#include "lib/crypto/gnutls_helpers.h"
#include <gnutls/gnutls.h>
Expand Down
1 change: 1 addition & 0 deletions source3/smbd/trans2.c
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@
#include "smb1_utils.h"
#include "libcli/smb/smb2_posix.h"
#include "lib/util/string_wrappers.h"
#include "source3/lib/substitute.h"

#define DIR_ENTRY_SAFETY_MARGIN 4096

Expand Down
1 change: 1 addition & 0 deletions source3/smbd/uid.c
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
#include "passdb/lookup_sid.h"
#include "auth.h"
#include "../auth/auth_util.h"
#include "source3/lib/substitute.h"

/* what user is current? */
extern struct current_user current_user;
Expand Down
1 change: 1 addition & 0 deletions source3/torture/torture.c
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@
#include "lib/param/param.h"
#include "auth/gensec/gensec.h"
#include "lib/util/string_wrappers.h"
#include "source3/lib/substitute.h"

#include <gnutls/gnutls.h>
#include <gnutls/crypto.h>
Expand Down
1 change: 1 addition & 0 deletions source3/utils/net_sam.c
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@
#include "idmap.h"
#include "lib/util/smb_strtox.h"
#include "lib/util/string_wrappers.h"
#include "source3/lib/substitute.h"

/*
* Set a user's data
Expand Down
1 change: 1 addition & 0 deletions source3/winbindd/wb_getpwsid.c
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
#include "librpc/gen_ndr/ndr_winbind_c.h"
#include "../libcli/security/security.h"
#include "lib/util/string_wrappers.h"
#include "source3/lib/substitute.h"

struct wb_getpwsid_state {
struct tevent_context *ev;
Expand Down
1 change: 1 addition & 0 deletions source3/winbindd/winbindd.c
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,7 @@
#include "lib/gencache.h"
#include "rpc_server/rpc_config.h"
#include "lib/global_contexts.h"
#include "source3/lib/substitute.h"

#undef DBGC_CLASS
#define DBGC_CLASS DBGC_WINBIND
Expand Down

0 comments on commit 25043eb

Please sign in to comment.