summaryrefslogtreecommitdiffstats
path: root/sys/netinet/libalias/alias_db.c
diff options
context:
space:
mode:
authorru <ru@FreeBSD.org>2001-05-30 14:24:35 +0000
committerru <ru@FreeBSD.org>2001-05-30 14:24:35 +0000
commitf478ecd8d334e9395eb4e931a970ee3c805583b5 (patch)
treeb10e10e5922844612c14ddcebbd16608df4a0ba9 /sys/netinet/libalias/alias_db.c
parent8c9c53e10bddc36c22314723b2270de95572f1d4 (diff)
downloadFreeBSD-src-f478ecd8d334e9395eb4e931a970ee3c805583b5.zip
FreeBSD-src-f478ecd8d334e9395eb4e931a970ee3c805583b5.tar.gz
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
Diffstat (limited to 'sys/netinet/libalias/alias_db.c')
-rw-r--r--sys/netinet/libalias/alias_db.c16
1 files changed, 7 insertions, 9 deletions
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
OpenPOWER on IntegriCloud