diff options
-rw-r--r-- | source3/include/proto.h | 1 | ||||
-rw-r--r-- | source3/libsmb/nmblib.c | 16 |
2 files changed, 17 insertions, 0 deletions
diff --git a/source3/include/proto.h b/source3/include/proto.h index 6f18ee08e6..418a0d104c 100644 --- a/source3/include/proto.h +++ b/source3/include/proto.h @@ -2772,6 +2772,7 @@ void put_name(char *dest, const char *name, int pad, unsigned int name_type); char *nmb_namestr(const struct nmb_name *n); struct packet_struct *copy_packet(struct packet_struct *packet); void free_packet(struct packet_struct *packet); +int packet_trn_id(struct packet_struct *p); struct packet_struct *parse_packet(char *buf,int length, enum packet_type packet_type, struct in_addr ip, diff --git a/source3/libsmb/nmblib.c b/source3/libsmb/nmblib.c index e10bd7aa7b..fd011ebf27 100644 --- a/source3/libsmb/nmblib.c +++ b/source3/libsmb/nmblib.c @@ -726,6 +726,22 @@ void free_packet(struct packet_struct *packet) SAFE_FREE(packet); } +int packet_trn_id(struct packet_struct *p) +{ + int result; + switch (p->packet_type) { + case NMB_PACKET: + result = p->packet.nmb.header.name_trn_id; + break; + case DGRAM_PACKET: + result = p->packet.dgram.header.dgm_id; + break; + default: + result = -1; + } + return result; +} + /******************************************************************* Parse a packet buffer into a packet structure. ******************************************************************/ |