diff options
-rw-r--r-- | source3/smbd/reply.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/source3/smbd/reply.c b/source3/smbd/reply.c index 7990585ef4..052884480b 100644 --- a/source3/smbd/reply.c +++ b/source3/smbd/reply.c @@ -272,11 +272,20 @@ int reply_tcon_and_X(connection_struct *conn, char *inbuf,char *outbuf,int lengt } else { /* NT sets the fstype of IPC$ to the null string */ const char *fsname = IS_IPC(conn) ? "" : lp_fstype(SNUM(conn)); + const char *devicetype; + set_message(outbuf,3,0,True); + if ( IS_IPC(conn) ) + devicetype = "IPC"; + else if ( IS_PRINT(conn) ) + devicetype = "LPT:"; + else + devicetype = "A:"; + p = smb_buf(outbuf); - p += srvstr_push(outbuf, p, IS_IPC(conn) ? "IPC" : devicename, -1, + p += srvstr_push(outbuf, p, IS_IPC(conn) ? "IPC" : devicetype, -1, STR_TERMINATE|STR_ASCII); p += srvstr_push(outbuf, p, fsname, -1, STR_TERMINATE); |