]> The Tcpdump Group git mirrors - libpcap/blob - pcap_lookupnet.3pcap
CI: Call print_so_deps() on rpcapd in remote enabled build
[libpcap] / pcap_lookupnet.3pcap
1 .\" Copyright (c) 1994, 1996, 1997
2 .\" The Regents of the University of California. All rights reserved.
3 .\"
4 .\" Redistribution and use in source and binary forms, with or without
5 .\" modification, are permitted provided that: (1) source code distributions
6 .\" retain the above copyright notice and this paragraph in its entirety, (2)
7 .\" distributions including binary code include the above copyright notice and
8 .\" this paragraph in its entirety in the documentation or other materials
9 .\" provided with the distribution, and (3) all advertising materials mentioning
10 .\" features or use of this software display the following acknowledgement:
11 .\" ``This product includes software developed by the University of California,
12 .\" Lawrence Berkeley Laboratory and its contributors.'' Neither the name of
13 .\" the University nor the names of its contributors may be used to endorse
14 .\" or promote products derived from this software without specific prior
15 .\" written permission.
16 .\" THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR IMPLIED
17 .\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
18 .\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
19 .\"
20 .TH PCAP_LOOKUPNET 3PCAP "31 January 2025"
21 .SH NAME
22 pcap_lookupnet \- find the IPv4 network number and netmask for a device
23 .SH SYNOPSIS
24 .nf
25 .ft B
26 #include <pcap/pcap.h>
27 .ft
28 .LP
29 .nf
30 .ft B
31 char errbuf[PCAP_ERRBUF_SIZE];
32 .ft
33 .LP
34 .ft B
35 int pcap_lookupnet(const char *device, bpf_u_int32 *netp,
36 bpf_u_int32 *maskp, char *errbuf);
37 .ft
38 .fi
39 .SH DESCRIPTION
40 .BR pcap_lookupnet ()
41 is used to determine the IPv4 network number and mask
42 associated with the network device
43 .IR device .
44 Both
45 .I netp
46 and
47 .I maskp
48 are
49 .B bpf_u_int32
50 pointers, on success both values will be set in network byte order.
51 .I errbuf
52 is a buffer large enough to hold at least
53 .B PCAP_ERRBUF_SIZE
54 chars.
55 .LP
56 This function is not available on Windows. It supports neither IPv6 nor
57 multiple IPv4 addresses per interface, which obviously is not practical in
58 modern networks. See
59 .BR pcap_findalldevs (3PCAP)
60 for a more elaborate solution to the problem.
61 .SH RETURN VALUE
62 .BR pcap_lookupnet ()
63 returns
64 .B 0
65 on success and
66 .B PCAP_ERROR
67 on failure. If
68 .B PCAP_ERROR
69 is returned,
70 .I errbuf
71 is filled in with an appropriate error message.
72 .SH SEE ALSO
73 .BR pcap (3PCAP)