From 2188016f4649a17be94ac8e42b3f62c9d20a9575 Mon Sep 17 00:00:00 2001 From: rswindell <> Date: Sat, 14 Jun 2003 10:03:14 +0000 Subject: [PATCH] smb_getmsghdr() no longer returns error (SMB_ERR_HDR_FIELD) if one of the required header fields (to/from/subj) is missing. Instead, it just points the convenience pointer(s) for the missing field(s) to a static null string. Increased version to 2.22. --- src/smblib/smblib.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/smblib/smblib.c b/src/smblib/smblib.c index 2e1cf57a37..801f1b2669 100644 --- a/src/smblib/smblib.c +++ b/src/smblib/smblib.c @@ -68,10 +68,12 @@ #include "filewrap.h" /* Use smb_ver() and smb_lib_ver() to obtain these values */ -#define SMBLIB_VERSION "2.21" /* SMB library version */ +#define SMBLIB_VERSION "2.22" /* SMB library version */ #define SMB_VERSION 0x0121 /* SMB format version */ /* High byte major, low byte minor */ +static char* nulstr=""; + int SMBCALL smb_ver(void) { return(SMB_VERSION); @@ -967,11 +969,10 @@ int SMBCALL smb_getmsghdr(smb_t* smb, smbmsg_t* msg) l+=msg->hfield[i].length; } - if(!msg->from || !msg->to || !msg->subj) { - sprintf(smb->last_error,"missing required header field (from/to/subj)"); - smb_freemsgmem(msg); - return(SMB_ERR_HDR_FIELD); - } + /* These convenience pointers must point to something */ + if(msg->from==NULL) msg->from=nulstr; + if(msg->to==NULL) msg->to=nulstr; + if(msg->subj==NULL) msg->subj=nulstr; /* If no reverse path specified, use sender's address */ if(msg->reverse_path == NULL) -- GitLab