2 * Copyright 2011, 2014 André Hentschel
3 * Copyright 2021 Hans Leidekker for CodeWeavers
5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Lesser General Public
7 * License as published by the Free Software Foundation; either
8 * version 2.1 of the License, or (at your option) any later version.
10 * This library is distributed in the hope that it will be useful,
11 * but WITHOUT ANY WARRANTY; without even the implied warranty of
12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 * Lesser General Public License for more details.
15 * You should have received a copy of the GNU Lesser General Public
16 * License along with this library; if not, write to the Free Software
17 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
22 unsigned short sa_family
;
27 struct pcap_address
*next
;
28 struct sockaddr_hdr
*addr
;
29 struct sockaddr_hdr
*netmask
;
30 struct sockaddr_hdr
*broadaddr
;
31 struct sockaddr_hdr
*dstaddr
;
36 struct pcap_interface
*next
;
39 struct pcap_address
*addresses
;
43 struct pcap_pkthdr_win32
57 struct pcap_pkthdr_win32 hdr
;
60 struct handler_callback
62 void (CALLBACK
*callback
)( unsigned char *, const struct pcap_pkthdr_win32
*, const unsigned char * );
68 int (CDECL
*activate
)( struct pcap
* );
69 void (CDECL
*breakloop
)( struct pcap
* );
70 int (CDECL
*can_set_rfmon
)( struct pcap
* );
71 void (CDECL
*close
)( struct pcap
* );
72 int (CDECL
*compile
)( struct pcap
*, void *, const char *, int, unsigned int );
73 struct pcap
* (CDECL
*create
)( const char *, char * );
74 int (CDECL
*datalink
)( struct pcap
* );
75 int (CDECL
*datalink_name_to_val
)( const char * );
76 const char * (CDECL
*datalink_val_to_description
)( int );
77 const char * (CDECL
*datalink_val_to_name
)( int );
78 int (CDECL
*dispatch
)( struct pcap
*, int,
79 void (CALLBACK
*)(unsigned char *, const struct pcap_pkthdr_win32
*, const unsigned char *),
81 void (CDECL
*dump
)( unsigned char *, const struct pcap_pkthdr_win32
*, const unsigned char * );
82 void * (CDECL
*dump_open
)( struct pcap
*, const char * );
83 int (CDECL
*findalldevs
)( struct pcap_interface
**, char * );
84 void (CDECL
*free_datalinks
)( int * );
85 void (CDECL
*free_tstamp_types
)( int * );
86 void (CDECL
*freealldevs
)( struct pcap_interface
* );
87 void (CDECL
*freecode
)( void * );
88 int (CDECL
*get_tstamp_precision
)( struct pcap
* );
89 char * (CDECL
*geterr
)( struct pcap
* );
90 int (CDECL
*getnonblock
)( struct pcap
*, char * );
91 const char * (CDECL
*lib_version
)( void );
92 int (CDECL
*list_datalinks
)( struct pcap
*, int ** );
93 int (CDECL
*list_tstamp_types
)( struct pcap
*, int ** );
94 int (CDECL
*lookupnet
)( const char *, unsigned int *, unsigned int *, char * );
95 int (CDECL
*loop
)( struct pcap
*, int,
96 void (CALLBACK
*)(unsigned char *, const struct pcap_pkthdr_win32
*, const unsigned char *),
98 int (CDECL
*major_version
)( struct pcap
* );
99 int (CDECL
*minor_version
)( struct pcap
* );
100 const unsigned char * (CDECL
*next
)( struct pcap
*, struct pcap_pkthdr_win32
* );
101 int (CDECL
*next_ex
)( struct pcap
*, struct pcap_pkthdr_win32
**, const unsigned char ** );
102 struct pcap
* (CDECL
*open_live
)( const char *, int, int, int, char * );
103 int (CDECL
*sendpacket
)( struct pcap
*, const unsigned char *, int );
104 int (CDECL
*set_buffer_size
)( struct pcap
*, int );
105 int (CDECL
*set_datalink
)( struct pcap
*, int );
106 int (CDECL
*set_promisc
)( struct pcap
*, int );
107 int (CDECL
*set_rfmon
)( struct pcap
*, int );
108 int (CDECL
*set_snaplen
)( struct pcap
*, int );
109 int (CDECL
*set_timeout
)( struct pcap
*, int );
110 int (CDECL
*set_tstamp_precision
)( struct pcap
*, int );
111 int (CDECL
*set_tstamp_type
)( struct pcap
*, int );
112 int (CDECL
*setfilter
)( struct pcap
*, void * );
113 int (CDECL
*setnonblock
)( struct pcap
*, int, char * );
114 int (CDECL
*snapshot
)( struct pcap
* );
115 int (CDECL
*stats
)( struct pcap
*, void * );
116 const char * (CDECL
*statustostr
)( int );
117 int (CDECL
*tstamp_type_name_to_val
)( const char * );
118 const char * (CDECL
*tstamp_type_val_to_description
)( int );
119 const char * (CDECL
*tstamp_type_val_to_name
)( int );
122 struct pcap_callbacks
124 void (CDECL
*handler
)( struct handler_callback
*, const struct pcap_pkthdr_win32
*, const unsigned char * );