Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F154386719
D53507.id165692.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
5 KB
Referenced Files
None
Subscribers
None
D53507.id165692.diff
View Options
diff --git a/sys/netinet/in_pcb.h b/sys/netinet/in_pcb.h
--- a/sys/netinet/in_pcb.h
+++ b/sys/netinet/in_pcb.h
@@ -539,6 +539,9 @@
#define INP_IPV6 0x2
#define INP_IPV6PROTO 0x4 /* opened under IPv6 protocol */
+/* inp_vflags description for use with printf(9) %b identifier. */
+#define INP_VFLAGS_BITS "\20\1INP_IPV4\2INP_IPV6\3INP_IPV6PROTO"
+
/*
* Flags for inp_flags.
*/
@@ -582,6 +585,17 @@
IN6P_TCLASS|IN6P_AUTOFLOWLABEL|IN6P_RFC2292|\
IN6P_MTU)
+/* inp_flags description for use with printf(9) %b identifier. */
+#define INP_FLAGS_BITS "\20" \
+ "\1INP_RECVOPTS\2INP_RECVRETOPTS\3INP_RECVDSTADDR\4INP_HDRINCL" \
+ "\5INP_HIGHPORT\6INP_LOWPORT\7INP_ANONPORT\10INP_RECVIF" \
+ "\11INP_MTUDISC\12INP_FREED\13INP_RECVTTL\14INP_DONTFRAG" \
+ "\15INP_BINDANY\16INP_INHASHLIST\17INP_RECVTOS\20IN6P_IPV6_V6ONLY" \
+ "\21IN6P_PKTINFO\22IN6P_HOPLIMIT\23IN6P_HOPOPTS\24IN6P_DSTOPTS" \
+ "\25IN6P_RTHDR\26IN6P_RTHDRDSTOPTS\27IN6P_TCLASS\30IN6P_AUTOFLOWLABEL" \
+ "\31INP_INLBGROUP\32INP_ONESBCAST\33INP_DROPPED\34INP_SOCKREF" \
+ "\35INP_RESERVED_0\36INP_BOUNDFIB\37IN6P_RFC2292\40IN6P_MTU"
+
/*
* Flags for inp_flags2.
*/
diff --git a/sys/netinet/in_pcb.c b/sys/netinet/in_pcb.c
--- a/sys/netinet/in_pcb.c
+++ b/sys/netinet/in_pcb.c
@@ -3058,154 +3058,6 @@
ntohs(inc->inc_fport));
}
-static void
-db_print_inpflags(int inp_flags)
-{
- int comma;
-
- comma = 0;
- if (inp_flags & INP_RECVOPTS) {
- db_printf("%sINP_RECVOPTS", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_RECVRETOPTS) {
- db_printf("%sINP_RECVRETOPTS", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_RECVDSTADDR) {
- db_printf("%sINP_RECVDSTADDR", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_HDRINCL) {
- db_printf("%sINP_HDRINCL", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_HIGHPORT) {
- db_printf("%sINP_HIGHPORT", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_LOWPORT) {
- db_printf("%sINP_LOWPORT", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_ANONPORT) {
- db_printf("%sINP_ANONPORT", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_RECVIF) {
- db_printf("%sINP_RECVIF", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_MTUDISC) {
- db_printf("%sINP_MTUDISC", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_RECVTTL) {
- db_printf("%sINP_RECVTTL", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_DONTFRAG) {
- db_printf("%sINP_DONTFRAG", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_BINDANY) {
- db_printf("%sINP_BINDANY", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_INHASHLIST) {
- db_printf("%sINP_INHASHLIST", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_RECVTOS) {
- db_printf("%sINP_RECVTOS", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & IN6P_IPV6_V6ONLY) {
- db_printf("%sIN6P_IPV6_V6ONLY", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & IN6P_PKTINFO) {
- db_printf("%sIN6P_PKTINFO", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & IN6P_HOPLIMIT) {
- db_printf("%sIN6P_HOPLIMIT", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & IN6P_HOPOPTS) {
- db_printf("%sIN6P_HOPOPTS", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & IN6P_DSTOPTS) {
- db_printf("%sIN6P_DSTOPTS", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & IN6P_RTHDR) {
- db_printf("%sIN6P_RTHDR", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & IN6P_RTHDRDSTOPTS) {
- db_printf("%sIN6P_RTHDRDSTOPTS", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & IN6P_TCLASS) {
- db_printf("%sIN6P_TCLASS", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & IN6P_AUTOFLOWLABEL) {
- db_printf("%sIN6P_AUTOFLOWLABEL", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_ONESBCAST) {
- db_printf("%sINP_ONESBCAST", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_DROPPED) {
- db_printf("%sINP_DROPPED", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_SOCKREF) {
- db_printf("%sINP_SOCKREF", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_RESERVED_0) {
- db_printf("%sINP_RESERVED_0", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & INP_BOUNDFIB) {
- db_printf("%sINP_BOUNDFIB", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & IN6P_RFC2292) {
- db_printf("%sIN6P_RFC2292", comma ? ", " : "");
- comma = 1;
- }
- if (inp_flags & IN6P_MTU) {
- db_printf("IN6P_MTU%s", comma ? ", " : "");
- comma = 1;
- }
-}
-
-static void
-db_print_inpvflag(u_char inp_vflag)
-{
- int comma;
-
- comma = 0;
- if (inp_vflag & INP_IPV4) {
- db_printf("%sINP_IPV4", comma ? ", " : "");
- comma = 1;
- }
- if (inp_vflag & INP_IPV6) {
- db_printf("%sINP_IPV6", comma ? ", " : "");
- comma = 1;
- }
- if (inp_vflag & INP_IPV6PROTO) {
- db_printf("%sINP_IPV6PROTO", comma ? ", " : "");
- comma = 1;
- }
-}
-
void
db_print_inpcb(struct inpcb *inp, const char *name, int indent)
{
@@ -3221,16 +3073,12 @@
db_print_inconninfo(&inp->inp_inc, "inp_conninfo", indent);
db_print_indent(indent);
- db_printf("inp_label: %p inp_flags: 0x%x (",
- inp->inp_label, inp->inp_flags);
- db_print_inpflags(inp->inp_flags);
- db_printf(")\n");
+ db_printf("inp_label: %p inp_flags: 0x%b\n",
+ inp->inp_label, inp->inp_flags, INP_FLAGS_BITS);
db_print_indent(indent);
- db_printf("inp_sp: %p inp_vflag: 0x%x (", inp->inp_sp,
- inp->inp_vflag);
- db_print_inpvflag(inp->inp_vflag);
- db_printf(")\n");
+ db_printf("inp_sp: %p inp_vflag: 0x%b\n", inp->inp_sp,
+ inp->inp_vflag, INP_VFLAGS_BITS);
db_print_indent(indent);
db_printf("inp_ip_ttl: %d inp_ip_p: %d inp_ip_minttl: %d\n",
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Wed, Apr 29, 6:48 AM (14 h, 23 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
32257660
Default Alt Text
D53507.id165692.diff (5 KB)
Attached To
Mode
D53507: ddb: use %b when showing flags for an inp
Attached
Detach File
Event Timeline
Log In to Comment