summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--source3/include/local.h2
-rw-r--r--source3/namedbsubnet.c6
-rw-r--r--source3/smbd/reply.c4
-rw-r--r--source3/smbd/server.c2
-rw-r--r--source3/smbd/trans2.c9
5 files changed, 17 insertions, 6 deletions
diff --git a/source3/include/local.h b/source3/include/local.h
index 22d1b2a08e..97857727c7 100644
--- a/source3/include/local.h
+++ b/source3/include/local.h
@@ -159,7 +159,7 @@
/* the directory to sit in when idle */
/* #define IDLE_DIR "/" */
-/* Timout (in seconds) to wait for an oplock breal
+/* Timout (in seconds) to wait for an oplock break
message to return. */
#define OPLOCK_BREAK_TIMEOUT 30
diff --git a/source3/namedbsubnet.c b/source3/namedbsubnet.c
index 4f0b647996..c6663d71fd 100644
--- a/source3/namedbsubnet.c
+++ b/source3/namedbsubnet.c
@@ -218,7 +218,11 @@ void add_workgroup_to_subnet( struct subnet_record *d, char *group)
int n;
add_my_name_entry(d,group,0x0 ,nb_type|NB_ACTIVE|NB_GROUP);
- add_my_name_entry(d,group,0x1e,nb_type|NB_ACTIVE|NB_GROUP);
+
+ /* Only register the WORKGROUP<0x1e> name if we could be a local master
+ browser. */
+ if(lp_local_master())
+ add_my_name_entry(d,group,0x1e,nb_type|NB_ACTIVE|NB_GROUP);
/* Add all our server names to the workgroup list. We remove any
browser or logon server flags from all but the primary name.
diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c
index 2a3679553c..baccb76291 100644
--- a/source3/smbd/reply.c
+++ b/source3/smbd/reply.c
@@ -641,13 +641,15 @@ int reply_chkpth(char *inbuf,char *outbuf)
unix_ERR_code = ERRbadpath;
}
- /* Ugly - NT specific hack - but needed (JRA) */
+#if 0
+ /* Ugly - NT specific hack - maybe not needed ? (JRA) */
if((errno == ENOTDIR) && (Protocol >= PROTOCOL_NT1) &&
(get_remote_arch() == RA_WINNT))
{
unix_ERR_class = ERRDOS;
unix_ERR_code = ERRbaddirectory;
}
+#endif
return(UNIXERROR(ERRDOS,ERRbadpath));
}
diff --git a/source3/smbd/server.c b/source3/smbd/server.c
index e4d433c06f..d387b7375b 100644
--- a/source3/smbd/server.c
+++ b/source3/smbd/server.c
@@ -2774,7 +2774,7 @@ inode = %x).\n", fsp->name, fnum, dev, inode));
{
DEBUG(0,("oplock_break: global_oplocks_open < 0 (%d). PANIC ERROR\n",
global_oplocks_open));
- abort();
+ exit_server("oplock_break: global_oplocks_open < 0");
}
DEBUG(5,("oplock_break: returning success for fnum = %d, dev = %x, inode = %x. Current \
diff --git a/source3/smbd/trans2.c b/source3/smbd/trans2.c
index 7f46604cce..092a069a6e 100644
--- a/source3/smbd/trans2.c
+++ b/source3/smbd/trans2.c
@@ -608,13 +608,15 @@ static int call_trans2findfirst(char *inbuf, char *outbuf, int bufsize, int cnum
unix_ERR_code = ERRbadpath;
}
- /* Ugly - NT specific hack - but needed (JRA) */
+#if 0
+ /* Ugly - NT specific hack - maybe not needed ? (JRA) */
if((errno == ENOTDIR) && (Protocol >= PROTOCOL_NT1) &&
(get_remote_arch() == RA_WINNT))
{
unix_ERR_class = ERRDOS;
unix_ERR_code = ERRbaddirectory;
}
+#endif
return(ERROR(ERRDOS,ERRbadpath));
}
@@ -651,13 +653,16 @@ static int call_trans2findfirst(char *inbuf, char *outbuf, int bufsize, int cnum
unix_ERR_code = ERRbadpath;
}
- /* Ugly - NT specific hack - but needed (JRA) */
+#if 0
+ /* Ugly - NT specific hack - maybe not needed ? (JRA) */
if((errno == ENOTDIR) && (Protocol >= PROTOCOL_NT1) &&
(get_remote_arch() == RA_WINNT))
{
unix_ERR_class = ERRDOS;
unix_ERR_code = ERRbaddirectory;
}
+#endif
+
return (UNIXERROR(ERRDOS,ERRbadpath));
}
return(ERROR(ERRDOS,ERRbadpath));