Merge commit 'cb41b9c565d4eec9e1f06e24d429696f59f2f07d'
[unleashed.git] / contrib / libpcap / pcap_list_datalinks.3pcap
blob228d760cc8395a583b0bbf6b4a1c1c9cbb399a27
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_LIST_DATALINKS 3PCAP "8 March 2015"
21 .SH NAME
22 pcap_list_datalinks, pcap_free_datalinks \- get a list of link-layer header
23 types supported by a capture device, and free that list
24 .SH SYNOPSIS
25 .nf
26 .ft B
27 #include <pcap/pcap.h>
28 .ft
29 .LP
30 .ft B
31 int pcap_list_datalinks(pcap_t *p, int **dlt_buf);
32 void pcap_free_datalinks(int *dlt_list);
33 .ft
34 .fi
35 .SH DESCRIPTION
36 .B pcap_list_datalinks()
37 is used to get a list of the supported link-layer header types of the
38 interface associated with the pcap descriptor.
39 .B pcap_list_datalinks()
40 allocates an array to hold the list and sets
41 .IR *dlt_buf
42 to point to that array.
43 .LP
44 The caller is responsible for freeing the array with
45 .BR pcap_free_datalinks() ,
46 which frees the list of link-layer header types pointed to by
47 .IR dlt_list .
48 .LP
49 It must not be called on a pcap descriptor created by
50 .B pcap_create()
51 that has not yet been activated by
52 .BR pcap_activate() .
53 .SH RETURN VALUE
54 .B pcap_list_datalinks()
55 returns the number of link-layer header types in the array on success,
56 .B PCAP_ERROR_NOT_ACTIVATED
57 if called on a capture handle that has been created but not activated,
58 and
59 .B PCAP_ERROR
60 (\-1) on other errors.
62 .B PCAP_ERROR
63 is returned,
64 .B pcap_geterr()
66 .B pcap_perror()
67 may be called with
68 .I p
69 as an argument to fetch or display the error text.
70 .SH SEE ALSO
71 pcap(3PCAP), pcap_geterr(3PCAP),
72 pcap_datalink_val_to_name(3PCAP),
73 pcap-linktype(5)