summaryrefslogtreecommitdiffstats
path: root/po/es/man2/mprotect.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/mprotect.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/mprotect.2.po')
-rw-r--r--po/es/man2/mprotect.2.po923
1 files changed, 923 insertions, 0 deletions
diff --git a/po/es/man2/mprotect.2.po b/po/es/man2/mprotect.2.po
new file mode 100644
index 00000000..4ef78a4b
--- /dev/null
+++ b/po/es/man2/mprotect.2.po
@@ -0,0 +1,923 @@
+# 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:02+0100\n"
+"PO-Revision-Date: 1998-05-03 19:53+0200\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
+#, no-wrap
+msgid "mprotect"
+msgstr ""
+
+#. 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
+#, fuzzy
+#| msgid "mprotect - control allowable accesses to a region of memory"
+msgid "mprotect, pkey_mprotect - set protection on a region of memory"
+msgstr ""
+"mprotect - controla el tipo de acceso permitido sobre una región de memoria"
+
+#. 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>sys/mman.hE<gt>>\n"
+msgstr "B<#include E<lt>sys/mman.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 mprotect(void *>I<addr>B<, size_t >I<len>B<, int >I<prot>B<);>\n"
+msgid "B<int mprotect(void >I<addr>B<[.>I<len>B<], size_t >I<len>B<, int >I<prot>B<);>\n"
+msgstr "B<int mprotect(void *>I<addr>B<, size_t >I<len>B<, int >I<prot>B<);>\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<#define _GNU_SOURCE> /* See feature_test_macros(7) */\n"
+"B<#include E<lt>sys/mman.hE<gt>>\n"
+msgstr ""
+"B<#define _GNU_SOURCE> /* Vea feature_test_macros(7) */\n"
+"B<#include E<lt>sys/mman.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 pkey_mprotect(void *>I<addr>B<, size_t >I<len>B<, int >I<prot>B<, int >I<pkey>B<);>\n"
+msgid "B<int pkey_mprotect(void >I<addr>B<[.>I<len>B<], size_t >I<len>B<, int >I<prot>B<, int >I<pkey>B<);>\n"
+msgstr "B<int pkey_mprotect(void *>I<addr>B<, size_t >I<len>B<, int >I<prot>B<, int >I<pkey>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<mprotect>() changes the access protections for the calling process's "
+"memory pages containing any part of the address range in the interval "
+"[I<addr>,\\ I<addr>+I<len>-1]. I<addr> must be aligned to a page boundary."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"If the calling process tries to access memory in a manner that violates the "
+"protections, then the kernel generates a B<SIGSEGV> signal for the process."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-tumbleweed
+msgid ""
+"I<prot> is a combination of the following access flags: B<PROT_NONE> or a "
+"bitwise OR of the other values in the following list:"
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<PROT_NONE>"
+msgstr "B<PROT_NONE>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "The memory cannot be accessed at all."
+msgstr "La memoria no puede ser accedida de ninguna forma."
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<PROT_READ>"
+msgstr "B<PROT_READ>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "The memory can be read."
+msgstr "La memoria puede ser leída."
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<PROT_WRITE>"
+msgstr "B<PROT_WRITE>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, fuzzy
+#| msgid "The memory can be read."
+msgid "The memory can be modified."
+msgstr "La memoria puede ser leída."
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<PROT_EXEC>"
+msgstr "B<PROT_EXEC>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, fuzzy
+#| msgid "The memory can be read."
+msgid "The memory can be executed."
+msgstr "La memoria puede ser leída."
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<PROT_SEM> (since Linux 2.5.7)"
+msgstr "B<PROT_SEM> (desde Linux 2.5.7)"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The memory can be used for atomic operations. This flag was introduced as "
+"part of the B<futex>(2) implementation (in order to guarantee the ability "
+"to perform atomic operations required by commands such as B<FUTEX_WAIT>), "
+"but is not currently used in on any architecture."
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<PROT_SAO> (since Linux 2.6.26)"
+msgstr "B<PROT_SAO> (desde Linux 2.6.26)"
+
+#. commit aba46c5027cb59d98052231b36efcbbde9c77a1d
+#. commit ef3d3246a0d06be622867d21af25f997aeeb105f
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The memory should have strong access ordering. This feature is specific to "
+"the PowerPC architecture (version 2.06 of the architecture specification "
+"adds the SAO CPU feature, and it is available on POWER 7 or PowerPC A2, for "
+"example)."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Additionally (since Linux 2.6.0), I<prot> can have one of the following "
+"flags set:"
+msgstr ""
+
+#. mm/mmap.c:
+#. vm_flags |= calc_vm_prot_bits(prot, pkey) | calc_vm_flag_bits(flags) |
+#. mm->def_flags | VM_MAYREAD | VM_MAYWRITE | VM_MAYEXEC;
+#. And calc_vm_flag_bits converts only GROWSDOWN/DENYWRITE/LOCKED.
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<PROT_GROWSUP>"
+msgstr "B<PROT_GROWSUP>"
+
+#. The VMA is one that was marked with VM_GROWSUP by the kernel
+#. when the stack was created. Note that (unlike VM_GROWSDOWN),
+#. there is no mmap() flag (analogous to MAP_GROWSDOWN) for
+#. creating a VMA that is marked VM_GROWSUP.
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Apply the protection mode up to the end of a mapping that grows upwards. "
+"(Such mappings are created for the stack area on architectures\\[em]for "
+"example, HP-PARISC\\[em]that have an upwardly growing stack.)"
+msgstr ""
+
+#. type: TP
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "B<PROT_GROWSDOWN>"
+msgstr "B<PROT_GROWSDOWN>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Apply the protection mode down to the beginning of a mapping that grows "
+"downward (which should be a stack segment or a segment mapped with the "
+"B<MAP_GROWSDOWN> flag set)."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Like B<mprotect>(), B<pkey_mprotect>() changes the protection on the pages "
+"specified by I<addr> and I<len>. The I<pkey> argument specifies the "
+"protection key (see B<pkeys>(7)) to assign to the memory. The protection "
+"key must be allocated with B<pkey_alloc>(2) before it is passed to "
+"B<pkey_mprotect>(). For an example of the use of this system call, see "
+"B<pkeys>(7)."
+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
+#, fuzzy
+#| msgid ""
+#| "On success, B<mprotect> returns zero. On error, -1 is returned, and "
+#| "I<errno> is set appropriately."
+msgid ""
+"On success, B<mprotect>() and B<pkey_mprotect>() return zero. On error, "
+"these system calls return -1, and I<errno> is set to indicate the error."
+msgstr ""
+"En caso de éxito, B<mprotect> devuelve cero. En caso de error, se devuelve "
+"-1, y se asigna a I<errno> un valor apropiado."
+
+#. 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<EACCES>"
+msgstr "B<EACCES>"
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The memory cannot be given the specified access. This can happen, for "
+"example, if you B<mmap>(2) a file to which you have read-only access, then "
+"ask B<mprotect>() to mark it B<PROT_WRITE>."
+msgstr ""
+"La memoria no permite el acceso especificado. Esto puede ocurrir si, por "
+"ejemplo, asocia a una zona de memoria mediante B<mmap>(2) un fichero al "
+"cual sólo tiene acceso de lectura y pide a B<mprotect>() que lo marque "
+"B<PROT_WRITE>."
+
+#. 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
+#, fuzzy
+#| msgid "I<addr> is not a valid pointer, or not a multiple of PAGESIZE."
+msgid ""
+"I<addr> is not a valid pointer, or not a multiple of the system page size."
+msgstr "I<addr> no es un puntero válido, o no es un múltiplo de PAGESIZE."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"(B<pkey_mprotect>()) I<pkey> has not been allocated with B<pkey_alloc>(2)"
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Both B<PROT_GROWSUP> and B<PROT_GROWSDOWN> were specified in I<prot>."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid "Invalid flags specified in I<prot>."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"(PowerPC architecture) B<PROT_SAO> was specified in I<prot>, but SAO "
+"hardware feature is not available."
+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 "Internal kernel structures could not be allocated."
+msgstr "No se han podido reservar estructuras internas del núcleo."
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Addresses in the range [I<addr>, I<addr>+I<len>-1] are invalid for the "
+"address space of the process, or specify one or more pages that are not "
+"mapped. (Before Linux 2.4.19, the error B<EFAULT> was incorrectly produced "
+"for these cases.)"
+msgstr ""
+
+#. I.e., the number of VMAs would exceed the 64 kB maximum
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Changing the protection of a memory region would result in the total number "
+"of mappings with distinct attributes (e.g., read versus read/write "
+"protection) exceeding the allowed maximum. (For example, making the "
+"protection of a range B<PROT_READ> in the middle of a region currently "
+"protected as B<PROT_READ|PROT_WRITE> would result in three mappings: two "
+"read/write mappings at each end and a read-only mapping in the middle.)"
+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"
+
+#. SVr4 defines an additional error
+#. code EAGAIN. The SVr4 error conditions don't map neatly onto Linux's.
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"POSIX says that the behavior of B<mprotect>() is unspecified if it is "
+"applied to a region of memory that was not obtained via B<mmap>(2)."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"On Linux, it is always permissible to call B<mprotect>() on any address in "
+"a process's address space (except for the kernel vsyscall area). In "
+"particular, it can be used to change existing code mappings to be writable."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Whether B<PROT_EXEC> has any effect different from B<PROT_READ> depends on "
+"processor architecture, kernel version, and process state. If "
+"B<READ_IMPLIES_EXEC> is set in the process's personality flags (see "
+"B<personality>(2)), specifying B<PROT_READ> will implicitly add B<PROT_EXEC>."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"On some hardware architectures (e.g., i386), B<PROT_WRITE> implies "
+"B<PROT_READ>."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"POSIX.1 says that an implementation may permit access other than that "
+"specified in I<prot>, but at a minimum can allow write access only if "
+"B<PROT_WRITE> has been set, and must not allow any access if B<PROT_NONE> "
+"has been set."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"Applications should be careful when mixing use of B<mprotect>() and "
+"B<pkey_mprotect>(). On x86, when B<mprotect>() is used with I<prot> set to "
+"B<PROT_EXEC> a pkey may be allocated and set on the memory implicitly by the "
+"kernel, but only when the pkey was 0 previously."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"On systems that do not support protection keys in hardware, "
+"B<pkey_mprotect>() may still be used, but I<pkey> must be set to -1. When "
+"called this way, the operation of B<pkey_mprotect>() is equivalent to "
+"B<mprotect>()."
+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<connect>(2)"
+msgid "B<mprotect>()"
+msgstr "B<connect>(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
+#, no-wrap
+msgid "B<pkey_mprotect>()"
+msgstr ""
+
+#. 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
+msgid "POSIX.1-2001, SVr4."
+msgstr "POSIX.1-2001, SVr4."
+
+#. type: Plain text
+#: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron
+#: opensuse-leap-15-6 opensuse-tumbleweed
+#, fuzzy
+#| msgid "Since glibc 2.2.2:"
+msgid "Linux 4.9, glibc 2.27."
+msgstr "Desde glibc 2.2.2:"
+
+#. 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: SH
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+#, no-wrap
+msgid "EXAMPLES"
+msgstr "EJEMPLOS"
+
+#. sigaction.2 refers to this example
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"The program below demonstrates the use of B<mprotect>(). The program "
+"allocates four pages of memory, makes the third of these pages read-only, "
+"and then executes a loop that walks upward through the allocated region "
+"modifying bytes."
+msgstr ""
+
+#. type: Plain text
+#: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide
+#: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed
+msgid ""
+"An example of what we might see when running the program is the following:"
+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< ./a.out>\n"
+"Start of region: 0x804c000\n"
+"Got SIGSEGV at address: 0x804e000\n"
+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 ""
+"#include E<lt>malloc.hE<gt>\n"
+"#include E<lt>signal.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>sys/mman.hE<gt>\n"
+"#include E<lt>unistd.hE<gt>\n"
+"\\&\n"
+"#define handle_error(msg) \\e\n"
+" do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
+"\\&\n"
+"static char *buffer;\n"
+"\\&\n"
+"static void\n"
+"handler(int sig, siginfo_t *si, void *unused)\n"
+"{\n"
+" /* Note: calling printf() from a signal handler is not safe\n"
+" (and should not be done in production programs), since\n"
+" printf() is not async-signal-safe; see signal-safety(7).\n"
+" Nevertheless, we use printf() here as a simple way of\n"
+" showing that the handler was called. */\n"
+"\\&\n"
+" printf(\"Got SIGSEGV at address: %p\\en\", si-E<gt>si_addr);\n"
+" exit(EXIT_FAILURE);\n"
+"}\n"
+"\\&\n"
+"int\n"
+"main(void)\n"
+"{\n"
+" int pagesize;\n"
+" struct sigaction sa;\n"
+"\\&\n"
+" sa.sa_flags = SA_SIGINFO;\n"
+" sigemptyset(&sa.sa_mask);\n"
+" sa.sa_sigaction = handler;\n"
+" if (sigaction(SIGSEGV, &sa, NULL) == -1)\n"
+" handle_error(\"sigaction\");\n"
+"\\&\n"
+" pagesize = sysconf(_SC_PAGE_SIZE);\n"
+" if (pagesize == -1)\n"
+" handle_error(\"sysconf\");\n"
+"\\&\n"
+" /* Allocate a buffer aligned on a page boundary;\n"
+" initial protection is PROT_READ | PROT_WRITE. */\n"
+"\\&\n"
+" buffer = memalign(pagesize, 4 * pagesize);\n"
+" if (buffer == NULL)\n"
+" handle_error(\"memalign\");\n"
+"\\&\n"
+" printf(\"Start of region: %p\\en\", buffer);\n"
+"\\&\n"
+" if (mprotect(buffer + pagesize * 2, pagesize,\n"
+" PROT_READ) == -1)\n"
+" handle_error(\"mprotect\");\n"
+"\\&\n"
+" for (char *p = buffer ; ; )\n"
+" *(p++) = \\[aq]a\\[aq];\n"
+"\\&\n"
+" printf(\"Loop completed\\en\"); /* Should never happen */\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
+msgid "B<mmap>(2), B<sysconf>(3), B<pkeys>(7)"
+msgstr "B<mmap>(2), B<sysconf>(3), B<pkeys>(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
+msgid ""
+"I<prot> is a combination of the following access flags: B<PROT_NONE> or a "
+"bitwise-or of the other values in the following list:"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm
+msgid ""
+"B<pkey_mprotect>() first appeared in Linux 4.9; library support was added "
+"in glibc 2.27."
+msgstr ""
+
+#. SVr4 defines an additional error
+#. code EAGAIN. The SVr4 error conditions don't map neatly onto Linux's.
+#. type: Plain text
+#: debian-bookworm
+msgid ""
+"B<mprotect>(): POSIX.1-2001, POSIX.1-2008, SVr4. POSIX says that the "
+"behavior of B<mprotect>() is unspecified if it is applied to a region of "
+"memory that was not obtained via B<mmap>(2)."
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm
+msgid "B<pkey_mprotect>() is a nonportable Linux extension."
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, fuzzy, no-wrap
+#| msgid ""
+#| "#include E<lt>unistd.hE<gt>\n"
+#| "#include E<lt>signal.hE<gt>\n"
+#| "#include E<lt>stdio.hE<gt>\n"
+#| "#include E<lt>malloc.hE<gt>\n"
+#| "#include E<lt>stdlib.hE<gt>\n"
+#| "#include E<lt>errno.hE<gt>\n"
+#| "#include E<lt>sys/mman.hE<gt>\n"
+msgid ""
+"#include E<lt>malloc.hE<gt>\n"
+"#include E<lt>signal.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>sys/mman.hE<gt>\n"
+"#include E<lt>unistd.hE<gt>\n"
+msgstr ""
+"#include E<lt>unistd.hE<gt>\n"
+"#include E<lt>signal.hE<gt>\n"
+"#include E<lt>stdio.hE<gt>\n"
+"#include E<lt>malloc.hE<gt>\n"
+"#include E<lt>stdlib.hE<gt>\n"
+"#include E<lt>errno.hE<gt>\n"
+"#include E<lt>sys/mman.hE<gt>\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"#define handle_error(msg) \\e\n"
+" do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
+msgstr ""
+"#define handle_error(msg) \\e\n"
+" do { perror(msg); exit(EXIT_FAILURE); } while (0)\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid "static char *buffer;\n"
+msgstr "static char *buffer;\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+"static void\n"
+"handler(int sig, siginfo_t *si, void *unused)\n"
+"{\n"
+" /* Note: calling printf() from a signal handler is not safe\n"
+" (and should not be done in production programs), since\n"
+" printf() is not async-signal-safe; see signal-safety(7).\n"
+" Nevertheless, we use printf() here as a simple way of\n"
+" showing that the handler was called. */\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" printf(\"Got SIGSEGV at address: %p\\en\", si-E<gt>si_addr);\n"
+" exit(EXIT_FAILURE);\n"
+"}\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, fuzzy, no-wrap
+#| msgid ""
+#| "int\n"
+#| "main(int argc, char *argv[])\n"
+#| "{\n"
+#| " char *p;\n"
+#| " int pagesize;\n"
+#| " struct sigaction sa;\n"
+msgid ""
+"int\n"
+"main(void)\n"
+"{\n"
+" int pagesize;\n"
+" struct sigaction sa;\n"
+msgstr ""
+"int\n"
+"main(int argc, char *argv[])\n"
+"{\n"
+" char *p;\n"
+" int pagesize;\n"
+" struct sigaction sa;\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" sa.sa_flags = SA_SIGINFO;\n"
+" sigemptyset(&sa.sa_mask);\n"
+" sa.sa_sigaction = handler;\n"
+" if (sigaction(SIGSEGV, &sa, NULL) == -1)\n"
+" handle_error(\"sigaction\");\n"
+msgstr ""
+" sa.sa_flags = SA_SIGINFO;\n"
+" sigemptyset(&sa.sa_mask);\n"
+" sa.sa_sigaction = handler;\n"
+" if (sigaction(SIGSEGV, &sa, NULL) == -1)\n"
+" handle_error(\"sigaction\");\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" pagesize = sysconf(_SC_PAGE_SIZE);\n"
+" if (pagesize == -1)\n"
+" handle_error(\"sysconf\");\n"
+msgstr ""
+" pagesize = sysconf(_SC_PAGE_SIZE);\n"
+" if (pagesize == -1)\n"
+" handle_error(\"sysconf\");\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" /* Allocate a buffer aligned on a page boundary;\n"
+" initial protection is PROT_READ | PROT_WRITE. */\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" buffer = memalign(pagesize, 4 * pagesize);\n"
+" if (buffer == NULL)\n"
+" handle_error(\"memalign\");\n"
+msgstr ""
+" buffer = memalign(pagesize, 4 * pagesize);\n"
+" if (buffer == NULL)\n"
+" handle_error(\"memalign\");\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid " printf(\"Start of region: %p\\en\", buffer);\n"
+msgstr ""
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, fuzzy, no-wrap
+#| msgid ""
+#| " if (mprotect(buffer + pagesize * 2, pagesize,\n"
+#| " PROT_READ) == -1)\n"
+#| " handle_error(\"mprotect\");\n"
+msgid ""
+" if (mprotect(buffer + pagesize * 2, pagesize,\n"
+" PROT_READ) == -1)\n"
+" handle_error(\"mprotect\");\n"
+msgstr ""
+" if (mprotect(buffer + pagesize * 2, pagesize,\n"
+" PROT_READ) == -1)\n"
+" handle_error(\"mprotect\");\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, fuzzy, no-wrap
+#| msgid ""
+#| " for (p = buffer ; ; )\n"
+#| " *(p++) = \\(aqa\\(aq;\n"
+msgid ""
+" for (char *p = buffer ; ; )\n"
+" *(p++) = \\[aq]a\\[aq];\n"
+msgstr ""
+" for (p = buffer ; ; )\n"
+" *(p++) = \\(aqa\\(aq;\n"
+
+#. type: Plain text
+#: debian-bookworm opensuse-leap-15-6
+#, no-wrap
+msgid ""
+" printf(\"Loop completed\\en\"); /* Should never happen */\n"
+" exit(EXIT_SUCCESS);\n"
+"}\n"
+msgstr ""
+
+#. type: TH
+#: debian-unstable opensuse-tumbleweed
+#, no-wrap
+msgid "2023-05-03"
+msgstr "3 Mayo 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"