mirror of
https://github.com/samba-team/samba.git
synced 2024-12-24 21:34:56 +03:00
* We must return 0x2 as the majorversion for nt4 to upload drivers
* fix bug found by clobber_region()
(This used to be commit ad2765bb5e
)
This commit is contained in:
parent
5b51fc4f06
commit
a056cd8845
@ -2307,7 +2307,17 @@ static WERROR getprinterdata_printer_server(TALLOC_CTX *ctx, fstring value, uint
|
||||
*type = 0x4;
|
||||
if((*data = (uint8 *)talloc(ctx, 4*sizeof(uint8) )) == NULL)
|
||||
return WERR_NOMEM;
|
||||
SIVAL(*data, 0, 3);
|
||||
|
||||
/* Windows NT 4.0 seems to not allow uploading of drivers
|
||||
to a server that reports 0x3 as the MajorVersion.
|
||||
need to investigate more how Win2k gets around this .
|
||||
-- jerry */
|
||||
|
||||
if ( RA_WINNT == get_remote_arch() )
|
||||
SIVAL(*data, 0, 2);
|
||||
else
|
||||
SIVAL(*data, 0, 3);
|
||||
|
||||
*needed = 0x4;
|
||||
return WERR_OK;
|
||||
}
|
||||
|
@ -3042,20 +3042,22 @@ int reply_rmdir(connection_struct *conn, char *inbuf,char *outbuf, int dum_size,
|
||||
Resolve wildcards in a filename rename.
|
||||
********************************************************************/
|
||||
|
||||
static BOOL resolve_wildcards(char *name1,char *name2)
|
||||
static BOOL resolve_wildcards(const char *name1, char *name2)
|
||||
{
|
||||
fstring root1,root2;
|
||||
fstring ext1,ext2;
|
||||
char *p,*p2;
|
||||
char *p,*p2, *pname1, *pname2;
|
||||
int available_space;
|
||||
|
||||
|
||||
name1 = strrchr_m(name1,'/');
|
||||
name2 = strrchr_m(name2,'/');
|
||||
pname1 = strrchr_m(name1,'/');
|
||||
pname2 = strrchr_m(name2,'/');
|
||||
|
||||
if (!name1 || !name2)
|
||||
if (!pname1 || !pname2)
|
||||
return(False);
|
||||
|
||||
fstrcpy(root1,name1);
|
||||
fstrcpy(root2,name2);
|
||||
fstrcpy(root1,pname1);
|
||||
fstrcpy(root2,pname2);
|
||||
p = strrchr_m(root1,'.');
|
||||
if (p) {
|
||||
*p = 0;
|
||||
@ -3097,10 +3099,13 @@ static BOOL resolve_wildcards(char *name1,char *name2)
|
||||
p++;
|
||||
}
|
||||
|
||||
pstrcpy(name2,root2);
|
||||
available_space = sizeof(pstring) - PTR_DIFF(pname2, name2);
|
||||
|
||||
StrnCpy(pname2, root2, available_space-1);
|
||||
available_space -= strlen(root2);
|
||||
if (ext2[0]) {
|
||||
pstrcat(name2,".");
|
||||
pstrcat(name2,ext2);
|
||||
strncat(pname2, ".", available_space-1);
|
||||
strncat(pname2, ext2, available_space-2);
|
||||
}
|
||||
|
||||
return(True);
|
||||
|
Loading…
Reference in New Issue
Block a user