From c0dc3f6c2d431c4cc7034da322ac9d5828d439b1 Mon Sep 17 00:00:00 2001
From: Rob Swindell <rob@synchro.net>
Date: Wed, 21 Apr 2021 19:57:18 -0700
Subject: [PATCH] Add convenience pointer (from_port) to SENDERPORT header
 field

---
 src/smblib/smbdefs.h | 1 +
 src/smblib/smblib.c  | 4 ++++
 2 files changed, 5 insertions(+)

diff --git a/src/smblib/smbdefs.h b/src/smblib/smbdefs.h
index 64ec8d0d4d..faf499bcc2 100644
--- a/src/smblib/smbdefs.h
+++ b/src/smblib/smbdefs.h
@@ -596,6 +596,7 @@ typedef struct {				/* Message or File */
 				*from_ip,		/* From IP address (e.g. "192.168.1.2") */
 				*from_host,		/* From host name */
 				*from_prot,		/* From protocol (e.g. "Telnet", "NNTP", "HTTP", etc.) */
+				*from_port,		/* From TCP/UDP port number */
 				*replyto,		/* Reply-to name */
 				*replyto_ext,	/* Reply-to extension */
 				*replyto_list,	/* Comma-separated list of mailboxes, RFC822-style */
diff --git a/src/smblib/smblib.c b/src/smblib/smblib.c
index 36a5659e41..103035e214 100644
--- a/src/smblib/smblib.c
+++ b/src/smblib/smblib.c
@@ -773,6 +773,9 @@ static void set_convenience_ptr(smbmsg_t* msg, uint16_t hfield_type, void* hfiel
 		case SENDERPROTOCOL:
 			msg->from_prot=(char*)hfield_dat;
 			break;
+		case SENDERPORT:
+			msg->from_port=(char*)hfield_dat;
+			break;
 		case REPLYTO:
 			msg->replyto=(char*)hfield_dat;
 			break;
@@ -910,6 +913,7 @@ static void clear_convenience_ptrs(smbmsg_t* msg)
 	msg->from_ip=NULL;
 	msg->from_host=NULL;
 	msg->from_prot=NULL;
+	msg->from_port=NULL;
 	memset(&msg->from_net,0,sizeof(net_t));
 
 	msg->replyto=NULL;
-- 
GitLab