mirror of
https://github.com/samba-team/samba.git
synced 2024-12-24 21:34:56 +03:00
s3:lib split out global workgroup and netbios name functions.
Having these in their own file allows easier selective inclusion. Andrew Bartlett Signed-off-by: Stefan Metzmacher <metze@samba.org>
This commit is contained in:
parent
59422efca9
commit
539ef13bfe
@ -398,7 +398,8 @@ LIB_OBJ = $(LIBSAMBAUTIL_OBJ) $(UTIL_OBJ) $(CRYPTO_OBJ) \
|
||||
lib/wins_srv.o \
|
||||
lib/util_str.o lib/clobber.o lib/util_sid.o lib/util_uuid.o \
|
||||
lib/util_unistr.o lib/util_file.o \
|
||||
lib/util.o lib/util_sock.o lib/sock_exec.o lib/util_sec.o \
|
||||
lib/util.o lib/util_names.o \
|
||||
lib/util_sock.o lib/sock_exec.o lib/util_sec.o \
|
||||
lib/substitute.o lib/dbwrap_util.o \
|
||||
lib/ms_fnmatch.o lib/select.o lib/errmap_unix.o \
|
||||
lib/tallocmsg.o lib/dmallocmsg.o \
|
||||
|
@ -1125,15 +1125,18 @@ bool nt_time_is_set(const NTTIME *nt);
|
||||
char *get_user_home_dir(TALLOC_CTX *mem_ctx, const char *user);
|
||||
struct passwd *Get_Pwnam_alloc(TALLOC_CTX *mem_ctx, const char *user);
|
||||
|
||||
/* The following definitions come from lib/util_names.c */
|
||||
void gfree_netbios_names(void);
|
||||
bool set_global_myname(const char *myname);
|
||||
const char *global_myname(void);
|
||||
bool set_global_myworkgroup(const char *myworkgroup);
|
||||
const char *lp_workgroup(void);
|
||||
|
||||
/* The following definitions come from lib/util.c */
|
||||
|
||||
enum protocol_types get_Protocol(void);
|
||||
void set_Protocol(enum protocol_types p);
|
||||
bool all_zero(const uint8_t *ptr, size_t size);
|
||||
bool set_global_myname(const char *myname);
|
||||
const char *global_myname(void);
|
||||
bool set_global_myworkgroup(const char *myworkgroup);
|
||||
const char *lp_workgroup(void);
|
||||
bool set_global_scope(const char *scope);
|
||||
const char *global_scope(void);
|
||||
void gfree_names(void);
|
||||
|
@ -73,50 +73,10 @@ static enum remote_arch_types ra_type = RA_UNKNOWN;
|
||||
Definitions for all names.
|
||||
***********************************************************************/
|
||||
|
||||
static char *smb_myname;
|
||||
static char *smb_myworkgroup;
|
||||
static char *smb_scope;
|
||||
static int smb_num_netbios_names;
|
||||
static char **smb_my_netbios_names;
|
||||
|
||||
/***********************************************************************
|
||||
Allocate and set myname. Ensure upper case.
|
||||
***********************************************************************/
|
||||
|
||||
bool set_global_myname(const char *myname)
|
||||
{
|
||||
SAFE_FREE(smb_myname);
|
||||
smb_myname = SMB_STRDUP(myname);
|
||||
if (!smb_myname)
|
||||
return False;
|
||||
strupper_m(smb_myname);
|
||||
return True;
|
||||
}
|
||||
|
||||
const char *global_myname(void)
|
||||
{
|
||||
return smb_myname;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
Allocate and set myworkgroup. Ensure upper case.
|
||||
***********************************************************************/
|
||||
|
||||
bool set_global_myworkgroup(const char *myworkgroup)
|
||||
{
|
||||
SAFE_FREE(smb_myworkgroup);
|
||||
smb_myworkgroup = SMB_STRDUP(myworkgroup);
|
||||
if (!smb_myworkgroup)
|
||||
return False;
|
||||
strupper_m(smb_myworkgroup);
|
||||
return True;
|
||||
}
|
||||
|
||||
const char *lp_workgroup(void)
|
||||
{
|
||||
return smb_myworkgroup;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
Allocate and set scope. Ensure upper case.
|
||||
***********************************************************************/
|
||||
@ -184,8 +144,7 @@ static bool set_my_netbios_names(const char *name, int i)
|
||||
|
||||
void gfree_names(void)
|
||||
{
|
||||
SAFE_FREE( smb_myname );
|
||||
SAFE_FREE( smb_myworkgroup );
|
||||
gfree_netbios_names();
|
||||
SAFE_FREE( smb_scope );
|
||||
free_netbios_names_array();
|
||||
free_local_machine_name();
|
||||
|
72
source3/lib/util_names.c
Normal file
72
source3/lib/util_names.c
Normal file
@ -0,0 +1,72 @@
|
||||
/*
|
||||
Unix SMB/CIFS implementation.
|
||||
Samba utility functions
|
||||
Copyright (C) Andrew Tridgell 1992-1998
|
||||
Copyright (C) Jeremy Allison 2001-2007
|
||||
Copyright (C) Simo Sorce 2001
|
||||
Copyright (C) Jim McDonough <jmcd@us.ibm.com> 2003
|
||||
Copyright (C) James Peach 2006
|
||||
Copyright (C) Andrew Bartlett 2010
|
||||
|
||||
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/>.
|
||||
*/
|
||||
|
||||
#include "includes.h"
|
||||
|
||||
static char *smb_myname;
|
||||
static char *smb_myworkgroup;
|
||||
|
||||
/***********************************************************************
|
||||
Allocate and set myname. Ensure upper case.
|
||||
***********************************************************************/
|
||||
|
||||
bool set_global_myname(const char *myname)
|
||||
{
|
||||
SAFE_FREE(smb_myname);
|
||||
smb_myname = SMB_STRDUP(myname);
|
||||
if (!smb_myname)
|
||||
return False;
|
||||
strupper_m(smb_myname);
|
||||
return True;
|
||||
}
|
||||
|
||||
const char *global_myname(void)
|
||||
{
|
||||
return smb_myname;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
Allocate and set myworkgroup. Ensure upper case.
|
||||
***********************************************************************/
|
||||
|
||||
bool set_global_myworkgroup(const char *myworkgroup)
|
||||
{
|
||||
SAFE_FREE(smb_myworkgroup);
|
||||
smb_myworkgroup = SMB_STRDUP(myworkgroup);
|
||||
if (!smb_myworkgroup)
|
||||
return False;
|
||||
strupper_m(smb_myworkgroup);
|
||||
return True;
|
||||
}
|
||||
|
||||
const char *lp_workgroup(void)
|
||||
{
|
||||
return smb_myworkgroup;
|
||||
}
|
||||
|
||||
void gfree_netbios_names(void)
|
||||
{
|
||||
SAFE_FREE( smb_myname );
|
||||
SAFE_FREE( smb_myworkgroup );
|
||||
}
|
Loading…
Reference in New Issue
Block a user