PERFORCE change 164820 for review
Gabor Pali
pgj at FreeBSD.org
Sun Jun 21 19:17:22 UTC 2009
http://perforce.freebsd.org/chv.cgi?CH=164820
Change 164820 by pgj at petymeg-current on 2009/06/21 19:17:18
Introduce a type for socket buffers
Affected files ...
.. //depot/projects/soc2009/pgj_libstat/src/lib/libnetstat/netstat.c#33 edit
.. //depot/projects/soc2009/pgj_libstat/src/lib/libnetstat/netstat.h#20 edit
.. //depot/projects/soc2009/pgj_libstat/src/lib/libnetstat/netstat_internal.h#18 edit
.. //depot/projects/soc2009/pgj_libstat/src/lib/libnetstat/netstat_util.c#20 edit
.. //depot/projects/soc2009/pgj_libstat/src/usr.bin/netstat/inet.c#19 edit
.. //depot/projects/soc2009/pgj_libstat/src/usr.bin/netstat/unix.c#15 edit
.. //depot/projects/soc2009/pgj_libstat/src/usr.bin/nettop/main.c#5 edit
Differences ...
==== //depot/projects/soc2009/pgj_libstat/src/lib/libnetstat/netstat.c#33 (text+ko) ====
@@ -581,20 +581,20 @@
stp->st_qlen = xpcb->xu_socket.so_qlen;
stp->st_incqlen = xpcb->xu_socket.so_incqlen;
stp->st_qlimit = xpcb->xu_socket.so_qlimit;
- stp->st_snd_cc = xpcb->xu_socket.so_snd.sb_cc;
- stp->st_snd_mcnt = xpcb->xu_socket.so_snd.sb_mcnt;
- stp->st_snd_ccnt = xpcb->xu_socket.so_snd.sb_ccnt;
- stp->st_snd_hiwat = xpcb->xu_socket.so_snd.sb_hiwat;
- stp->st_snd_lowat = xpcb->xu_socket.so_snd.sb_lowat;
- stp->st_snd_mbcnt = xpcb->xu_socket.so_snd.sb_mbcnt;
- stp->st_snd_mbmax = xpcb->xu_socket.so_snd.sb_mbmax;
- stp->st_rcv_cc = xpcb->xu_socket.so_rcv.sb_cc;
- stp->st_rcv_mcnt = xpcb->xu_socket.so_rcv.sb_mcnt;
- stp->st_rcv_ccnt = xpcb->xu_socket.so_rcv.sb_ccnt;
- stp->st_rcv_hiwat = xpcb->xu_socket.so_rcv.sb_hiwat;
- stp->st_rcv_lowat = xpcb->xu_socket.so_rcv.sb_lowat;
- stp->st_rcv_mbcnt = xpcb->xu_socket.so_rcv.sb_mbcnt;
- stp->st_rcv_mbmax = xpcb->xu_socket.so_rcv.sb_mbmax;
+ stp->st_snd.sbt_cc = xpcb->xu_socket.so_snd.sb_cc;
+ stp->st_snd.sbt_mcnt = xpcb->xu_socket.so_snd.sb_mcnt;
+ stp->st_snd.sbt_ccnt = xpcb->xu_socket.so_snd.sb_ccnt;
+ stp->st_snd.sbt_hiwat = xpcb->xu_socket.so_snd.sb_hiwat;
+ stp->st_snd.sbt_lowat = xpcb->xu_socket.so_snd.sb_lowat;
+ stp->st_snd.sbt_mbcnt = xpcb->xu_socket.so_snd.sb_mbcnt;
+ stp->st_snd.sbt_mbmax = xpcb->xu_socket.so_snd.sb_mbmax;
+ stp->st_rcv.sbt_cc = xpcb->xu_socket.so_rcv.sb_cc;
+ stp->st_rcv.sbt_mcnt = xpcb->xu_socket.so_rcv.sb_mcnt;
+ stp->st_rcv.sbt_ccnt = xpcb->xu_socket.so_rcv.sb_ccnt;
+ stp->st_rcv.sbt_hiwat = xpcb->xu_socket.so_rcv.sb_hiwat;
+ stp->st_rcv.sbt_lowat = xpcb->xu_socket.so_rcv.sb_lowat;
+ stp->st_rcv.sbt_mbcnt = xpcb->xu_socket.so_rcv.sb_mbcnt;
+ stp->st_rcv.sbt_mbmax = xpcb->xu_socket.so_rcv.sb_mbmax;
stp->st_pcb = (u_long)xpcb->xu_socket.so_pcb;
stp->st_vnode = (u_long)xpcb->xu_unp.unp_vnode;
stp->st_conn = (u_long)xpcb->xu_unp.unp_conn;
@@ -627,20 +627,20 @@
stp->st_qlen = so->so_qlen;
stp->st_incqlen = so->so_incqlen;
stp->st_qlimit = so->so_qlimit;
- stp->st_snd_cc = so->so_snd.sb_cc;
- stp->st_snd_mcnt = so->so_snd.sb_mcnt;
- stp->st_snd_ccnt = so->so_snd.sb_ccnt;
- stp->st_snd_hiwat = so->so_snd.sb_hiwat;
- stp->st_snd_lowat = so->so_snd.sb_lowat;
- stp->st_snd_mbcnt = so->so_snd.sb_mbcnt;
- stp->st_snd_mbmax = so->so_snd.sb_mbmax;
- stp->st_rcv_cc = so->so_rcv.sb_cc;
- stp->st_rcv_mcnt = so->so_rcv.sb_mcnt;
- stp->st_rcv_ccnt = so->so_rcv.sb_ccnt;
- stp->st_rcv_hiwat = so->so_rcv.sb_hiwat;
- stp->st_rcv_lowat = so->so_rcv.sb_lowat;
- stp->st_rcv_mbcnt = so->so_rcv.sb_mbcnt;
- stp->st_rcv_mbmax = so->so_rcv.sb_mbmax;
+ stp->st_snd.sbt_cc = so->so_snd.sb_cc;
+ stp->st_snd.sbt_mcnt = so->so_snd.sb_mcnt;
+ stp->st_snd.sbt_ccnt = so->so_snd.sb_ccnt;
+ stp->st_snd.sbt_hiwat = so->so_snd.sb_hiwat;
+ stp->st_snd.sbt_lowat = so->so_snd.sb_lowat;
+ stp->st_snd.sbt_mbcnt = so->so_snd.sb_mbcnt;
+ stp->st_snd.sbt_mbmax = so->so_snd.sb_mbmax;
+ stp->st_rcv.sbt_cc = so->so_rcv.sb_cc;
+ stp->st_rcv.sbt_mcnt = so->so_rcv.sb_mcnt;
+ stp->st_rcv.sbt_ccnt = so->so_rcv.sb_ccnt;
+ stp->st_rcv.sbt_hiwat = so->so_rcv.sb_hiwat;
+ stp->st_rcv.sbt_lowat = so->so_rcv.sb_lowat;
+ stp->st_rcv.sbt_mbcnt = so->so_rcv.sb_mbcnt;
+ stp->st_rcv.sbt_mbmax = so->so_rcv.sb_mbmax;
stp->st_pcb = (tp == NULL) ? (u_long)inp->inp_ppcb :
(u_long)so->so_pcb;
stp->st_vnode = (u_long)0;
==== //depot/projects/soc2009/pgj_libstat/src/lib/libnetstat/netstat.h#20 (text+ko) ====
@@ -62,21 +62,8 @@
int netstat_st_get_protocol(const struct socket_type *stp);
const char *netstat_st_get_name(const struct socket_type *stp);
const char *netstat_st_get_extname(const struct socket_type *stp);
-/* XXX: move snd/rcv-related properties into a new abstract type? */
-u_int netstat_st_get_snd_cc(const struct socket_type *stp);
-u_int netstat_st_get_snd_hiwat(const struct socket_type *stp);
-u_int netstat_st_get_snd_lowat(const struct socket_type *stp);
-u_int netstat_st_get_snd_mbcnt(const struct socket_type *stp);
-u_int netstat_st_get_snd_mcnt(const struct socket_type *stp);
-u_int netstat_st_get_snd_ccnt(const struct socket_type *stp);
-u_int netstat_st_get_snd_mbmax(const struct socket_type *stp);
-u_int netstat_st_get_rcv_cc(const struct socket_type *stp);
-u_int netstat_st_get_rcv_hiwat(const struct socket_type *stp);
-u_int netstat_st_get_rcv_lowat(const struct socket_type *stp);
-u_int netstat_st_get_rcv_mbcnt(const struct socket_type *stp);
-u_int netstat_st_get_rcv_mcnt(const struct socket_type *stp);
-u_int netstat_st_get_rcv_ccnt(const struct socket_type *stp);
-u_int netstat_st_get_rcv_mbmax(const struct socket_type *stp);
+const struct sockbuf_type *netstat_st_get_snd(const struct socket_type *stp);
+const struct sockbuf_type *netstat_st_get_rcv(const struct socket_type *stp);
u_short netstat_st_get_qlen(const struct socket_type *stp);
u_short netstat_st_get_incqlen(const struct socket_type *stp);
u_short netstat_st_get_qlimit(const struct socket_type *stp);
@@ -97,6 +84,14 @@
char *addr, int addr_len);
u_short netstat_at_get_port(const struct addr_type *atp);
const char *netstat_at_get_portname(struct addr_type *atp);
+/* Socket buffers: */
+u_int netstat_sbt_get_cc(const struct sockbuf_type *sbtp);
+u_int netstat_sbt_get_hiwat(const struct sockbuf_type *sbtp);
+u_int netstat_sbt_get_lowat(const struct sockbuf_type *sbtp);
+u_int netstat_sbt_get_mbcnt(const struct sockbuf_type *sbtp);
+u_int netstat_sbt_get_mcnt(const struct sockbuf_type *sbtp);
+u_int netstat_sbt_get_ccnt(const struct sockbuf_type *sbtp);
+u_int netstat_sbt_get_mbmax(const struct sockbuf_type *sbtp);
__END_DECLS
#endif /* !_NETSTAT_H_ */
==== //depot/projects/soc2009/pgj_libstat/src/lib/libnetstat/netstat_internal.h#18 (text+ko) ====
@@ -32,6 +32,17 @@
char at_portname[32];
};
+/* Socket buffer type */
+struct sockbuf_type {
+ u_int sbt_cc; /* actual chars in the buffer */
+ u_int sbt_mcnt;
+ u_int sbt_ccnt;
+ u_int sbt_hiwat;
+ u_int sbt_lowat;
+ u_int sbt_mbcnt;
+ u_int sbt_mbmax;
+};
+
/* internal defines for addr_type: */
#define ADDRTYPE_ANONPORT 0x01
#define ADDRTYPE_NAME_RESOLVED 0x02
@@ -58,20 +69,10 @@
struct addr_type *st_address[SOCKTYPE_MAXADDRCNT];
int st_addrcnt; /* address count */
- u_int st_snd_cc; /* actual chars in the send buffer */
- u_int st_snd_mcnt;
- u_int st_snd_ccnt;
- u_int st_snd_hiwat;
- u_int st_snd_lowat;
- u_int st_snd_mbcnt;
- u_int st_snd_mbmax;
- u_int st_rcv_cc; /* actual chars in the receive buffer */
- u_int st_rcv_mcnt;
- u_int st_rcv_ccnt;
- u_int st_rcv_hiwat;
- u_int st_rcv_lowat;
- u_int st_rcv_mbcnt;
- u_int st_rcv_mbmax;
+ /* buffers */
+ struct sockbuf_type st_snd;
+ struct sockbuf_type st_rcv;
+
u_short st_qlen; /* number of unaccepted connections */
u_short st_incqlen; /* number of unaccepted incomplete
connections */
==== //depot/projects/soc2009/pgj_libstat/src/lib/libnetstat/netstat_util.c#20 (text+ko) ====
@@ -350,88 +350,16 @@
return (stp->st_extname);
}
-u_int
-netstat_st_get_rcv_cc(const struct socket_type *stp)
+const struct sockbuf_type *
+netstat_st_get_snd(const struct socket_type *stp)
{
- return (stp->st_rcv_cc);
+ return (&stp->st_snd);
}
-u_int
-netstat_st_get_rcv_hiwat(const struct socket_type *stp)
+const struct sockbuf_type *
+netstat_st_get_rcv(const struct socket_type *stp)
{
- return (stp->st_rcv_hiwat);
-}
-
-u_int
-netstat_st_get_rcv_lowat(const struct socket_type *stp)
-{
- return (stp->st_rcv_lowat);
-}
-
-u_int
-netstat_st_get_rcv_mbcnt(const struct socket_type *stp)
-{
- return (stp->st_rcv_mbcnt);
-}
-
-u_int
-netstat_st_get_rcv_mcnt(const struct socket_type *stp)
-{
- return (stp->st_rcv_mcnt);
-}
-
-u_int
-netstat_st_get_rcv_ccnt(const struct socket_type *stp)
-{
- return (stp->st_rcv_ccnt);
-}
-
-u_int
-netstat_st_get_rcv_mbmax(const struct socket_type *stp)
-{
- return (stp->st_rcv_mbmax);
-}
-
-u_int
-netstat_st_get_snd_cc(const struct socket_type *stp)
-{
- return (stp->st_snd_cc);
-}
-
-u_int
-netstat_st_get_snd_hiwat(const struct socket_type *stp)
-{
- return (stp->st_snd_hiwat);
-}
-
-u_int
-netstat_st_get_snd_lowat(const struct socket_type *stp)
-{
- return (stp->st_snd_lowat);
-}
-
-u_int
-netstat_st_get_snd_mbcnt(const struct socket_type *stp)
-{
- return (stp->st_snd_mbcnt);
-}
-
-u_int
-netstat_st_get_snd_mcnt(const struct socket_type *stp)
-{
- return (stp->st_snd_mcnt);
-}
-
-u_int
-netstat_st_get_snd_ccnt(const struct socket_type *stp)
-{
- return (stp->st_snd_ccnt);
-}
-
-u_int
-netstat_st_get_snd_mbmax(const struct socket_type *stp)
-{
- return (stp->st_snd_mbmax);
+ return (&stp->st_rcv);
}
u_short
@@ -547,3 +475,45 @@
}
return (atp->at_portname);
}
+
+u_int
+netstat_sbt_get_cc(const struct sockbuf_type *sbtp)
+{
+ return (sbtp->sbt_cc);
+}
+
+u_int
+netstat_sbt_get_hiwat(const struct sockbuf_type *sbtp)
+{
+ return (sbtp->sbt_hiwat);
+}
+
+u_int
+netstat_sbt_get_lowat(const struct sockbuf_type *sbtp)
+{
+ return (sbtp->sbt_lowat);
+}
+
+u_int
+netstat_sbt_get_mbcnt(const struct sockbuf_type *sbtp)
+{
+ return (sbtp->sbt_mbcnt);
+}
+
+u_int
+netstat_sbt_get_mcnt(const struct sockbuf_type *sbtp)
+{
+ return (sbtp->sbt_mcnt);
+}
+
+u_int
+netstat_sbt_get_ccnt(const struct sockbuf_type *sbtp)
+{
+ return (sbtp->sbt_ccnt);
+}
+
+u_int
+netstat_sbt_get_mbmax(const struct sockbuf_type *sbtp)
+{
+ return (sbtp->sbt_mbmax);
+}
==== //depot/projects/soc2009/pgj_libstat/src/usr.bin/netstat/inet.c#19 (text+ko) ====
@@ -203,8 +203,9 @@
netstat_st_get_incqlen(stp), netstat_st_get_qlimit(stp));
printf("%-14.14s", buf1);
} else {
- printf("%6u %6u ", netstat_st_get_rcv_cc(stp),
- netstat_st_get_snd_cc(stp));
+ printf("%6u %6u ",
+ netstat_sbt_get_cc(netstat_st_get_rcv(stp)),
+ netstat_sbt_get_cc(netstat_st_get_snd(stp)));
}
laddr = netstat_st_get_address(stp, 0); /* local */
faddr = netstat_st_get_address(stp, 1); /* foreign */
@@ -218,16 +219,18 @@
if (Lflag)
printf("%21s", " ");
printf("%6u %6u %6u %6u %6u %6u %6u %6u %6u %6u %6u %6u",
- netstat_st_get_rcv_mcnt(stp), netstat_st_get_snd_mcnt(stp),
- netstat_st_get_rcv_ccnt(stp), netstat_st_get_snd_ccnt(stp),
- netstat_st_get_rcv_hiwat(stp),
- netstat_st_get_snd_hiwat(stp),
- netstat_st_get_rcv_lowat(stp),
- netstat_st_get_snd_lowat(stp),
- netstat_st_get_rcv_mbcnt(stp),
- netstat_st_get_snd_mbcnt(stp),
- netstat_st_get_rcv_mbmax(stp),
- netstat_st_get_snd_mbmax(stp));
+ netstat_sbt_get_mcnt(netstat_st_get_rcv(stp)),
+ netstat_sbt_get_mcnt(netstat_st_get_snd(stp)),
+ netstat_sbt_get_ccnt(netstat_st_get_rcv(stp)),
+ netstat_sbt_get_ccnt(netstat_st_get_snd(stp)),
+ netstat_sbt_get_hiwat(netstat_st_get_rcv(stp)),
+ netstat_sbt_get_hiwat(netstat_st_get_snd(stp)),
+ netstat_sbt_get_lowat(netstat_st_get_rcv(stp)),
+ netstat_sbt_get_lowat(netstat_st_get_snd(stp)),
+ netstat_sbt_get_mbcnt(netstat_st_get_rcv(stp)),
+ netstat_sbt_get_mbcnt(netstat_st_get_snd(stp)),
+ netstat_sbt_get_mbmax(netstat_st_get_rcv(stp)),
+ netstat_sbt_get_mbmax(netstat_st_get_snd(stp)));
}
if (!Lflag) {
printf("%s", netstat_st_get_tcpstate(stp));
==== //depot/projects/soc2009/pgj_libstat/src/usr.bin/netstat/unix.c#15 (text+ko) ====
@@ -136,7 +136,8 @@
} else {
printf("%8lx %-6.6s %6u %6u %8lx %8lx %8lx %8lx",
netstat_st_get_pcb(stp), netstat_st_get_name(stp),
- netstat_st_get_rcv_cc(stp), netstat_st_get_snd_cc(stp),
+ netstat_sbt_get_cc(netstat_st_get_rcv(stp)),
+ netstat_sbt_get_cc(netstat_st_get_snd(stp)),
netstat_st_get_vnode(stp), netstat_st_get_conn(stp),
netstat_st_get_refs(stp), netstat_st_get_reflink(stp));
}
==== //depot/projects/soc2009/pgj_libstat/src/usr.bin/nettop/main.c#5 (text+ko) ====
@@ -78,7 +78,8 @@
mvprintw(row, 0,
"%8lx %-6.6s %6u %6u %8lx %8lx %8lx %8lx",
netstat_st_get_pcb(stp), netstat_st_get_name(stp),
- netstat_st_get_rcv_cc(stp), netstat_st_get_snd_cc(stp),
+ netstat_sbt_get_cc(netstat_st_get_rcv(stp)),
+ netstat_sbt_get_cc(netstat_st_get_snd(stp)),
netstat_st_get_vnode(stp), netstat_st_get_conn(stp),
netstat_st_get_refs(stp), netstat_st_get_reflink(stp));
if (netstat_st_get_addrcnt(stp) > 0) {
@@ -102,8 +103,9 @@
faddr = netstat_st_get_address(stp, 1);
mvprintw(row, 0,
"%-5.5s %6u %6u %-17.17s %-6.6s %-17.17s %-6.6s %s",
- netstat_st_get_extname(stp), netstat_st_get_rcv_cc(stp),
- netstat_st_get_snd_cc(stp),
+ netstat_st_get_extname(stp),
+ netstat_sbt_get_cc(netstat_st_get_rcv(stp)),
+ netstat_sbt_get_cc(netstat_st_get_snd(stp)),
netstat_at_get_name(laddr),
netstat_at_get_portname(laddr),
netstat_at_get_name(faddr),
More information about the p4-projects
mailing list