View | Details | Raw Unified | Return to bug 250133
Collapse All | Expand All

(-)tools/tools/ifinfo/ifinfo.c (-11 / +10 lines)
Lines 49-55 Link Here
49
49
50
static void printit(const struct ifmibdata *, const char *);
50
static void printit(const struct ifmibdata *, const char *);
51
static const char *iftype(int);
51
static const char *iftype(int);
52
static const char *ifphys(int, int);
52
static const char *ifphys(int);
53
static int isit(int, char **, const char *);
53
static int isit(int, char **, const char *);
54
static printfcn findlink(int);
54
static printfcn findlink(int);
55
55
Lines 132-146 Link Here
132
		if (dolink && (pf = findlink(ifmd.ifmd_data.ifi_type))) {
132
		if (dolink && (pf = findlink(ifmd.ifmd_data.ifi_type))) {
133
			name[5] = IFDATA_LINKSPECIFIC;
133
			name[5] = IFDATA_LINKSPECIFIC;
134
			if (sysctl(name, 6, 0, &linkmiblen, 0, 0) < 0)
134
			if (sysctl(name, 6, 0, &linkmiblen, 0, 0) < 0)
135
				err(EX_OSERR, 
135
				err(EX_OSERR,
136
				    "sysctl(net.link.ifdata.%d.linkspec) size",
136
				    "sysctl(net.link.ifdata.%d.linkspec) size",
137
				    i);
137
				    i);
138
			linkmib = malloc(linkmiblen);
138
			linkmib = malloc(linkmiblen);
139
			if (!linkmib)
139
			if (!linkmib)
140
				err(EX_OSERR, "malloc(%lu)", 
140
				err(EX_OSERR, "malloc(%lu)",
141
				    (u_long)linkmiblen);
141
				    (u_long)linkmiblen);
142
			if (sysctl(name, 6, linkmib, &linkmiblen, 0, 0) < 0)
142
			if (sysctl(name, 6, linkmib, &linkmiblen, 0, 0) < 0)
143
				err(EX_OSERR, 
143
				err(EX_OSERR,
144
				    "sysctl(net.link.ifdata.%d.linkspec)",
144
				    "sysctl(net.link.ifdata.%d.linkspec)",
145
				    i);
145
				    i);
146
			pf(linkmib, linkmiblen);
146
			pf(linkmib, linkmiblen);
Lines 165-179 Link Here
165
	printf("\tsend queue max length: %d\n", ifmd->ifmd_snd_maxlen);
165
	printf("\tsend queue max length: %d\n", ifmd->ifmd_snd_maxlen);
166
	printf("\tsend queue drops: %d\n", ifmd->ifmd_snd_drops);
166
	printf("\tsend queue drops: %d\n", ifmd->ifmd_snd_drops);
167
	printf("\ttype: %s\n", iftype(ifmd->ifmd_data.ifi_type));
167
	printf("\ttype: %s\n", iftype(ifmd->ifmd_data.ifi_type));
168
	printf("\tphysical: %s\n", ifphys(ifmd->ifmd_data.ifi_type,
168
	printf("\tphysical: %s\n", ifphys(ifmd->ifmd_data.ifi_physical));
169
					  ifmd->ifmd_data.ifi_physical));
170
	printf("\taddress length: %d\n", ifmd->ifmd_data.ifi_addrlen);
169
	printf("\taddress length: %d\n", ifmd->ifmd_data.ifi_addrlen);
171
	printf("\theader length: %d\n", ifmd->ifmd_data.ifi_hdrlen);
170
	printf("\theader length: %d\n", ifmd->ifmd_data.ifi_hdrlen);
172
	printf("\tlink state: %u\n", ifmd->ifmd_data.ifi_link_state);
171
	printf("\tlink state: %u\n", ifmd->ifmd_data.ifi_link_state);
173
	printf("\tvhid: %u\n", ifmd->ifmd_data.ifi_vhid);
172
	printf("\tvhid: %u\n", ifmd->ifmd_data.ifi_vhid);
174
	printf("\tdatalen: %u\n", ifmd->ifmd_data.ifi_datalen);
173
	printf("\tdatalen: %u\n", ifmd->ifmd_data.ifi_datalen);
175
	printf("\tmtu: %lu\n", ifmd->ifmd_data.ifi_mtu);
174
	printf("\tmtu: %u\n", ifmd->ifmd_data.ifi_mtu);
176
	printf("\tmetric: %lu\n", ifmd->ifmd_data.ifi_metric);
175
	printf("\tmetric: %u\n", ifmd->ifmd_data.ifi_metric);
177
	printf("\tline rate: %lu bit/s\n", ifmd->ifmd_data.ifi_baudrate);
176
	printf("\tline rate: %lu bit/s\n", ifmd->ifmd_data.ifi_baudrate);
178
	printf("\tpackets received: %lu\n", ifmd->ifmd_data.ifi_ipackets);
177
	printf("\tpackets received: %lu\n", ifmd->ifmd_data.ifi_ipackets);
179
	printf("\tinput errors: %lu\n", ifmd->ifmd_data.ifi_ierrors);
178
	printf("\tinput errors: %lu\n", ifmd->ifmd_data.ifi_ierrors);
Lines 185-191 Link Here
185
	printf("\tmulticasts received: %lu\n", ifmd->ifmd_data.ifi_imcasts);
184
	printf("\tmulticasts received: %lu\n", ifmd->ifmd_data.ifi_imcasts);
186
	printf("\tmulticasts transmitted: %lu\n", ifmd->ifmd_data.ifi_omcasts);
185
	printf("\tmulticasts transmitted: %lu\n", ifmd->ifmd_data.ifi_omcasts);
187
	printf("\tinput queue drops: %lu\n", ifmd->ifmd_data.ifi_iqdrops);
186
	printf("\tinput queue drops: %lu\n", ifmd->ifmd_data.ifi_iqdrops);
188
	printf("\tpackets for unknown protocol: %lu\n", 
187
	printf("\tpackets for unknown protocol: %lu\n",
189
	       ifmd->ifmd_data.ifi_noproto);
188
	       ifmd->ifmd_data.ifi_noproto);
190
	printf("\tHW offload capabilities: 0x%lx\n",
189
	printf("\tHW offload capabilities: 0x%lx\n",
191
	    ifmd->ifmd_data.ifi_hwassist);
190
	    ifmd->ifmd_data.ifi_hwassist);
Lines 258-264 Link Here
258
	"IPv6-to-IPv4 TCP relay capturing interface",
257
	"IPv6-to-IPv4 TCP relay capturing interface",
259
	"6to4 tunnel interface"
258
	"6to4 tunnel interface"
260
};
259
};
261
#define	NIFTYPES ((sizeof if_types)/(sizeof if_types[0]))
260
#define	NIFTYPES (int)((sizeof if_types)/(sizeof if_types[0]))
262
261
263
static const char *
262
static const char *
264
iftype(int type)
263
iftype(int type)
Lines 274-280 Link Here
274
}
273
}
275
274
276
static const char *
275
static const char *
277
ifphys(int type, int phys)
276
ifphys(int phys)
278
{
277
{
279
	static char buf[256];
278
	static char buf[256];
280
279

Return to bug 250133