summaryrefslogtreecommitdiffstats
path: root/po/es/man2/poll.2.po
diff options
context:
space:
mode:
authorDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
committerDaniel Baumann <daniel.baumann@progress-linux.org>2024-04-15 19:43:11 +0000
commitfc22b3d6507c6745911b9dfcc68f1e665ae13dbc (patch)
treece1e3bce06471410239a6f41282e328770aa404a /po/es/man2/poll.2.po
parentInitial commit. (diff)
downloadmanpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.tar.xz
manpages-l10n-fc22b3d6507c6745911b9dfcc68f1e665ae13dbc.zip
Adding upstream version 4.22.0.upstream/4.22.0
Signed-off-by: Daniel Baumann <daniel.baumann@progress-linux.org>
Diffstat (limited to 'po/es/man2/poll.2.po')
-rw-r--r--po/es/man2/poll.2.po1419
1 files changed, 1419 insertions, 0 deletions
diff --git a/po/es/man2/poll.2.po b/po/es/man2/poll.2.po
new file mode 100644
index 00000000..13fe4465
--- /dev/null
+++ b/po/es/man2/poll.2.po
@@ -0,0 +1,1419 @@
+# Spanish translation of manpages
+# This file is distributed under the same license as the manpages-l10n package.
+# Copyright © of this file:
+# Juan Piernas <piernas@ditec.um.es>, 1998.
+msgid ""
+msgstr ""
+"Project-Id-Version: manpages-l10n\n"
+"POT-Creation-Date: 2024-03-01 17:04+0100\n"
+"PO-Revision-Date: 2021-01-30 16:15+0100\n"
+"Last-Translator: Juan Piernas <piernas@ditec.um.es>\n"
+"Language-Team: Spanish <debian-l10n-spanish@lists.debian.org>\n"
+"Language: es\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Generator: Lokalize 20.04.1\n"
+
+#. type: TH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, fuzzy, no-wrap
+#| msgid "ppoll()"
+msgid "poll"
+msgstr "ppoll()"
+
+#. type: TH
+#: archlinux fedora-40 fedora-rawhide mageia-cauldron
+#, no-wrap
+msgid "2023-10-31"
+msgstr "31 Octubre 2023"
+
+#. type: TH
+#: archlinux fedora-40 fedora-rawhide mageia-cauldron
+#, no-wrap
+msgid "Linux man-pages 6.06"
+msgstr "Páginas de manual de Linux 6.06"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "NAME"
+msgstr "NOMBRE"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "poll, ppoll - wait for some event on a file descriptor"
+msgstr "poll, ppoll - espera un evento en un descriptor de fichero"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "LIBRARY"
+msgstr "BIBLIOTECA"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Standard C library (I<libc>, I<-lc>)"
+msgstr "Biblioteca Estándar C (I<libc>, I<-lc>)"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "SYNOPSIS"
+msgstr "SINOPSIS"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<#include E<lt>poll.hE<gt>>\n"
+msgstr "B<#include E<lt>poll.hE<gt>>\n"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<int poll(struct pollfd *>I<fds>B<, nfds_t >I<nfds>B<, int >I<timeout>B<);>\n"
+msgstr "B<int poll(struct pollfd *>I<fds>B<, nfds_t >I<nfds>B<, int >I<timeout>B<);>\n"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, fuzzy, no-wrap
+#| msgid ""
+#| "B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
+#| "B<#include E<lt>fcntl.hE<gt>>\n"
+msgid ""
+"B<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
+"B<#include E<lt>poll.hE<gt>>\n"
+msgstr ""
+"B<#define _GNU_SOURCE> /* Vea feature_test_macros(7) */\n"
+"B<#include E<lt>fcntl.hE<gt>>\n"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, fuzzy, no-wrap
+#| msgid ""
+#| "B<int ppoll(struct pollfd *>I<fds>B<, nfds_t >I<nfds>B<,>\n"
+#| "B< const struct timespec *>I<tmo_p>B<, const sigset_t *>I<sigmask>B<);>\n"
+msgid ""
+"B<int ppoll(struct pollfd *>I<fds>B<, nfds_t >I<nfds>B<,>\n"
+"B< const struct timespec *_Nullable >I<tmo_p>B<,>\n"
+"B< const sigset_t *_Nullable >I<sigmask>B<);>\n"
+msgstr ""
+"B<int ppoll(struct pollfd *>I<fds>B<, nfds_t >I<nfds>B<,>\n"
+"B< const struct timespec *>I<tmo_p>B<, const sigset_t *>I<sigmask>B<);>\n"
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "DESCRIPTION"
+msgstr "DESCRIPCIÓN"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"B<poll>() performs a similar task to B<select>(2): it waits for one of a "
+"set of file descriptors to become ready to perform I/O. The Linux-specific "
+"B<epoll>(7) API performs a similar task, but offers features beyond those "
+"found in B<poll>()."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The set of file descriptors to be monitored is specified in the I<fds> "
+"argument, which is an array of structures of the following form:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"struct pollfd {\n"
+" int fd; /* file descriptor */\n"
+" short events; /* requested events */\n"
+" short revents; /* returned events */\n"
+"};\n"
+msgstr ""
+"struct pollfd {\n"
+" int fd; /* Descriptor de fichero */\n"
+" short events; /* Eventos solicitados */\n"
+" short revents; /* Eventos ocurridos */\n"
+"};\n"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The caller should specify the number of items in the I<fds> array in I<nfds>."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The field I<fd> contains a file descriptor for an open file. If this field "
+"is negative, then the corresponding I<events> field is ignored and the "
+"I<revents> field returns zero. (This provides an easy way of ignoring a "
+"file descriptor for a single B<poll>() call: simply set the I<fd> field to "
+"its bitwise complement.)"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The field I<events> is an input parameter, a bit mask specifying the events "
+"the application is interested in for the file descriptor I<fd>. This field "
+"may be specified as zero, in which case the only events that can be returned "
+"in I<revents> are B<POLLHUP>, B<POLLERR>, and B<POLLNVAL> (see below)."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The field I<revents> is an output parameter, filled by the kernel with the "
+"events that actually occurred. The bits returned in I<revents> can include "
+"any of those specified in I<events>, or one of the values B<POLLERR>, "
+"B<POLLHUP>, or B<POLLNVAL>. (These three bits are meaningless in the "
+"I<events> field, and will be set in the I<revents> field whenever the "
+"corresponding condition is true.)"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"If none of the events requested (and no error) has occurred for any of the "
+"file descriptors, then B<poll>() blocks until one of the events occurs."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The I<timeout> argument specifies the number of milliseconds that B<poll>() "
+"should block waiting for a file descriptor to become ready. The call will "
+"block until either:"
+msgstr ""
+
+#. type: IP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "\\[bu]"
+msgstr "\\[bu]"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "a file descriptor becomes ready;"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "the call is interrupted by a signal handler; or"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "the timeout expires."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+msgid ""
+"Being \"ready\" means that the requested operation will not block; thus, "
+"B<poll>()ing regular files, block devices, and other files with no "
+"reasonable polling semantic I<always> returns instantly as ready to read and "
+"write."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Note that the I<timeout> interval will be rounded up to the system clock "
+"granularity, and kernel scheduling delays mean that the blocking interval "
+"may overrun by a small amount. Specifying a negative value in I<timeout> "
+"means an infinite timeout. Specifying a I<timeout> of zero causes "
+"B<poll>() to return immediately, even if no file descriptors are ready."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The bits that may be set/returned in I<events> and I<revents> are defined in "
+"I<E<lt>poll.hE<gt>>:"
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<POLLIN>"
+msgstr "B<POLLIN>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "There is data to read."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<POLLPRI>"
+msgstr "B<POLLPRI>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"There is some exceptional condition on the file descriptor. Possibilities "
+"include:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "There is out-of-band data on a TCP socket (see B<tcp>(7))."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"A pseudoterminal master in packet mode has seen a state change on the slave "
+"(see B<ioctl_tty>(2))."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "A I<cgroup.events> file has been modified (see B<cgroups>(7))."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<POLLOUT>"
+msgstr "B<POLLOUT>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Writing is now possible, though a write larger than the available space in a "
+"socket or pipe will still block (unless B<O_NONBLOCK> is set)."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<POLLRDHUP> (since Linux 2.6.17)"
+msgstr "B<POLLRDHUP> (desde Linux 2.6.17)"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Stream socket peer closed connection, or shut down writing half of "
+"connection. The B<_GNU_SOURCE> feature test macro must be defined (before "
+"including I<any> header files) in order to obtain this definition."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<POLLERR>"
+msgstr "B<POLLERR>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Error condition (only returned in I<revents>; ignored in I<events>). This "
+"bit is also set for a file descriptor referring to the write end of a pipe "
+"when the read end has been closed."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<POLLHUP>"
+msgstr "B<POLLHUP>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Hang up (only returned in I<revents>; ignored in I<events>). Note that when "
+"reading from a channel such as a pipe or a stream socket, this event merely "
+"indicates that the peer closed its end of the channel. Subsequent reads "
+"from the channel will return 0 (end of file) only after all outstanding "
+"data in the channel has been consumed."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<POLLNVAL>"
+msgstr "B<POLLNVAL>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Invalid request: I<fd> not open (only returned in I<revents>; ignored in "
+"I<events>)."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"When compiling with B<_XOPEN_SOURCE> defined, one also has the following, "
+"which convey no further information beyond the bits listed above:"
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<POLLRDNORM>"
+msgstr "B<POLLRDNORM>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Equivalent to B<POLLIN>."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<POLLRDBAND>"
+msgstr "B<POLLRDBAND>"
+
+#. POLLRDBAND is used in the DECnet protocol.
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Priority band data can be read (generally unused on Linux)."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<POLLWRNORM>"
+msgstr "B<POLLWRNORM>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Equivalent to B<POLLOUT>."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<POLLWRBAND>"
+msgstr "B<POLLWRBAND>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Priority data may be written."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Linux also knows about, but does not use B<POLLMSG>."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "ppoll()"
+msgstr "ppoll()"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The relationship between B<poll>() and B<ppoll>() is analogous to the "
+"relationship between B<select>(2) and B<pselect>(2): like B<pselect>(2), "
+"B<ppoll>() allows an application to safely wait until either a file "
+"descriptor becomes ready or until a signal is caught."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Other than the difference in the precision of the I<timeout> argument, the "
+"following B<ppoll>() call:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "ready = ppoll(&fds, nfds, tmo_p, &sigmask);\n"
+msgstr "ready = ppoll(&fds, nfds, tmo_p, &sigmask);\n"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "is nearly equivalent to I<atomically> executing the following calls:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, fuzzy, no-wrap
+#| msgid ""
+#| "timeout = (tmo_p == NULL) ? -1 :\n"
+#| " (tmo_p-E<gt>tv_sec * 1000 + tmo_p-E<gt>tv_nsec / 1000000);\n"
+#| "pthread_sigmask(SIG_SETMASK, &sigmask, &origmask);\n"
+#| "ready = poll(&fds, nfds, timeout);\n"
+#| "pthread_sigmask(SIG_SETMASK, &origmask, NULL);\n"
+msgid ""
+"sigset_t origmask;\n"
+"int timeout;\n"
+"\\&\n"
+"timeout = (tmo_p == NULL) ? -1 :\n"
+" (tmo_p-E<gt>tv_sec * 1000 + tmo_p-E<gt>tv_nsec / 1000000);\n"
+"pthread_sigmask(SIG_SETMASK, &sigmask, &origmask);\n"
+"ready = poll(&fds, nfds, timeout);\n"
+"pthread_sigmask(SIG_SETMASK, &origmask, NULL);\n"
+msgstr ""
+"timeout = (tmo_p == NULL) ? -1 :\n"
+" (tmo_p-E<gt>tv_sec * 1000 + tmo_p-E<gt>tv_nsec / 1000000);\n"
+"pthread_sigmask(SIG_SETMASK, &sigmask, &origmask);\n"
+"ready = poll(&fds, nfds, timeout);\n"
+"pthread_sigmask(SIG_SETMASK, &origmask, NULL);\n"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The above code segment is described as I<nearly> equivalent because whereas "
+"a negative I<timeout> value for B<poll>() is interpreted as an infinite "
+"timeout, a negative value expressed in I<*tmo_p> results in an error from "
+"B<ppoll>()."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"See the description of B<pselect>(2) for an explanation of why B<ppoll>() "
+"is necessary."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"If the I<sigmask> argument is specified as NULL, then no signal mask "
+"manipulation is performed (and thus B<ppoll>() differs from B<poll>() only "
+"in the precision of the I<timeout> argument)."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The I<tmo_p> argument specifies an upper limit on the amount of time that "
+"B<ppoll>() will block. This argument is a pointer to a B<timespec>(3) "
+"structure."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"If I<tmo_p> is specified as NULL, then B<ppoll>() can block indefinitely."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "RETURN VALUE"
+msgstr "VALOR DEVUELTO"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"On success, B<poll>() returns a nonnegative value which is the number of "
+"elements in the I<pollfds> whose I<revents> fields have been set to a "
+"nonzero value (indicating an event or an error). A return value of zero "
+"indicates that the system call timed out before any file descriptors became "
+"ready."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, fuzzy
+#| msgid ""
+#| "On success, zero is returned. On error, -1 is returned, and I<errno> is "
+#| "set appropriately."
+msgid "On error, -1 is returned, and I<errno> is set to indicate the error."
+msgstr ""
+"En caso de éxito se devuelve cero. En caso de error se devuelve -1, y "
+"I<errno> se configura adecuadamente."
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "ERRORS"
+msgstr "ERRORES"
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<EFAULT>"
+msgstr "B<EFAULT>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, fuzzy
+#| msgid ""
+#| "The array given as argument was not contained in the calling program's "
+#| "address space."
+msgid ""
+"I<fds> points outside the process's accessible address space. The array "
+"given as argument was not contained in the calling program's address space."
+msgstr ""
+"El vector pasado como argumento no está ubicado en el espacio de direcciones "
+"del programa invocador."
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<EINTR>"
+msgstr "B<EINTR>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, fuzzy
+#| msgid "A signal occurred before any requested event."
+msgid "A signal occurred before any requested event; see B<signal>(7)."
+msgstr "Se ha producido una señal antes de cualquier evento."
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<EINVAL>"
+msgstr "B<EINVAL>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "The I<nfds> value exceeds the B<RLIMIT_NOFILE> value."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"(B<ppoll>()) The timeout value expressed in I<*tmo_p> is invalid (negative)."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<ENOMEM>"
+msgstr "B<ENOMEM>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Unable to allocate memory for kernel data structures."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "VERSIONS"
+msgstr "VERSIONES"
+
+#. Darwin, according to a report by Jeremy Sequoia, relayed by Josh Triplett
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"On some other UNIX systems, B<poll>() can fail with the error B<EAGAIN> if "
+"the system fails to allocate kernel-internal resources, rather than "
+"B<ENOMEM> as Linux does. POSIX permits this behavior. Portable programs "
+"may wish to check for B<EAGAIN> and loop, just as with B<EINTR>."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Some implementations define the nonstandard constant B<INFTIM> with the "
+"value -1 for use as a I<timeout> for B<poll>(). This constant is not "
+"provided in glibc."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "C library/kernel differences"
+msgstr "Diferencias núcleo / biblioteca C"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The Linux B<ppoll>() system call modifies its I<tmo_p> argument. However, "
+"the glibc wrapper function hides this behavior by using a local variable for "
+"the timeout argument that is passed to the system call. Thus, the glibc "
+"B<ppoll>() function does not modify its I<tmo_p> argument."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The raw B<ppoll>() system call has a fifth argument, I<size_t sigsetsize>, "
+"which specifies the size in bytes of the I<sigmask> argument. The glibc "
+"B<ppoll>() wrapper function specifies this argument as a fixed value (equal "
+"to I<sizeof(kernel_sigset_t)>). See B<sigprocmask>(2) for a discussion on "
+"the differences between the kernel and the libc notion of the sigset."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "STANDARDS"
+msgstr "ESTÁNDARES"
+
+#. type: TP
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+#, fuzzy, no-wrap
+#| msgid "B<poll>(2)"
+msgid "B<poll>()"
+msgstr "B<poll>(2)"
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid "POSIX.1-2008."
+msgstr "POSIX.1-2008."
+
+#. type: TP
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+#, fuzzy, no-wrap
+#| msgid "B<poll>(2)"
+msgid "B<ppoll>()"
+msgstr "B<poll>(2)"
+
+#. FIXME .
+#. ppoll() is proposed for inclusion in POSIX:
+#. https://www.austingroupbugs.net/view.php?id=1263
+#. NetBSD 3.0 has a pollts() which is like Linux ppoll().
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Linux."
+msgstr "Linux."
+
+#. type: SH
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "HISTORY"
+msgstr "HISTORIAL"
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+#, fuzzy
+#| msgid "POSIX.1-2001."
+msgid "POSIX.1-2001. Linux 2.1.23."
+msgstr "POSIX.1-2001."
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+#, fuzzy
+#| msgid ""
+#| "The poll() systemcall was introduced in Linux 2.1.23. The poll() library "
+#| "call was introduced in libc 5.4.28 (and provides emulation using select "
+#| "if your kernel does not have a poll syscall)."
+msgid ""
+"On older kernels that lack this system call, the glibc B<poll>() wrapper "
+"function provides emulation using B<select>(2)."
+msgstr ""
+"La llamada al sistema B<poll()> se introdujo en la versión 2.1.23 de Linux. "
+"La función de biblioteca B<poll()> se introdujo en la versión 5.4.28 de libc "
+"(y emula la llamada al sistema B<poll> mediante B<select> si su núcleo no "
+"tiene dicha llamada al sistema)."
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Linux 2.6.16, glibc 2.4."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "NOTES"
+msgstr "NOTAS"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The operation of B<poll>() and B<ppoll>() is not affected by the "
+"B<O_NONBLOCK> flag."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"For a discussion of what may happen if a file descriptor being monitored by "
+"B<poll>() is closed in another thread, see B<select>(2)."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "BUGS"
+msgstr "ERRORES"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"See the discussion of spurious readiness notifications under the BUGS "
+"section of B<select>(2)."
+msgstr ""
+
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "EXAMPLES"
+msgstr "EJEMPLOS"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The program below opens each of the files named in its command-line "
+"arguments and monitors the resulting file descriptors for readiness to read "
+"(B<POLLIN>). The program loops, repeatedly using B<poll>() to monitor the "
+"file descriptors, printing the number of ready file descriptors on return. "
+"For each ready file descriptor, the program:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "displays the returned I<revents> field in a human-readable form;"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"if the file descriptor is readable, reads some data from it, and displays "
+"that data on standard output; and"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"if the file descriptor was not readable, but some other event occurred "
+"(presumably B<POLLHUP>), closes the file descriptor."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Suppose we run the program in one terminal, asking it to open a FIFO:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"$ B<mkfifo myfifo>\n"
+"$ B<./poll_input myfifo>\n"
+msgstr ""
+"$ B<mkfifo myfifo>\n"
+"$ B<./poll_input myfifo>\n"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"In a second terminal window, we then open the FIFO for writing, write some "
+"data to it, and close the FIFO:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "$ B<echo aaaaabbbbbccccc E<gt> myfifo>\n"
+msgstr "$ B<echo aaaaabbbbbccccc E<gt> myfifo>\n"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "In the terminal where we are running the program, we would then see:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"Opened \"myfifo\" on fd 3\n"
+"About to poll()\n"
+"Ready: 1\n"
+" fd=3; events: POLLIN POLLHUP\n"
+" read 10 bytes: aaaaabbbbb\n"
+"About to poll()\n"
+"Ready: 1\n"
+" fd=3; events: POLLIN POLLHUP\n"
+" read 6 bytes: ccccc\n"
+"\\&\n"
+"About to poll()\n"
+"Ready: 1\n"
+" fd=3; events: POLLHUP\n"
+" closing fd 3\n"
+"All file descriptors closed; bye\n"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "In the above output, we see that B<poll>() returned three times:"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"On the first return, the bits returned in the I<revents> field were "
+"B<POLLIN>, indicating that the file descriptor is readable, and B<POLLHUP>, "
+"indicating that the other end of the FIFO has been closed. The program then "
+"consumed some of the available input."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The second return from B<poll>() also indicated B<POLLIN> and B<POLLHUP>; "
+"the program then consumed the last of the available input."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"On the final return, B<poll>() indicated only B<POLLHUP> on the FIFO, at "
+"which point the file descriptor was closed and the program terminated."
+msgstr ""
+
+#. type: SS
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "Program source"
+msgstr "Código fuente"
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+#, no-wrap
+msgid ""
+"/* poll_input.c\n"
+"\\&\n"
+" Licensed under GNU General Public License v2 or later.\n"
+"*/\n"
+"#include E<lt>fcntl.hE<gt>\n"
+"#include E<lt>poll.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>unistd.hE<gt>\n"
+"\\&\n"
+"#define errExit(msg) do { perror(msg); exit(EXIT_FAILURE); \\e\n"
+" } while (0)\n"
+"\\&\n"
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+" int ready;\n"
+" char buf[10];\n"
+" nfds_t num_open_fds, nfds;\n"
+" ssize_t s;\n"
+" struct pollfd *pfds;\n"
+"\\&\n"
+" if (argc E<lt> 2) {\n"
+" fprintf(stderr, \"Usage: %s file...\\en\", argv[0]);\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+"\\&\n"
+" num_open_fds = nfds = argc - 1;\n"
+" pfds = calloc(nfds, sizeof(struct pollfd));\n"
+" if (pfds == NULL)\n"
+" errExit(\"malloc\");\n"
+"\\&\n"
+" /* Open each file on command line, and add it to \\[aq]pfds\\[aq] array. */\n"
+"\\&\n"
+" for (nfds_t j = 0; j E<lt> nfds; j++) {\n"
+" pfds[j].fd = open(argv[j + 1], O_RDONLY);\n"
+" if (pfds[j].fd == -1)\n"
+" errExit(\"open\");\n"
+"\\&\n"
+" printf(\"Opened \\e\"%s\\e\" on fd %d\\en\", argv[j + 1], pfds[j].fd);\n"
+"\\&\n"
+" pfds[j].events = POLLIN;\n"
+" }\n"
+"\\&\n"
+" /* Keep calling poll() as long as at least one file descriptor is\n"
+" open. */\n"
+"\\&\n"
+" while (num_open_fds E<gt> 0) {\n"
+" printf(\"About to poll()\\en\");\n"
+" ready = poll(pfds, nfds, -1);\n"
+" if (ready == -1)\n"
+" errExit(\"poll\");\n"
+"\\&\n"
+" printf(\"Ready: %d\\en\", ready);\n"
+"\\&\n"
+" /* Deal with array returned by poll(). */\n"
+"\\&\n"
+" for (nfds_t j = 0; j E<lt> nfds; j++) {\n"
+" if (pfds[j].revents != 0) {\n"
+" printf(\" fd=%d; events: %s%s%s\\en\", pfds[j].fd,\n"
+" (pfds[j].revents & POLLIN) ? \"POLLIN \" : \"\",\n"
+" (pfds[j].revents & POLLHUP) ? \"POLLHUP \" : \"\",\n"
+" (pfds[j].revents & POLLERR) ? \"POLLERR \" : \"\");\n"
+"\\&\n"
+" if (pfds[j].revents & POLLIN) {\n"
+" s = read(pfds[j].fd, buf, sizeof(buf));\n"
+" if (s == -1)\n"
+" errExit(\"read\");\n"
+" printf(\" read %zd bytes: %.*s\\en\",\n"
+" s, (int) s, buf);\n"
+" } else { /* POLLERR | POLLHUP */\n"
+" printf(\" closing fd %d\\en\", pfds[j].fd);\n"
+" if (close(pfds[j].fd) == -1)\n"
+" errExit(\"close\");\n"
+" num_open_fds--;\n"
+" }\n"
+" }\n"
+" }\n"
+" }\n"
+"\\&\n"
+" printf(\"All file descriptors closed; bye\\en\");\n"
+" exit(EXIT_SUCCESS);\n"
+"}\n"
+msgstr ""
+
+#. SRC END
+#. type: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "SEE ALSO"
+msgstr "VÉASE TAMBIÉN"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, fuzzy
+#| msgid ""
+#| "B<restart_syscall>(2), B<select>(2), B<select_tut>(2), B<epoll>(7), "
+#| "B<time>(7)"
+msgid ""
+"B<restart_syscall>(2), B<select>(2), B<select_tut>(2), B<timespec>(3), "
+"B<epoll>(7), B<time>(7)"
+msgstr ""
+"B<restart_syscall>(2), B<select>(2), B<select_tut>(2), B<epoll>(7), "
+"B<time>(7)"
+
+#. type: TH
+#: debian-bookworm
+#, no-wrap
+msgid "2023-02-05"
+msgstr "5 Febrero 2023"
+
+#. type: TH
+#: debian-bookworm
+#, no-wrap
+msgid "Linux man-pages 6.03"
+msgstr "Páginas de manual de Linux 6.03"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"sigset_t origmask;\n"
+"int timeout;\n"
+msgstr ""
+"sigset_t origmask;\n"
+"int timeout;\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"timeout = (tmo_p == NULL) ? -1 :\n"
+" (tmo_p-E<gt>tv_sec * 1000 + tmo_p-E<gt>tv_nsec / 1000000);\n"
+"pthread_sigmask(SIG_SETMASK, &sigmask, &origmask);\n"
+"ready = poll(&fds, nfds, timeout);\n"
+"pthread_sigmask(SIG_SETMASK, &origmask, NULL);\n"
+msgstr ""
+"timeout = (tmo_p == NULL) ? -1 :\n"
+" (tmo_p-E<gt>tv_sec * 1000 + tmo_p-E<gt>tv_nsec / 1000000);\n"
+"pthread_sigmask(SIG_SETMASK, &sigmask, &origmask);\n"
+"ready = poll(&fds, nfds, timeout);\n"
+"pthread_sigmask(SIG_SETMASK, &origmask, NULL);\n"
+
+#. type: Plain text
+#: debian-bookworm
+#, fuzzy
+#| msgid ""
+#| "The poll() systemcall was introduced in Linux 2.1.23. The poll() library "
+#| "call was introduced in libc 5.4.28 (and provides emulation using select "
+#| "if your kernel does not have a poll syscall)."
+msgid ""
+"The B<poll>() system call was introduced in Linux 2.1.23. On older kernels "
+"that lack this system call, the glibc B<poll>() wrapper function provides "
+"emulation using B<select>(2)."
+msgstr ""
+"La llamada al sistema B<poll()> se introdujo en la versión 2.1.23 de Linux. "
+"La función de biblioteca B<poll()> se introdujo en la versión 5.4.28 de libc "
+"(y emula la llamada al sistema B<poll> mediante B<select> si su núcleo no "
+"tiene dicha llamada al sistema)."
+
+#. type: Plain text
+#: debian-bookworm
+msgid ""
+"The B<ppoll>() system call was added in Linux 2.6.16. The B<ppoll>() "
+"library call was added in glibc 2.4."
+msgstr ""
+
+#. FIXME .
+#. ppoll() is proposed for inclusion in POSIX:
+#. https://www.austingroupbugs.net/view.php?id=1263
+#. NetBSD 3.0 has a pollts() which is like Linux ppoll().
+#. type: Plain text
+#: debian-bookworm
+msgid ""
+"B<poll>() conforms to POSIX.1-2001 and POSIX.1-2008. B<ppoll>() is Linux-"
+"specific."
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"Opened \"myfifo\" on fd 3\n"
+"About to poll()\n"
+"Ready: 1\n"
+" fd=3; events: POLLIN POLLHUP\n"
+" read 10 bytes: aaaaabbbbb\n"
+"About to poll()\n"
+"Ready: 1\n"
+" fd=3; events: POLLIN POLLHUP\n"
+" read 6 bytes: ccccc\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"About to poll()\n"
+"Ready: 1\n"
+" fd=3; events: POLLHUP\n"
+" closing fd 3\n"
+"All file descriptors closed; bye\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid "/* poll_input.c\n"
+msgstr "/* poll_input.c\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" Licensed under GNU General Public License v2 or later.\n"
+"*/\n"
+"#include E<lt>fcntl.hE<gt>\n"
+"#include E<lt>poll.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>unistd.hE<gt>\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"#define errExit(msg) do { perror(msg); exit(EXIT_FAILURE); \\e\n"
+" } while (0)\n"
+msgstr ""
+"#define errExit(msg) do { perror(msg); exit(EXIT_FAILURE); \\e\n"
+" } while (0)\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, fuzzy, no-wrap
+#| msgid ""
+#| "int\n"
+#| "main(int argc, char *argv[])\n"
+#| "{\n"
+#| " int nfds, num_open_fds;\n"
+#| " struct pollfd *pfds;\n"
+msgid ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+" int ready;\n"
+" char buf[10];\n"
+" nfds_t num_open_fds, nfds;\n"
+" ssize_t s;\n"
+" struct pollfd *pfds;\n"
+msgstr ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+" int nfds, num_open_fds;\n"
+" struct pollfd *pfds;\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" if (argc E<lt> 2) {\n"
+" fprintf(stderr, \"Usage: %s file...\\en\", argv[0]);\n"
+" exit(EXIT_FAILURE);\n"
+" }\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" num_open_fds = nfds = argc - 1;\n"
+" pfds = calloc(nfds, sizeof(struct pollfd));\n"
+" if (pfds == NULL)\n"
+" errExit(\"malloc\");\n"
+msgstr ""
+" num_open_fds = nfds = argc - 1;\n"
+" pfds = calloc(nfds, sizeof(struct pollfd));\n"
+" if (pfds == NULL)\n"
+" errExit(\"malloc\");\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid " /* Open each file on command line, and add it to \\[aq]pfds\\[aq] array. */\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, fuzzy, no-wrap
+#| msgid ""
+#| " for (int j = 0; j E<lt> nfds; j++) {\n"
+#| " pfds[j].fd = open(argv[j + 1], O_RDONLY);\n"
+#| " if (pfds[j].fd == -1)\n"
+#| " errExit(\"open\");\n"
+msgid ""
+" for (nfds_t j = 0; j E<lt> nfds; j++) {\n"
+" pfds[j].fd = open(argv[j + 1], O_RDONLY);\n"
+" if (pfds[j].fd == -1)\n"
+" errExit(\"open\");\n"
+msgstr ""
+" for (int j = 0; j E<lt> nfds; j++) {\n"
+" pfds[j].fd = open(argv[j + 1], O_RDONLY);\n"
+" if (pfds[j].fd == -1)\n"
+" errExit(\"open\");\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid " printf(\"Opened \\e\"%s\\e\" on fd %d\\en\", argv[j + 1], pfds[j].fd);\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" pfds[j].events = POLLIN;\n"
+" }\n"
+msgstr ""
+" pfds[j].events = POLLIN;\n"
+" }\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" /* Keep calling poll() as long as at least one file descriptor is\n"
+" open. */\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, fuzzy, no-wrap
+#| msgid ""
+#| " printf(\"About to poll()\\en\");\n"
+#| " ready = poll(pfds, nfds, -1);\n"
+#| " if (ready == -1)\n"
+#| " errExit(\"poll\");\n"
+msgid ""
+" while (num_open_fds E<gt> 0) {\n"
+" printf(\"About to poll()\\en\");\n"
+" ready = poll(pfds, nfds, -1);\n"
+" if (ready == -1)\n"
+" errExit(\"poll\");\n"
+msgstr ""
+" printf(\"About to poll()\\en\");\n"
+" ready = poll(pfds, nfds, -1);\n"
+" if (ready == -1)\n"
+" errExit(\"poll\");\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid " printf(\"Ready: %d\\en\", ready);\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid " /* Deal with array returned by poll(). */\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" for (nfds_t j = 0; j E<lt> nfds; j++) {\n"
+" if (pfds[j].revents != 0) {\n"
+" printf(\" fd=%d; events: %s%s%s\\en\", pfds[j].fd,\n"
+" (pfds[j].revents & POLLIN) ? \"POLLIN \" : \"\",\n"
+" (pfds[j].revents & POLLHUP) ? \"POLLHUP \" : \"\",\n"
+" (pfds[j].revents & POLLERR) ? \"POLLERR \" : \"\");\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" if (pfds[j].revents & POLLIN) {\n"
+" s = read(pfds[j].fd, buf, sizeof(buf));\n"
+" if (s == -1)\n"
+" errExit(\"read\");\n"
+" printf(\" read %zd bytes: %.*s\\en\",\n"
+" s, (int) s, buf);\n"
+" } else { /* POLLERR | POLLHUP */\n"
+" printf(\" closing fd %d\\en\", pfds[j].fd);\n"
+" if (close(pfds[j].fd) == -1)\n"
+" errExit(\"close\");\n"
+" num_open_fds--;\n"
+" }\n"
+" }\n"
+" }\n"
+" }\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" printf(\"All file descriptors closed; bye\\en\");\n"
+" exit(EXIT_SUCCESS);\n"
+"}\n"
+msgstr ""
+
+#. type: TH
+#: debian-unstable opensuse-tumbleweed
+#, no-wrap
+msgid "2023-07-08"
+msgstr "8 ​​Julio 2023"
+
+#. type: TH
+#: debian-unstable opensuse-tumbleweed
+#, no-wrap
+msgid "Linux man-pages 6.05.01"
+msgstr "Páginas de manual de Linux 6.05.01"
+
+#. type: TH
+#: opensuse-leap-15-6
+#, no-wrap
+msgid "2023-03-30"
+msgstr "30 Marzo 2023"
+
+#. type: TH
+#: opensuse-leap-15-6
+#, no-wrap
+msgid "Linux man-pages 6.04"
+msgstr "Linux man-pages 6.04"