Movatterモバイル変換


[0]ホーム

URL:


man7.org > Linux >man-pages

Linux/UNIX system programming training


pcap_setnonblock(3pcap) — Linux manual page

NAME |SYNOPSIS |DESCRIPTION |RETURN VALUE |SEE ALSO |COLOPHON

PCAP_SETNONBLOCK(3PCAP)PCAP_SETNONBLOCK(3PCAP)

NAME        top

       pcap_setnonblock, pcap_getnonblock - set or get the state of non-       blocking mode on a capture device

SYNOPSIS        top

#include <pcap/pcap.h>char errbuf[PCAP_ERRBUF_SIZE];int pcap_setnonblock(pcap_t *p, int nonblock, char *errbuf);int pcap_getnonblock(pcap_t *p, char *errbuf);

DESCRIPTION        top

pcap_setnonblock() puts a capture handle into ``non-blocking''       mode, or takes it out of ``non-blocking'' mode, depending on       whether thenonblock argument is non-zero or zero.  It has no       effect on ``savefiles''.errbuf is a buffer large enough to hold       at leastPCAP_ERRBUF_SIZEchars.       In ``non-blocking'' mode, an attempt to read from the capture       descriptor withpcap_dispatch(3PCAP) andpcap_next_ex(3PCAP) will,       if no packets are currently available to be read, return0       immediately rather than blocking waiting for packets to arrive.pcap_loop(3PCAP) will loop forever, consuming CPU time when no       packets are currently available;pcap_dispatch() should be used       instead.pcap_next(3PCAP) will returnNULLif there are no       packets currently available to read; this is indistinguishable       from an error, sopcap_next_ex() should be used instead.       When first activated withpcap_activate(3PCAP) or opened withpcap_open_live(3PCAP), a capture handle is not in ``non-blocking       mode''; a call topcap_setnonblock() is required in order to put       it into ``non-blocking'' mode.

RETURN VALUE        top

pcap_setnonblock()return 0 on success,PCAP_ERROR_NOT_ACTIVATED       if called on a capture handle that has been created but not       activated, andPCAP_ERRORfor other errors.pcap_getnonblock()       returns the current ``non-blocking'' state of the capture       descriptor on success; it always returns0on ``savefiles''.  It       returnsPCAP_ERROR_NOT_ACTIVATEDif called on a capture handle       that has been created but not activated, andPCAP_ERRORfor other       errors.  IfPCAP_ERRORis returned,errbuf is filled in with an       appropriate error message.

SEE ALSO        top

pcap(3PCAP),pcap_next_ex(3PCAP),pcap_geterr(3PCAP)

COLOPHON        top

       This page is part of thelibpcap (packet capture library) project.       Information about the project can be found at        ⟨http://www.tcpdump.org/⟩.  If you have a bug report for this       manual page, see ⟨http://www.tcpdump.org/#patches⟩.  This page was       obtained from the project's upstream Git repository       ⟨https://github.com/the-tcpdump-group/libpcap.git⟩ on 2025-08-11.       (At that time, the date of the most recent commit that was found       in the repository was 2025-08-10.)  If you discover any rendering       problems in this HTML version of the page, or you believe there is       a better or more up-to-date source for the page, or you have       corrections or improvements to the information in this COLOPHON       (which isnot part of the original manual page), send a mail to       man-pages@man7.org                             30 November 2023PCAP_SETNONBLOCK(3PCAP)


HTML rendering created 2025-09-06 byMichael Kerrisk, author ofThe Linux Programming Interface.

For details of in-depthLinux/UNIX system programming training courses that I teach, lookhere.

Hosting byjambit GmbH.

Cover of TLPI


[8]ページ先頭

©2009-2025 Movatter.jp