mirror of
https://github.com/samba-team/samba.git
synced 2025-02-26 21:57:41 +03:00
r5165: BUG 2295: always use get_local_machine_name() rather than digging in the gloval variable 'local_machine'
(This used to be commit 6a6e4af46a5c0a693a3dd9d558a4d1c1e5d72d95)
This commit is contained in:
parent
92bbd3151d
commit
c1b9243c28
@ -29,8 +29,6 @@
|
|||||||
|
|
||||||
extern int max_send;
|
extern int max_send;
|
||||||
|
|
||||||
extern fstring local_machine;
|
|
||||||
|
|
||||||
#define NERR_notsupported 50
|
#define NERR_notsupported 50
|
||||||
|
|
||||||
extern int smb_read_error;
|
extern int smb_read_error;
|
||||||
@ -382,6 +380,7 @@ int reply_trans(connection_struct *conn, char *inbuf,char *outbuf, int size, int
|
|||||||
unsigned int dscnt = SVAL(inbuf,smb_vwv11);
|
unsigned int dscnt = SVAL(inbuf,smb_vwv11);
|
||||||
unsigned int dsoff = SVAL(inbuf,smb_vwv12);
|
unsigned int dsoff = SVAL(inbuf,smb_vwv12);
|
||||||
unsigned int suwcnt = CVAL(inbuf,smb_vwv13);
|
unsigned int suwcnt = CVAL(inbuf,smb_vwv13);
|
||||||
|
fstring local_machine_name;
|
||||||
START_PROFILE(SMBtrans);
|
START_PROFILE(SMBtrans);
|
||||||
|
|
||||||
memset(name, '\0',sizeof(name));
|
memset(name, '\0',sizeof(name));
|
||||||
@ -543,9 +542,11 @@ int reply_trans(connection_struct *conn, char *inbuf,char *outbuf, int size, int
|
|||||||
* WinCE wierdness....
|
* WinCE wierdness....
|
||||||
*/
|
*/
|
||||||
|
|
||||||
if (name[0] == '\\' && (StrnCaseCmp(&name[1],local_machine, strlen(local_machine)) == 0) &&
|
fstrcpy( local_machine_name, get_local_machine_name() );
|
||||||
(name[strlen(local_machine)+1] == '\\'))
|
|
||||||
name_offset = strlen(local_machine)+1;
|
if (name[0] == '\\' && (StrnCaseCmp(&name[1],local_machine_name, strlen(local_machine_name)) == 0) &&
|
||||||
|
(name[strlen(local_machine_name)+1] == '\\'))
|
||||||
|
name_offset = strlen(local_machine_name)+1;
|
||||||
|
|
||||||
if (strnequal(&name[name_offset], "\\PIPE", strlen("\\PIPE"))) {
|
if (strnequal(&name[name_offset], "\\PIPE", strlen("\\PIPE"))) {
|
||||||
name_offset += strlen("\\PIPE");
|
name_offset += strlen("\\PIPE");
|
||||||
|
@ -32,8 +32,6 @@
|
|||||||
#endif
|
#endif
|
||||||
#define CHECK_TYPES 0
|
#define CHECK_TYPES 0
|
||||||
|
|
||||||
extern fstring local_machine;
|
|
||||||
|
|
||||||
#define NERR_Success 0
|
#define NERR_Success 0
|
||||||
#define NERR_badpass 86
|
#define NERR_badpass 86
|
||||||
#define NERR_notsupported 50
|
#define NERR_notsupported 50
|
||||||
@ -2372,7 +2370,7 @@ static BOOL api_RNetServerGetInfo(connection_struct *conn,uint16 vuid, char *par
|
|||||||
p = *rdata;
|
p = *rdata;
|
||||||
p2 = p + struct_len;
|
p2 = p + struct_len;
|
||||||
if (uLevel != 20) {
|
if (uLevel != 20) {
|
||||||
srvstr_push(NULL, p,local_machine,16,
|
srvstr_push(NULL, p,get_local_machine_name(),16,
|
||||||
STR_ASCII|STR_UPPER|STR_TERMINATE);
|
STR_ASCII|STR_UPPER|STR_TERMINATE);
|
||||||
}
|
}
|
||||||
p += 16;
|
p += 16;
|
||||||
@ -2387,7 +2385,7 @@ static BOOL api_RNetServerGetInfo(connection_struct *conn,uint16 vuid, char *par
|
|||||||
|
|
||||||
if ((count=get_server_info(SV_TYPE_ALL,&servers,lp_workgroup()))>0) {
|
if ((count=get_server_info(SV_TYPE_ALL,&servers,lp_workgroup()))>0) {
|
||||||
for (i=0;i<count;i++) {
|
for (i=0;i<count;i++) {
|
||||||
if (strequal(servers[i].name,local_machine)) {
|
if (strequal(servers[i].name,get_local_machine_name())) {
|
||||||
servertype = servers[i].type;
|
servertype = servers[i].type;
|
||||||
push_ascii(comment,servers[i].comment,sizeof(pstring),STR_TERMINATE);
|
push_ascii(comment,servers[i].comment,sizeof(pstring),STR_TERMINATE);
|
||||||
}
|
}
|
||||||
@ -2460,7 +2458,7 @@ static BOOL api_NetWkstaGetInfo(connection_struct *conn,uint16 vuid, char *param
|
|||||||
|
|
||||||
|
|
||||||
SIVAL(p,0,PTR_DIFF(p2,*rdata)); /* host name */
|
SIVAL(p,0,PTR_DIFF(p2,*rdata)); /* host name */
|
||||||
pstrcpy(p2,local_machine);
|
pstrcpy(p2,get_local_machine_name());
|
||||||
strupper_m(p2);
|
strupper_m(p2);
|
||||||
p2 = skip_string(p2,1);
|
p2 = skip_string(p2,1);
|
||||||
p += 4;
|
p += 4;
|
||||||
@ -2881,7 +2879,7 @@ static BOOL api_WWkstaUserLogon(connection_struct *conn,uint16 vuid, char *param
|
|||||||
{
|
{
|
||||||
fstring mypath;
|
fstring mypath;
|
||||||
fstrcpy(mypath,"\\\\");
|
fstrcpy(mypath,"\\\\");
|
||||||
fstrcat(mypath,local_machine);
|
fstrcat(mypath,get_local_machine_name());
|
||||||
strupper_m(mypath);
|
strupper_m(mypath);
|
||||||
PACKS(&desc,"z",mypath); /* computer */
|
PACKS(&desc,"z",mypath); /* computer */
|
||||||
}
|
}
|
||||||
|
@ -22,7 +22,6 @@
|
|||||||
|
|
||||||
#include "includes.h"
|
#include "includes.h"
|
||||||
|
|
||||||
extern fstring local_machine;
|
|
||||||
extern uint32 global_client_caps;
|
extern uint32 global_client_caps;
|
||||||
|
|
||||||
/**********************************************************************
|
/**********************************************************************
|
||||||
@ -462,7 +461,7 @@ BOOL get_referred_path(char *pathname, struct junction_map *jucn,
|
|||||||
parse_dfs_path(pathname, &dp);
|
parse_dfs_path(pathname, &dp);
|
||||||
|
|
||||||
/* Verify hostname in path */
|
/* Verify hostname in path */
|
||||||
if (local_machine && (!strequal(local_machine, dp.hostname))) {
|
if ( !strequal(get_local_machine_name(), dp.hostname) ) {
|
||||||
/* Hostname mismatch, check if one of our IP addresses */
|
/* Hostname mismatch, check if one of our IP addresses */
|
||||||
if (!ismyip(*interpret_addr2(dp.hostname))) {
|
if (!ismyip(*interpret_addr2(dp.hostname))) {
|
||||||
DEBUG(3, ("get_referred_path: Invalid hostname %s in path %s\n",
|
DEBUG(3, ("get_referred_path: Invalid hostname %s in path %s\n",
|
||||||
@ -810,7 +809,7 @@ BOOL create_junction(char* pathname, struct junction_map* jucn)
|
|||||||
parse_dfs_path(pathname,&dp);
|
parse_dfs_path(pathname,&dp);
|
||||||
|
|
||||||
/* check if path is dfs : validate first token */
|
/* check if path is dfs : validate first token */
|
||||||
if (local_machine && (!strequal(local_machine,dp.hostname))) {
|
if ( !strequal(get_local_machine_name(),dp.hostname) ) {
|
||||||
|
|
||||||
/* Hostname mismatch, check if one of our IP addresses */
|
/* Hostname mismatch, check if one of our IP addresses */
|
||||||
if (!ismyip(*interpret_addr2(dp.hostname))) {
|
if (!ismyip(*interpret_addr2(dp.hostname))) {
|
||||||
@ -978,7 +977,7 @@ static BOOL form_junctions(int snum, struct junction_map* jucn, int* jn_count)
|
|||||||
}
|
}
|
||||||
|
|
||||||
slprintf(ref->alternate_path, sizeof(pstring)-1,
|
slprintf(ref->alternate_path, sizeof(pstring)-1,
|
||||||
"\\\\%s\\%s", local_machine, service_name);
|
"\\\\%s\\%s", get_local_machine_name(), service_name);
|
||||||
cnt++;
|
cnt++;
|
||||||
|
|
||||||
/* Now enumerate all dfs links */
|
/* Now enumerate all dfs links */
|
||||||
|
@ -25,7 +25,6 @@
|
|||||||
|
|
||||||
extern enum protocol_types Protocol;
|
extern enum protocol_types Protocol;
|
||||||
extern int smb_read_error;
|
extern int smb_read_error;
|
||||||
extern fstring local_machine;
|
|
||||||
extern int global_oplock_break;
|
extern int global_oplock_break;
|
||||||
extern uint32 global_client_caps;
|
extern uint32 global_client_caps;
|
||||||
extern struct current_user current_user;
|
extern struct current_user current_user;
|
||||||
@ -1825,7 +1824,7 @@ cBytesSector=%u, cUnitTotal=%u, cUnitAvail=%d\n", (unsigned int)st.st_dev, (unsi
|
|||||||
* Add volume serial number - hash of a combination of
|
* Add volume serial number - hash of a combination of
|
||||||
* the called hostname and the service name.
|
* the called hostname and the service name.
|
||||||
*/
|
*/
|
||||||
SIVAL(pdata,0,str_checksum(lp_servicename(snum)) ^ (str_checksum(local_machine)<<16) );
|
SIVAL(pdata,0,str_checksum(lp_servicename(snum)) ^ (str_checksum(get_local_machine_name())<<16) );
|
||||||
len = srvstr_push(outbuf, pdata+l2_vol_szVolLabel, vname, -1, STR_NOALIGN);
|
len = srvstr_push(outbuf, pdata+l2_vol_szVolLabel, vname, -1, STR_NOALIGN);
|
||||||
SCVAL(pdata,l2_vol_cch,len);
|
SCVAL(pdata,l2_vol_cch,len);
|
||||||
data_len = l2_vol_szVolLabel + len;
|
data_len = l2_vol_szVolLabel + len;
|
||||||
@ -1868,7 +1867,7 @@ cBytesSector=%u, cUnitTotal=%u, cUnitAvail=%d\n", (unsigned int)st.st_dev, (unsi
|
|||||||
* the called hostname and the service name.
|
* the called hostname and the service name.
|
||||||
*/
|
*/
|
||||||
SIVAL(pdata,8,str_checksum(lp_servicename(snum)) ^
|
SIVAL(pdata,8,str_checksum(lp_servicename(snum)) ^
|
||||||
(str_checksum(local_machine)<<16));
|
(str_checksum(get_local_machine_name())<<16));
|
||||||
|
|
||||||
len = srvstr_push(outbuf, pdata+18, vname, -1, STR_UNICODE);
|
len = srvstr_push(outbuf, pdata+18, vname, -1, STR_UNICODE);
|
||||||
SIVAL(pdata,12,len);
|
SIVAL(pdata,12,len);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user