summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHerb Lewis <herb@samba.org>2004-05-22 05:01:25 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 10:51:47 -0500
commit99d8aa8b17d6b6babdffbaf4f343375d58a88b5b (patch)
tree4fbf6176181b8f10f575772cc8fab94fc961684c
parent331d4fc58c9a7dee70f85d3fe03738bd9b43dc36 (diff)
downloadsamba-99d8aa8b17d6b6babdffbaf4f343375d58a88b5b.tar.gz
samba-99d8aa8b17d6b6babdffbaf4f343375d58a88b5b.tar.bz2
samba-99d8aa8b17d6b6babdffbaf4f343375d58a88b5b.zip
r814: conn is 0 during ioctl (at least during smbtorture IOCTL test)
fix smbd panic (This used to be commit 61da0bb1f6ea22df78ea7bd22a740c5868f62591)
-rw-r--r--source3/smbd/process.c2
-rw-r--r--source3/smbd/reply.c4
2 files changed, 4 insertions, 2 deletions
diff --git a/source3/smbd/process.c b/source3/smbd/process.c
index 283b791afd..12fd809b78 100644
--- a/source3/smbd/process.c
+++ b/source3/smbd/process.c
@@ -683,7 +683,7 @@ static int switch_message(int type,char *inbuf,char *outbuf,int size,int bufsize
uint16 session_tag = (lp_security() == SEC_SHARE) ? UID_FIELD_INVALID : SVAL(inbuf,smb_uid);
connection_struct *conn = conn_find(SVAL(inbuf,smb_tid));
- DEBUG(3,("switch message %s (pid %d)\n",smb_fn_name(type),(int)pid));
+ DEBUG(3,("switch message %s (pid %d) conn 0x%x\n",smb_fn_name(type),(int)pid,(unsigned int)conn));
smb_dump(smb_fn_name(type), 1, inbuf, size);
if(global_oplock_break) {
diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c
index 2046f2370a..560208ae15 100644
--- a/source3/smbd/reply.c
+++ b/source3/smbd/reply.c
@@ -489,7 +489,9 @@ int reply_ioctl(connection_struct *conn,
}
SSVAL(p,0,fsp->rap_print_jobid); /* Job number */
srvstr_push(outbuf, p+2, global_myname(), 15, STR_TERMINATE|STR_ASCII);
- srvstr_push(outbuf, p+18, lp_servicename(SNUM(conn)), 13, STR_TERMINATE|STR_ASCII);
+ if (conn) {
+ srvstr_push(outbuf, p+18, lp_servicename(SNUM(conn)), 13, STR_TERMINATE|STR_ASCII);
+ }
break;
}
}