mirror of
https://github.com/samba-team/samba.git
synced 2025-03-11 16:58:40 +03:00
charset.c: Fixed signed/unsigned issues.
password.c: Fixed problem with MS-Exchange services. Jeremy (jallison@whistle.com)
This commit is contained in:
parent
937f0fbf87
commit
e723dd3dee
@ -273,12 +273,12 @@ void add_char_string(char *s)
|
||||
for (t=strtok(extra_chars," \t\r\n"); t; t=strtok(NULL," \t\r\n")) {
|
||||
char c1=0,c2=0;
|
||||
int i1=0,i2=0;
|
||||
if (isdigit(*t) || (*t)=='-') {
|
||||
if (isdigit((unsigned char)*t) || (*t)=='-') {
|
||||
sscanf(t,"%i:%i",&i1,&i2);
|
||||
add_dos_char(i1,True,i2,True);
|
||||
} else {
|
||||
sscanf(t,"%c:%c",&c1,&c2);
|
||||
add_dos_char(c1,True,c2, True);
|
||||
add_dos_char((unsigned char)c1,True,(unsigned char)c2, True);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -153,12 +153,26 @@ uint16 register_vuid(int uid,int gid, char *name,BOOL guest)
|
||||
struct passwd *pwfile; /* for getting real name from passwd file */
|
||||
int real_name_len;
|
||||
|
||||
#if 0
|
||||
/*
|
||||
* After observing MS-Exchange services writing to a Samba share
|
||||
* I belive this code is incorrect. Each service does it's own
|
||||
* sessionsetup_and_X for the same user, and as each service shuts
|
||||
* down, it does a user_logoff_and_X. As we are consolidating multiple
|
||||
* sessionsetup_and_X's onto the same vuid here, when the first service
|
||||
* shuts down, it invalidates all the open files for the other services.
|
||||
* Hence I am removing this code and forcing each sessionsetup_and_X
|
||||
* to get a new vuid.
|
||||
* Jeremy Allison. (jallison@whistle.com).
|
||||
*/
|
||||
|
||||
int i;
|
||||
for(i = 0; i < num_validated_users; i++) {
|
||||
vuser = &validated_users[i];
|
||||
if( vuser->uid == uid )
|
||||
return (uint16)(i + VUID_OFFSET); /* User already validated */
|
||||
}
|
||||
#endif
|
||||
|
||||
validated_users = (user_struct *)Realloc(validated_users,
|
||||
sizeof(user_struct)*
|
||||
|
Loading…
x
Reference in New Issue
Block a user