From f478ecd8d334e9395eb4e931a970ee3c805583b5 Mon Sep 17 00:00:00 2001 From: ru Date: Wed, 30 May 2001 14:24:35 +0000 Subject: Add an integer field to keep protocol-specific flags with links. For FTP control connection, keep the CRLF end-of-line termination status in there. Fixed the bug when the first FTP command in a session was ignored. PR: 24048 MFC after: 1 week --- sys/netinet/libalias/alias_db.c | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) (limited to 'sys/netinet/libalias/alias_db.c') diff --git a/sys/netinet/libalias/alias_db.c b/sys/netinet/libalias/alias_db.c index 60d425f..7234cdd 100644 --- a/sys/netinet/libalias/alias_db.c +++ b/sys/netinet/libalias/alias_db.c @@ -279,6 +279,7 @@ struct alias_link /* Main data structure */ #define LINK_PPTP (IPPROTO_MAX + 4) int flags; /* indicates special characteristics */ + int pflags; /* protocol-specific flags */ /* flag bits */ #define LINK_UNKNOWN_DEST_PORT 0x01 @@ -286,7 +287,6 @@ struct alias_link /* Main data structure */ #define LINK_PERMANENT 0x04 #define LINK_PARTIALLY_SPECIFIED 0x03 /* logical-or of first two bits */ #define LINK_UNFIREWALLED 0x08 -#define LINK_LAST_LINE_CRLF_TERMED 0x10 int timestamp; /* Time link was last accessed */ int expire_time; /* Expire time for link */ @@ -991,6 +991,7 @@ AddLink(struct in_addr src_addr, link->link_type = link_type; link->sockfd = -1; link->flags = 0; + link->pflags = 0; link->timestamp = timeStamp; /* Expiration time */ @@ -1829,7 +1830,7 @@ FindAliasAddress(struct in_addr original_addr) GetOriginalPort(), GetAliasPort() SetAckModified(), GetAckModified() GetDeltaAckIn(), GetDeltaSeqOut(), AddSeq() - SetLastLineCrlfTermed(), GetLastLineCrlfTermed() + SetProtocolFlags(), GetProtocolFlags() SetDestCallId() */ @@ -2197,20 +2198,17 @@ ClearCheckNewLink(void) } void -SetLastLineCrlfTermed(struct alias_link *link, int yes) +SetProtocolFlags(struct alias_link *link, int pflags) { - if (yes) - link->flags |= LINK_LAST_LINE_CRLF_TERMED; - else - link->flags &= ~LINK_LAST_LINE_CRLF_TERMED; + link->pflags = pflags;; } int -GetLastLineCrlfTermed(struct alias_link *link) +GetProtocolFlags(struct alias_link *link) { - return (link->flags & LINK_LAST_LINE_CRLF_TERMED); + return (link->pflags); } void -- cgit v1.1