1
0
mirror of https://github.com/samba-team/samba.git synced 2025-03-08 04:58:40 +03:00

- added a check for broken RH5 include files. With the standard RH5

includes (ie. unpatched RH5) Samba gets file corruption because of the
incorrect definition of the shmid_ds structure. Updating your RH5
installation of glibc-devel fixes this.

- don't try to fcntl_lock() a read-only fd in shmem.c

- allow level 0 debug messages to get through in smbstatus
(This used to be commit 45553771f90087a12db0153524146d42155d1d3f)
This commit is contained in:
Andrew Tridgell 1998-03-22 01:31:50 +00:00
parent bee4067bd4
commit 93b3c58136
3 changed files with 16 additions and 1 deletions

View File

@ -656,6 +656,9 @@ static BOOL smb_shm_lock_hash_entry( unsigned int entry)
return False;
}
if (read_only)
return True;
/* Do an exclusive wait lock on the 4 byte region mapping into this entry */
if (fcntl_lock(smb_shm_fd, F_SETLKW, start, sizeof(int), F_WRLCK) == False)
{
@ -679,6 +682,9 @@ static BOOL smb_shm_unlock_hash_entry( unsigned int entry )
DEBUG(0,("ERROR smb_shm_unlock_hash_entry : bad smb_shm_fd (%d)\n",smb_shm_fd));
return False;
}
if (read_only)
return True;
/* Do a wait lock on the 4 byte region mapping into this entry */
if (fcntl_lock(smb_shm_fd, F_SETLKW, start, sizeof(int), F_UNLCK) == False)

View File

@ -542,6 +542,15 @@ struct shmem_ops *sysv_shm_open(int ronly)
int i;
int pid;
#ifdef LINUX
if (sizeof(shm_ds) == 52) {
DEBUG(0,("WARNING: You probably have a broken set of glibc2 include files - disabling sysv shared memory\n"));
return NULL;
}
#endif
read_only = ronly;
shm_size = lp_shmem_size();

View File

@ -120,7 +120,7 @@ static void print_share_mode(share_mode_entry *e, char *fname)
charset_initialise();
DEBUGLEVEL = 0;
dbf = fopen("/dev/null","w");
dbf = stderr;
if (getuid() != geteuid()) {
printf("smbstatus should not be run setuid\n");