Rename pcap_errtostr() to pcap_statustostr(), and have it handle
PCAP_WARNING values as well.
This commit is contained in:
parent
a590c21380
commit
c6aa29a8dc
4
FILES
4
FILES
|
@ -1,4 +1,4 @@
|
||||||
CHANGES
|
HANGES
|
||||||
ChmodBPF/ChmodBPF
|
ChmodBPF/ChmodBPF
|
||||||
ChmodBPF/StartupParameters.plist
|
ChmodBPF/StartupParameters.plist
|
||||||
CREDITS
|
CREDITS
|
||||||
|
@ -133,7 +133,6 @@ pcap_dump_file.3pcap
|
||||||
pcap_dump_flush.3pcap
|
pcap_dump_flush.3pcap
|
||||||
pcap_dump_ftell.3pcap
|
pcap_dump_ftell.3pcap
|
||||||
pcap_dump_open.3pcap
|
pcap_dump_open.3pcap
|
||||||
pcap_errtostr.3pcap
|
|
||||||
pcap_file.3pcap
|
pcap_file.3pcap
|
||||||
pcap_fileno.3pcap
|
pcap_fileno.3pcap
|
||||||
pcap_findalldevs.3pcap
|
pcap_findalldevs.3pcap
|
||||||
|
@ -164,6 +163,7 @@ pcap_setfilter.3pcap
|
||||||
pcap_setnonblock.3pcap
|
pcap_setnonblock.3pcap
|
||||||
pcap_snapshot.3pcap
|
pcap_snapshot.3pcap
|
||||||
pcap_stats.3pcap
|
pcap_stats.3pcap
|
||||||
|
pcap_statustostr.3pcap
|
||||||
pcap_strerror.3pcap
|
pcap_strerror.3pcap
|
||||||
pcap-filter.4
|
pcap-filter.4
|
||||||
pcap-linktype.4
|
pcap-linktype.4
|
||||||
|
|
|
@ -17,7 +17,7 @@
|
||||||
# WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
|
# WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
|
||||||
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
#
|
#
|
||||||
# @(#) $Header: /tcpdump/master/libpcap/Makefile.in,v 1.117 2008-04-06 20:22:13 guy Exp $ (LBL)
|
# @(#) $Header: /tcpdump/master/libpcap/Makefile.in,v 1.118 2008-04-09 21:39:21 guy Exp $ (LBL)
|
||||||
|
|
||||||
#
|
#
|
||||||
# Various configurable paths (remember to edit Makefile.in, not Makefile)
|
# Various configurable paths (remember to edit Makefile.in, not Makefile)
|
||||||
|
@ -115,7 +115,6 @@ MAN3PCAP = pcap.3pcap \
|
||||||
pcap_dump_flush.3pcap \
|
pcap_dump_flush.3pcap \
|
||||||
pcap_dump_ftell.3pcap \
|
pcap_dump_ftell.3pcap \
|
||||||
pcap_dump_open.3pcap \
|
pcap_dump_open.3pcap \
|
||||||
pcap_errtostr.3pcap \
|
|
||||||
pcap_file.3pcap \
|
pcap_file.3pcap \
|
||||||
pcap_fileno.3pcap \
|
pcap_fileno.3pcap \
|
||||||
pcap_findalldevs.3pcap \
|
pcap_findalldevs.3pcap \
|
||||||
|
@ -146,6 +145,7 @@ MAN3PCAP = pcap.3pcap \
|
||||||
pcap_setnonblock.3pcap \
|
pcap_setnonblock.3pcap \
|
||||||
pcap_snapshot.3pcap \
|
pcap_snapshot.3pcap \
|
||||||
pcap_stats.3pcap \
|
pcap_stats.3pcap \
|
||||||
|
pcap_statustostr.3pcap \
|
||||||
pcap_strerror.3pcap
|
pcap_strerror.3pcap
|
||||||
|
|
||||||
MAN4 = pcap-filter.4 \
|
MAN4 = pcap-filter.4 \
|
||||||
|
|
36
pcap.c
36
pcap.c
|
@ -33,7 +33,7 @@
|
||||||
|
|
||||||
#ifndef lint
|
#ifndef lint
|
||||||
static const char rcsid[] _U_ =
|
static const char rcsid[] _U_ =
|
||||||
"@(#) $Header: /tcpdump/master/libpcap/pcap.c,v 1.118 2008-04-09 21:26:12 guy Exp $ (LBL)";
|
"@(#) $Header: /tcpdump/master/libpcap/pcap.c,v 1.119 2008-04-09 21:39:21 guy Exp $ (LBL)";
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifdef HAVE_CONFIG_H
|
#ifdef HAVE_CONFIG_H
|
||||||
|
@ -223,19 +223,19 @@ pcap_t *
|
||||||
pcap_open_live(const char *source, int snaplen, int promisc, int to_ms, char *errbuf)
|
pcap_open_live(const char *source, int snaplen, int promisc, int to_ms, char *errbuf)
|
||||||
{
|
{
|
||||||
pcap_t *p;
|
pcap_t *p;
|
||||||
int err;
|
int status;
|
||||||
|
|
||||||
p = pcap_create(source, errbuf);
|
p = pcap_create(source, errbuf);
|
||||||
if (p == NULL)
|
if (p == NULL)
|
||||||
return (NULL);
|
return (NULL);
|
||||||
err = pcap_set_snaplen(p, snaplen);
|
status = pcap_set_snaplen(p, snaplen);
|
||||||
if (err < 0)
|
if (status < 0)
|
||||||
goto fail;
|
goto fail;
|
||||||
err = pcap_set_promisc(p, promisc);
|
status = pcap_set_promisc(p, promisc);
|
||||||
if (err < 0)
|
if (status < 0)
|
||||||
goto fail;
|
goto fail;
|
||||||
err = pcap_set_timeout(p, to_ms);
|
status = pcap_set_timeout(p, to_ms);
|
||||||
if (err < 0)
|
if (status < 0)
|
||||||
goto fail;
|
goto fail;
|
||||||
/*
|
/*
|
||||||
* Mark this as opened with pcap_open_live(), so that, for
|
* Mark this as opened with pcap_open_live(), so that, for
|
||||||
|
@ -248,17 +248,17 @@ pcap_open_live(const char *source, int snaplen, int promisc, int to_ms, char *er
|
||||||
* the adapter is in monitor mode or not.
|
* the adapter is in monitor mode or not.
|
||||||
*/
|
*/
|
||||||
p->oldstyle = 1;
|
p->oldstyle = 1;
|
||||||
err = pcap_activate(p);
|
status = pcap_activate(p);
|
||||||
if (err < 0)
|
if (status < 0)
|
||||||
goto fail;
|
goto fail;
|
||||||
return (p);
|
return (p);
|
||||||
fail:
|
fail:
|
||||||
if (err == PCAP_ERROR || err == PCAP_ERROR_NO_SUCH_DEVICE ||
|
if (status == PCAP_ERROR || status == PCAP_ERROR_NO_SUCH_DEVICE ||
|
||||||
err == PCAP_ERROR_PERM_DENIED)
|
status == PCAP_ERROR_PERM_DENIED)
|
||||||
strlcpy(errbuf, p->errbuf, PCAP_ERRBUF_SIZE);
|
strlcpy(errbuf, p->errbuf, PCAP_ERRBUF_SIZE);
|
||||||
else
|
else
|
||||||
snprintf(errbuf, PCAP_ERRBUF_SIZE, "%s: %s", source,
|
snprintf(errbuf, PCAP_ERRBUF_SIZE, "%s: %s", source,
|
||||||
pcap_errtostr(err));
|
pcap_statustostr(status));
|
||||||
pcap_close(p);
|
pcap_close(p);
|
||||||
return (NULL);
|
return (NULL);
|
||||||
}
|
}
|
||||||
|
@ -893,15 +893,21 @@ pcap_win32strerror(void)
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Generate error strings for PCAP_ERROR_ values.
|
* Generate error strings for PCAP_ERROR_ and PCAP_WARNING_ values.
|
||||||
*/
|
*/
|
||||||
const char *
|
const char *
|
||||||
pcap_errtostr(int errnum)
|
pcap_statustostr(int errnum)
|
||||||
{
|
{
|
||||||
static char ebuf[15+10+1];
|
static char ebuf[15+10+1];
|
||||||
|
|
||||||
switch (errnum) {
|
switch (errnum) {
|
||||||
|
|
||||||
|
case PCAP_WARNING:
|
||||||
|
return("Generic warning");
|
||||||
|
|
||||||
|
case PCAP_WARNING_PROMISC_NOTSUP:
|
||||||
|
return ("That device doesn't support promiscuous mode");
|
||||||
|
|
||||||
case PCAP_ERROR:
|
case PCAP_ERROR:
|
||||||
return("Generic error");
|
return("Generic error");
|
||||||
|
|
||||||
|
|
|
@ -31,7 +31,7 @@
|
||||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
* SUCH DAMAGE.
|
* SUCH DAMAGE.
|
||||||
*
|
*
|
||||||
* @(#) $Header: /tcpdump/master/libpcap/pcap/pcap.h,v 1.9 2008-04-09 21:26:12 guy Exp $ (LBL)
|
* @(#) $Header: /tcpdump/master/libpcap/pcap/pcap.h,v 1.10 2008-04-09 21:39:21 guy Exp $ (LBL)
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef lib_pcap_pcap_h
|
#ifndef lib_pcap_pcap_h
|
||||||
|
@ -279,7 +279,7 @@ int pcap_getnonblock(pcap_t *, char *);
|
||||||
int pcap_setnonblock(pcap_t *, int, char *);
|
int pcap_setnonblock(pcap_t *, int, char *);
|
||||||
int pcap_inject(pcap_t *, const void *, size_t);
|
int pcap_inject(pcap_t *, const void *, size_t);
|
||||||
int pcap_sendpacket(pcap_t *, const u_char *, int);
|
int pcap_sendpacket(pcap_t *, const u_char *, int);
|
||||||
const char *pcap_errtostr(int);
|
const char *pcap_statustostr(int);
|
||||||
const char *pcap_strerror(int);
|
const char *pcap_strerror(int);
|
||||||
char *pcap_geterr(pcap_t *);
|
char *pcap_geterr(pcap_t *);
|
||||||
void pcap_perror(pcap_t *, char *);
|
void pcap_perror(pcap_t *, char *);
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
.\" @(#) $Header: /tcpdump/master/libpcap/Attic/pcap_errtostr.3pcap,v 1.1 2008-04-06 19:55:33 guy Exp $
|
.\" @(#) $Header: /tcpdump/master/libpcap/pcap_statustostr.3pcap,v 1.1 2008-04-09 21:39:21 guy Exp $
|
||||||
.\"
|
.\"
|
||||||
.\" Copyright (c) 1994, 1996, 1997
|
.\" Copyright (c) 1994, 1996, 1997
|
||||||
.\" The Regents of the University of California. All rights reserved.
|
.\" The Regents of the University of California. All rights reserved.
|
||||||
|
@ -19,9 +19,9 @@
|
||||||
.\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
|
.\" WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTIES OF
|
||||||
.\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
.\" MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
.\"
|
.\"
|
||||||
.TH PCAP_ERRTOSTR 3PCAP "6 April 2008"
|
.TH PCAP_STATUSTOSTR 3PCAP "9 April 2008"
|
||||||
.SH NAME
|
.SH NAME
|
||||||
pcap_errtostr \- convert a PCAP_ERROR_ value to a string
|
pcap_statustostr \- convert a PCAP_ERROR_ or PCAP_WARNING_ value to a string
|
||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
.nf
|
.nf
|
||||||
.ft B
|
.ft B
|
||||||
|
@ -29,13 +29,15 @@ pcap_errtostr \- convert a PCAP_ERROR_ value to a string
|
||||||
.ft
|
.ft
|
||||||
.LP
|
.LP
|
||||||
.ft B
|
.ft B
|
||||||
const char *pcap_errtostr(int error);
|
const char *pcap_statustostr(int error);
|
||||||
.ft
|
.ft
|
||||||
.fi
|
.fi
|
||||||
.SH DESCRIPTION
|
.SH DESCRIPTION
|
||||||
.B pcap_errtostr()
|
.B pcap_statustostr()
|
||||||
converts a
|
converts a
|
||||||
.B PCAP_ERROR_
|
.B PCAP_ERROR_
|
||||||
|
or
|
||||||
|
.B PCAP_WARNING_
|
||||||
value returned by a libpcap routine to an error string.
|
value returned by a libpcap routine to an error string.
|
||||||
.SH SEE ALSO
|
.SH SEE ALSO
|
||||||
pcap(3PCAP)
|
pcap(3PCAP)
|
Reference in New Issue