# German translation of manpages # This file is distributed under the same license as the manpages-l10n package. # Copyright © of this file: # Patrick Rother # Chris Leick , 2010-2014. # Mario Blättermann , 2014, 2019, 2020, 2021, 2022, 2023. # Helge Kreutzmann , 2012, 2016-2021, 2023 msgid "" msgstr "" "Project-Id-Version: manpages-l10n 4.22.0\n" "POT-Creation-Date: 2024-06-01 06:13+0200\n" "PO-Revision-Date: 2024-03-29 17:03+0100\n" "Last-Translator: Mario Blättermann \n" "Language-Team: German \n" "Language: de\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "X-Generator: Lokalize 22.12.3\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" #. type: TH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ptrace" msgstr "ptrace" #. type: TH #: archlinux debian-unstable opensuse-tumbleweed #, no-wrap msgid "2024-05-02" msgstr "2. Mai 2024" #. type: TH #: archlinux debian-unstable #, no-wrap msgid "Linux man-pages 6.8" msgstr "Linux man-pages 6.8" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "NAME" msgstr "BEZEICHNUNG" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "ptrace - process trace" msgstr "ptrace - Prozessverfolgung" #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "LIBRARY" msgstr "BIBLIOTHEK" #. 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, I<-lc>)" msgstr "Standard-C-Bibliothek (I, 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 "ÜBERSICHT" #. 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 Esys/ptrace.hE>\n" msgstr "B<#include Esys/ptrace.hE>\n" #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed #, no-wrap msgid "" "BIB<, pid_t >IB<,>\n" "B< void *>IB<, void *>IB<);>\n" msgstr "" "BIB<, pid_t >IB<,>\n" "B< void *>IB<, void *>IB<);>\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 "BESCHREIBUNG" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B() system call provides a means by which one process (the " "\"tracer\") may observe and control the execution of another process (the " "\"tracee\"), and examine and change the tracee's memory and registers. It " "is primarily used to implement breakpoint debugging and system call tracing." msgstr "" "Der Systemaufruf B() stellt ein Mittel bereit, wodurch ein Prozess " "(der »Verfolger«) die Ausführung eines anderen Prozesses (des »verfolgten " "Prozesses«) beobachten und steuern kann und seinen Speicher sowie die " "Register untersuchen und ändern kann. Er wird in erster Linie benutzt, um " "Fehlersuche mittels Haltepunkten zu implementieren und Systemaufrufe zu " "verfolgen." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A tracee first needs to be attached to the tracer. Attachment and " "subsequent commands are per thread: in a multithreaded process, every thread " "can be individually attached to a (potentially different) tracer, or left " "not attached and thus not debugged. Therefore, \"tracee\" always means " "\"(one) thread\", never \"a (possibly multithreaded) process\". Ptrace " "commands are always sent to a specific tracee using a call of the form" msgstr "" "Ein verfolgter Prozess muss zuerst an den Verfolger angehängt werden. " "Anhängen und nachfolgende Befehle bestehen pro Thread: In einem Prozess mit " "mehreren Threads kann jeder Thread individuell an einen (möglicherweise " "unterschiedlichen) Verfolger angehängt werden oder nicht angehängt und " "folglich nicht auf Fehler untersucht werden. Daher bedeutet »verfolgter " "Prozess« immer »(ein) Thread«, niemals »ein Prozess (mit möglicherweise " "mehreren Threads)«. Ptrace-Befehle werden immer an einen bestimmten " "verfolgten Prozess gesandt. Der Aufruf hat folgende Form:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ptrace(PTRACE_foo, pid, ...)\n" msgstr "ptrace(PTRACE_foo, PID, …)\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "where I is the thread ID of the corresponding Linux thread." msgstr "wobei I die Thread-Kennung des zugehörigen Linux-Threads ist." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(Note that in this page, a \"multithreaded process\" means a thread group " "consisting of threads created using the B(2) B flag.)" msgstr "" "(Beachten Sie, dass auf dieser Seite ein »Prozess aus mehreren Threads« eine " "Thread-Gruppe bezeichnet, die aus Threads besteht, die mittels des " "B(2)-Schalters B erzeugt wurde.)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A process can initiate a trace by calling B(2) and having the " "resulting child do a B, followed (typically) by an " "B(2). Alternatively, one process may commence tracing another " "process using B or B." msgstr "" "Ein Prozess kann eine Verfolgung mittels B(2) starten und als Ergebnis " "einen Kindprozess erhalten, der B ausführt, was " "(üblicherweise) von einem B(2) gefolgt wird. Alternativ kann ein " "Prozess die Verfolgung eines anderen Prozesses mittels B oder " "B beginnen." #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "While being traced, the tracee will stop each time a signal is delivered, " "even if the signal is being ignored. (An exception is B, which has " "its usual effect.) The tracer will be notified at its next call to " "B(2) (or one of the related \"wait\" system calls); that call will " "return a I value containing information that indicates the cause of " "the stop in the tracee. While the tracee is stopped, the tracer can use " "various ptrace operations to inspect and modify the tracee. The tracer then " "causes the tracee to continue, optionally ignoring the delivered signal (or " "even delivering a different signal instead)." msgstr "" "Während der Prozess verfolgt wird, wird er jedesmal stoppen, wenn ein Signal " "gesandt wird, sogar wenn das Signal ignoriert wird. (Eine Ausnahme ist " "B, das seine normale Wirkung erzielt.) Der Verfolger wird bei " "seinem nächsten Aufruf von B(2) (oder den zugehörigen »wait«-" "Systemaufrufen) benachrichtigt; dies wird einen Iwert zurückgeben, " "der Informationen enthält, die den Grund angeben, weshalb der verfolgte " "Prozess stoppte. Während der verfolgte Prozess angehalten ist, kann der " "Verfolger verschiedene Ptrace-Aktionen verwenden, um den verfolgten Prozess " "zu untersuchen und zu verändern. Dann veranlasst der Verfolger den " "verfolgten Prozess fortzufahren und wahlweise das versandte Signal zu " "ignorieren (oder stattdessen sogar ein anderes Signal zu senden)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the B option is not in effect, all successful calls " "to B(2) by the traced process will cause it to be sent a B " "signal, giving the parent a chance to gain control before the new program " "begins execution." msgstr "" "Falls die Option B nicht in Kraft ist, werden alle " "erfolgreichen Aufrufe von B(2) durch den verfolgten Prozess zum " "Senden eines B-Signals veranlassen, um dem Elternprozess die " "Möglichkeit zu geben, die Kontrolle zu erlangen, bevor die Ausführung des " "neuen Programms beginnt." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When the tracer is finished tracing, it can cause the tracee to continue " "executing in a normal, untraced mode via B." msgstr "" "Wenn der Verfolger die Verfolgung beendet hat, kann er veranlassen, das der " "verfolgte Prozess mit B in einem normal Modus ohne Verfolgung " "fortfährt." #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "The value of I determines the operation to be performed:" msgstr "Der Wert von I legt die durchzuführende Aktion fest:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "Indicate that this process is to be traced by its parent. A process " "probably shouldn't make this operation if its parent isn't expecting to " "trace it. (I, I, and I are ignored.)" msgstr "" "zeigt an, dass dieser Prozess durch seinen Elternprozess verfolgt wird. Ein " "Prozess sollte diese Aktion wahrscheinlich nicht durchführen, falls sein " "Elternprozess nicht erwartet, ihn zu verfolgen.(I, I und " "I werden ignoriert.)" #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "The B operation is used only by the tracee; the remaining " "operations are used only by the tracer. In the following operations, I " "specifies the thread ID of the tracee to be acted on. For operations other " "than B, B, B, and " "B, the tracee must be stopped." msgstr "" "Die Aktion B wird nur vom verfolgten Prozess benutzt; die " "verbleibenden Aktionen werden nur vom verfolgenden Prozess benutzt. In den " "folgenden Aktionen gibt I die Thread-Kennung des verfolgten Prozesses " "an, der beeinflusst werden soll. Für andere Aktionen als B, " "B, B und B muss der verfolgte " "Prozess gestoppt werden." #. type: TP #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "Read a word at the address I in the tracee's memory, returning the " "word as the result of the B() call. Linux does not have separate " "text and data address spaces, so these two operations are currently " "equivalent. (I is ignored; but see NOTES.)" msgstr "" "liest ein »word« an der Stelle I im Speicher des verfolgten " "Prozesses und gibt das »word« als Ergebnis des B()-Aufrufs zurück. " "Linux hat keine separaten Adressräume für Text und Daten, daher sind diese " "beiden Aktionen derzeit gleichwertig. (Das Argument I wird ignoriert, " "lesen Sie aber auch ANMERKUNGEN.)" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. PTRACE_PEEKUSR in kernel source, but glibc uses PTRACE_PEEKUSER, #. and that is the name that seems common on other systems. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Read a word at offset I in the tracee's USER area, which holds the " "registers and other information about the process (see Isys/user." "hE>). The word is returned as the result of the B() call. " "Typically, the offset must be word-aligned, though this might vary by " "architecture. See NOTES. (I is ignored; but see NOTES.)" msgstr "" "Liest ein »word« bei Versatz I im BENUTZERbereich des verfolgten " "Prozesses, der die Register und andere Informationen über den Prozess " "enthält (siehe Isys/user.hE>). Das »word« wird als Ergebnis des " "B()-Aufrufs zurückgegeben. Typischerweise muss der Versatz am »word« " "ausgerichtet sein, obwohl dies je nach Architektur variieren kann. Lesen Sie " "die ANMERKUNGEN. (I wird ignoriert, lesen Sie aber auch ANMERKUNGEN.)" #. type: TP #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "Copy the word I to the address I in the tracee's memory. As for " "B and B, these two operations are " "currently equivalent." msgstr "" "kopiert das »word« I an die Stelle I im Speicher des " "verfolgenden Prozesses. Wie bei B und B " "sind die beiden Aktionen derzeit gleichwertig." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. PTRACE_POKEUSR in kernel source, but glibc uses PTRACE_POKEUSER, #. and that is the name that seems common on other systems. #. FIXME In the preceding sentence, which modifications are disallowed, #. and when they are disallowed, how does user space discover that fact? #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Copy the word I to offset I in the tracee's USER area. As for " "B, the offset must typically be word-aligned. In order to " "maintain the integrity of the kernel, some modifications to the USER area " "are disallowed." msgstr "" "kopiert das »word« I an den Versatz I im BENUTZERbereich des " "verfolgten Prozesses. Wie für B muss der Versatz am »word« " "ausgerichtet sein. Um die Integrität des Kernels aufrecht zu erhalten, sind " "einige Änderungen in BENUTZERbereich nicht erlaubt." #. type: TP #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Copy the tracee's general-purpose or floating-point registers, respectively, " "to the address I in the tracer. See Isys/user.hE> for " "information on the format of this data. (I is ignored.) Note that " "SPARC systems have the meaning of I and I reversed; that is, " "I is ignored and the registers are copied to the address I. " "B and B are not present on all " "architectures." msgstr "" "kopiert die Mehrzweck- beziehungsweise Fließpunktregister des verfolgten " "Prozesses an die Stelle I im Verfolger. Lesen Sie Isys/user." "hE>, um Informationen über das Format dieser Daten zu erhalten. " "(I wird ignoriert.) Beachten Sie, dass auf SPARC-Systemen die " "Bedeutung von I und I umgekehrt ist; daher wird I " "ignoriert und die Register werden an die Adresse I kopiert. " "B und B sind nicht auf allen Architekturen " "verfügbar." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.6.34)" msgstr "B (seit Linux 2.6.34)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Read the tracee's registers. I specifies, in an architecture-" "dependent way, the type of registers to be read. B (with " "numerical value 1) usually results in reading of general-purpose " "registers. If the CPU has, for example, floating-point and/or vector " "registers, they can be retrieved by setting I to the corresponding " "B constant. I points to a B, which describes " "the destination buffer's location and length. On return, the kernel " "modifies B to indicate the actual number of bytes returned." msgstr "" "liest die Register des verfolgten Prozesses. I gibt auf eine von " "der Architektur unabhängige Weise den Typ des Registers an, das gelesen " "werden soll. B (mit numerischem Wert 1) führt normalerweise " "dazu, dass Allzweckregister gelesen werden. Falls die CPU zum Beispiel " "Fließkomma- und/oder Vektorregister hat, können sie durch Setzen von " "I auf die entsprechende Konstante B ermittelt werden. " "I zeigt auf einen B, der den Speicherort und die Länge " "des Zielpuffers beschreibt. Bei der Rückkehr ändert der Kernel B, " "um die tatsächliche Anzahl zurückgegebener Byte anzuzeigen." #. type: TP #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. FIXME . In the preceding sentence, which modifications are disallowed, #. and when they are disallowed, how does user space discover that fact? #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Modify the tracee's general-purpose or floating-point registers, " "respectively, from the address I in the tracer. As for " "B, some general-purpose register modifications may be " "disallowed. (I is ignored.) Note that SPARC systems have the meaning " "of I and I reversed; that is, I is ignored and the " "registers are copied from the address I. B and " "B are not present on all architectures." msgstr "" "verändert die Mehrzweck- beziehungsweise Fließpunktregister des verfolgten " "Prozesses von der Adresse I im Verfolger. Wie für B " "können einige Änderungen am Mehrzweckregister verboten sein. (I " "wird ignoriert.) Beachten Sie, dass auf SPARC-Systemen die Bedeutung von " "I und I umgekehrt ist; daher wird I ignoriert und die " "Register werden von der Adresse I kopiert. B und " "B sind nicht auf allen Architekturen verfügbar." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.6.34)" msgstr "B (seit Linux 2.6.34)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Modify the tracee's registers. The meaning of I and I is " "analogous to B." msgstr "" "verändert die Register des verfolgten Prozesses. Die Bedeutung von " "I und I ist analog zu B." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.3.99-pre6)" msgstr "B (seit Linux 2.3.99-pre6)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Retrieve information about the signal that caused the stop. Copy a " "I structure (see B(2)) from the tracee to the address " "I in the tracer. (I is ignored.)" msgstr "" "ruft Informationen über das Signal ab, das den Stopp verursachte. Kopiert " "eine I-Struktur (siehe B(2)) vom verfolgten Prozess an " "die Stelle I im Verfolger. (I wird ignoriert.)" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.3.99-pre6)" msgstr "B (seit Linux 2.3.99-pre6)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Set signal information: copy a I structure from the address " "I in the tracer to the tracee. This will affect only signals that " "would normally be delivered to the tracee and were caught by the tracer. It " "may be difficult to tell these normal signals from synthetic signals " "generated by B() itself. (I is ignored.)" msgstr "" "setzt Signalinformationen: kopiert eine I-Struktur von der " "Adresse I vom verfolgenden zum verfolgten Prozess. Dies wird nur " "Signale betreffen, die normalerweise an den verfolgten Prozess zugestellt " "würden und vom Verfolger abgefangen wurden. Es könnte schwierig werden, " "diese normalen Signale von künstlichen Signalen zu unterscheiden, die von " "B() selbst generiert wurden. (I wird ignoriert.)" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 3.10)" msgstr "B (seit Linux 3.10)" #. commit 84c751bd4aebbaae995fe32279d3dba48327bad4 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Retrieve I structures without removing signals from a queue. " "I points to a I structure that specifies the " "ordinal position from which copying of signals should start, and the number " "of signals to copy. I structures are copied into the buffer " "pointed to by I. The return value contains the number of copied " "signals (zero indicates that there is no signal corresponding to the " "specified ordinal position). Within the returned I structures, the " "I field includes information (B<__SI_CHLD>, B<__SI_FAULT>, etc.) " "that are not otherwise exposed to user space." msgstr "" "fragt I-Strukturen ab, ohne Signale aus einer Warteschlange zu " "entfernen. I zeigt auf eine I-Struktur, " "die die Ordnungsposition angibt, von der das Kopieren der Signale starten " "soll sowie die Anzahl zu kopierender Signale. I-Strukturen werden " "in den Puffer kopiert, auf den I verweist. Der Rückgabewert enthält " "die Anzahl der kopierten Signale (null zeigt an, dass es an der angegebenen " "Ordnungsposition kein entsprechendes Signal gibt). Innerhalb der " "zurückgegebenen I-Strukturen enthält das Feld I " "Informationen (B<__SI_CHLD>, B<__SI_FAULT>, etc.), die ansonsten nicht an " "den Anwendungsraum offengelegt werden." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "struct ptrace_peeksiginfo_args {\n" " u64 off; /* Ordinal position in queue at which\n" " to start copying signals */\n" " u32 flags; /* PTRACE_PEEKSIGINFO_SHARED or 0 */\n" " s32 nr; /* Number of signals to copy */\n" "};\n" msgstr "" "struct ptrace_peeksiginfo_args {\n" " u64 off; /* Ordnungsposition in der Warteschlange, an der\n" " mit dem Kopieren der Signale begonnen wird */\n" " u32 flags; /* PTRACE_PEEKSIGINFO_SHARED oder 0 */\n" " s32 nr; /* Anzahl zu kopierender Signale */\n" "};\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Currently, there is only one flag, B, for dumping " "signals from the process-wide signal queue. If this flag is not set, " "signals are read from the per-thread queue of the specified thread." msgstr "" "Derzeit gibt es nur einen Schalter, B, um Signale " "aus der prozessweiten Signalwarteschlange auszugeben. Falls dieser Schalter " "nicht gesetzt ist, werden Signale von der Thread-eigenen Warteschlange des " "angegebenen Threads gelesen." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 3.11)" msgstr "B (seit Linux 3.11)" #. commit 29000caecbe87b6b66f144f72111f0d02fbbf0c1 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Place a copy of the mask of blocked signals (see B(2)) in the " "buffer pointed to by I, which should be a pointer to a buffer of type " "I. The I argument contains the size of the buffer pointed " "to by I (i.e., I)." msgstr "" "Platzieren Sie eine Kopie der Maske blockierter Signale (siehe " "B(2)) in den Puffer, auf den I zeigt. Dies sollte ein " "Zeiger auf einen Puffer des Typs I sein. Das Argument I " "enthält die Größe des Puffers, auf den I zeigt (d.h. " "I)." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 3.11)" msgstr "B (seit Linux 3.11)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Change the mask of blocked signals (see B(2)) to the value " "specified in the buffer pointed to by I, which should be a pointer to " "a buffer of type I. The I argument contains the size of the " "buffer pointed to by I (i.e., I)." msgstr "" "ändert die Maske blockierter Signale (siehe B(2)) auf den Wert, " "der im Puffer angegeben wird, auf den I zeigt. Dies sollte ein Zeiger " "auf einen Puffer des Typs I sein. Das Argument I enthält " "die Größe des Puffers, auf den I zeigt (d.h. I)." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.4.6; see BUGS for caveats)" msgstr "B (seit Linux 2.4.6; siehe FEHLER für Vorsichtsmaßnahmen)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Set ptrace options from I. (I is ignored.) I is " "interpreted as a bit mask of options, which are specified by the following " "flags:" msgstr "" "setzt Ptrace-Optionen von I. (I wird ignoriert.) I " "wird als Bit in der Maske der Optionen interpretiert, die durch die " "folgenden Schalter angegeben wird:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 3.8)" msgstr "B (seit Linux 3.8)" #. commit 992fb6e170639b0849bace8e49bf31bd37c4123 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Send a B signal to the tracee if the tracer exits. This option is " "useful for ptrace jailers that want to ensure that tracees can never escape " "the tracer's control." msgstr "" "schickt an den verfolgten Prozess ein B-Signal, falls der " "verfolgende Prozess beendet wird. Diese Option ist für diejenigen nützlich, " "die Ptrace einsperren und sicherstellen wollen, dass der verfolgte Prozess " "nie der Steuerung des verfolgenden Prozesses entkommt." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.5.46)" msgstr "B (seit Linux 2.5.46)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Stop the tracee at the next B(2) and automatically start tracing the " "newly cloned process, which will start with a B, or " "B if B was used. A B(2) by the " "tracer will return a I value such that" msgstr "" "stoppt den verfolgten Prozess beim nächsten Aufruf von B(2) und " "startet automatisch die Verfolgung des neu geklonten Prozesses, der mit " "einem B oder, falls B benutzt wurde, mit " "B starten wird. Ein B(2) durch den Verfolger " "wird einen Iwert wie diesen zurückgeben:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid " statusEE8 == (SIGTRAP | (PTRACE_EVENT_CLONEEE8))\n" msgstr " statusEE8 == (SIGTRAP | (PTRACE_EVENT_CLONEEE8))\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The PID of the new process can be retrieved with B." msgstr "" "Die PID des neuen Prozesses kann mit B abgefragt werden." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This option may not catch B(2) calls in all cases. If the tracee " "calls B(2) with the B flag, B will " "be delivered instead if B is set; otherwise if the " "tracee calls B(2) with the exit signal set to B, " "B will be delivered if B is set." msgstr "" "Diese Option kann nicht in allen Fällen B(2)-Aufrufe abfangen. Falls " "der verfolgte Prozess B(2) mit dem Schalter B aufruft, " "wird stattdessen B geschickt, wenn " "B gesetzt ist; andernfalls wird B " "geschickt, wenn der verfolgte Prozess B(2) mit dem auf B " "gesetzten Beendigungssignal aufgerufen wird, falls B " "gesetzt ist." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.5.46)" msgstr "B (seit Linux 2.5.46)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Stop the tracee at the next B(2). A B(2) by the tracer " "will return a I value such that" msgstr "" "stoppt den verfolgten Prozess beim nächsten B(2). Ein B(2) " "durch den Verfolger wird einen Iwert wie diesen zurückgeben:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid " statusEE8 == (SIGTRAP | (PTRACE_EVENT_EXECEE8))\n" msgstr " statusEE8 == (SIGTRAP | (PTRACE_EVENT_EXECEE8))\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the execing thread is not a thread group leader, the thread ID is reset " "to thread group leader's ID before this stop. Since Linux 3.0, the former " "thread ID can be retrieved with B." msgstr "" "Falls der ausführende Thread kein führender Thread der Gruppe ist, wird die " "Thread-Kennung vor dem Stopp auf die Kennung des führenden Threads der " "Gruppe zurückgesetzt. Seit Linux 3.0 kann die vorherige Thread-Kennung mit " "B abgefragt werden." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.5.60)" msgstr "B (seit Linux 2.5.60)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Stop the tracee at exit. A B(2) by the tracer will return a " "I value such that" msgstr "" "stoppt den verfolgten Prozess beim Beenden. Ein B(2) durch den " "Verfolger wird einen Iwert wie diesen zurückgeben:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid " statusEE8 == (SIGTRAP | (PTRACE_EVENT_EXITEE8))\n" msgstr " statusEE8 == (SIGTRAP | (PTRACE_EVENT_EXITEE8))\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The tracee's exit status can be retrieved with B." msgstr "" "Der Exit-Status des verfolgten Prozesses kann mit B " "abgefragt werden." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The tracee is stopped early during process exit, when registers are still " "available, allowing the tracer to see where the exit occurred, whereas the " "normal exit notification is done after the process is finished exiting. " "Even though context is available, the tracer cannot prevent the exit from " "happening at this point." msgstr "" "Der verfolgte Prozess wird frühzeitig während des Beendens gestoppt, wenn " "die Register noch verfügbar sind, was es dem Verfolger ermöglicht, zu sehen, " "wo das Beenden veranlasst wurde, wohingegen die normale Benachrichtigung " "über die Beendigung geschickt wird, wenn der Prozess das Beenden " "abgeschlossen hat. Auch wenn der Kontext verfügbar ist, kann der Verfolger " "das Beenden an diesem Punkt nicht mehr verhindern." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.5.46)" msgstr "B (seit Linux 2.5.46)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Stop the tracee at the next B(2) and automatically start tracing the " "newly forked process, which will start with a B, or " "B if B was used. A B(2) by the " "tracer will return a I value such that" msgstr "" "stoppt den verfolgten Prozess beim nächsten Aufruf von B(2) und " "startet die Verfolgung des neuen Prozesszweiges, der mit einem B " "oder, falls B benutzt wurde, mit B starten " "wird. Ein B(2) durch den Verfolger wird einen Iwert wie " "diesen zurückgeben:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid " statusEE8 == (SIGTRAP | (PTRACE_EVENT_FORKEE8))\n" msgstr " statusEE8 == (SIGTRAP | (PTRACE_EVENT_FORKEE8))\n" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.4.6)" msgstr "B (seit Linux 2.4.6)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When delivering system call traps, set bit 7 in the signal number (i.e., " "deliver I). This makes it easy for the tracer to distinguish " "normal traps from those caused by a system call." msgstr "" "Wenn Systemaufrufe abgefangen werden, wird Bit 7 in der Signalnummer gesetzt " "(d.h. I geschickt). Dies erleichtert es dem Verfolger, den " "Unterschied zwischen normalen, abgefangenen Signalen und denen, die durch " "einen Systemaufruf verursacht wurden, mitzuteilen." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.5.46)" msgstr "B (seit Linux 2.5.46)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Stop the tracee at the next B(2) and automatically start tracing the " "newly vforked process, which will start with a B, or " "B if B was used. A B(2) by the " "tracer will return a I value such that" msgstr "" "stoppt den verfolgten Prozess beim nächsten Aufruf von B(2) und " "startet automatisch die Verfolgung des neuen »vfork«-Prozesszweiges, der mit " "einem B oder, falls B benutzt wurde, mit " "B starten wird. Ein B(2) durch den Verfolger " "wird einen Iwert wie diesen zurückgeben:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid " statusEE8 == (SIGTRAP | (PTRACE_EVENT_VFORKEE8))\n" msgstr " statusEE8 == (SIGTRAP | (PTRACE_EVENT_VFORKEE8))\n" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.5.60)" msgstr "B (seit Linux 2.5.60)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Stop the tracee at the completion of the next B(2). A B(2) " "by the tracer will return a I value such that" msgstr "" "stoppt den verfolgten Prozess bei Vollendung des nächsten B(2). Ein " "B(2) durch den Verfolger wird einen Iwert wie diesen " "zurückgeben:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid " statusEE8 == (SIGTRAP | (PTRACE_EVENT_VFORK_DONEEE8))\n" msgstr " statusEE8 == (SIGTRAP | (PTRACE_EVENT_VFORK_DONEEE8))\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The PID of the new process can (since Linux 2.6.18) be retrieved with " "B." msgstr "" "Die PID des neuen Prozesses kann (seit Linux 2.6.18) abgefragt werden mit " #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 3.5)" msgstr "B (seit Linux 3.5)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Stop the tracee when a B(2) B rule is " "triggered. A B(2) by the tracer will return a I value " "such that" msgstr "" "stoppt den verfolgten Prozess, wenn eine B(2) B-" "Regel ausgelöst wird. Ein B(2) durch den Verfolger wird einen " "Iwert wie diesen zurückgeben:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid " statusEE8 == (SIGTRAP | (PTRACE_EVENT_SECCOMPEE8))\n" msgstr " statusEE8 == (SIGTRAP | (PTRACE_EVENT_SECCOMPEE8))\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "While this triggers a B stop, it is similar to a syscall-enter-" "stop. For details, see the note on B below. The " "seccomp event message data (from the B portion of the " "seccomp filter rule) can be retrieved with B." msgstr "" "Während dies ein B-Stopp auslöst, ist es einem " "Systemaufrufeintrittsstopp ähnlich. Für Details lesen Sie die Bemerkungen " "über B weiter unten. Die Seccomp-" "Ereignisnachrichtendaten (aus dem Abschnitt B der Seccomp-" "Filterregel) können über B ermittelt werden." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 4.3)" msgstr "B (seit Linux 4.3)" #. commit 13c4a90119d28cfcb6b5bdd820c233b86c2b0237 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Suspend the tracee's seccomp protections. This applies regardless of mode, " "and can be used when the tracee has not yet installed seccomp filters. That " "is, a valid use case is to suspend a tracee's seccomp protections before " "they are installed by the tracee, let the tracee install the filters, and " "then clear this flag when the filters should be resumed. Setting this " "option requires that the tracer have the B capability, not " "have any seccomp protections installed, and not have " "B set on itself." msgstr "" "setzt den Seccomp-Schutz des verfolgten Prozesses aus. Dies gilt unabhängig " "vom Modus und kann verwandt werden, wenn der verfolgte Prozess noch keine " "Seccomp-Filter installiert hat. Das bedeutet, dass ein gültiger " "Anwendungsfall darin besteht, den Seccomp-Schutz auszusetzen, bevor er von " "dem verfolgten Prozess installiert wird, dann den verfolgten Prozess die " "Filter installieren zu lassen und danach diesen Schalter wieder " "zurückzusetzen, wenn die Filter wiederaufgenommen werden sollen. Um diese " "Option zu setzen, muss der verfolgende Prozess über die Capability " "B verfügen, er darf selber keinen Seccomp-Schutz installiert " "haben und darf nicht B auf sich selbst setzen." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.5.46)" msgstr "B (seit Linux 2.5.46)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Retrieve a message (as an I) about the ptrace event that " "just happened, placing it at the address I in the tracer. For " "B, this is the tracee's exit status. For " "B, B, B, and " "B, this is the PID of the new process. For " "B, this is the B(2) filter's " "B associated with the triggered rule. (I is " "ignored.)" msgstr "" "fragt eine Nachricht (als I) über das Ptrace-Ereignis, das " "einfach so auftrat, ab und platziert es an die Adresse I im " "Verfolger. Für B ist dies der Exit-Status des verfolgten " "Prozesses. Für B, B und " "B ist dies die PID des neuen Prozesses. Für " "B ist das B von B(2)s " "Filter, das der ausgelösten Regel zugeordnet ist. (I wird " "ignoriert.)" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Restart the stopped tracee process. If I is nonzero, it is " "interpreted as the number of a signal to be delivered to the tracee; " "otherwise, no signal is delivered. Thus, for example, the tracer can " "control whether a signal sent to the tracee is delivered or not. (I " "is ignored.)" msgstr "" "startet den gestoppten, verfolgten Prozess erneut. Falls I nicht null " "ist, wird es als Nummer des Signals interpretiert, das an den verfolgten " "Prozess geschickt wird; andernfalls wird kein Signal geschickt. Dadurch kann " "der Verfolger zum Beispiel steuern, ob ein Signal an den verfolgten Prozess " "geschickt wird oder nicht. (I wird ignoriert.)" #. type: TP #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Restart the stopped tracee as for B, but arrange for the tracee " "to be stopped at the next entry to or exit from a system call, or after " "execution of a single instruction, respectively. (The tracee will also, as " "usual, be stopped upon receipt of a signal.) From the tracer's perspective, " "the tracee will appear to have been stopped by receipt of a B. So, " "for B, for example, the idea is to inspect the arguments to " "the system call at the first stop, then do another B and " "inspect the return value of the system call at the second stop. The I " "argument is treated as for B. (I is ignored.)" msgstr "" "startet den gestoppten, verfolgten Prozess wie für B, " "arrangiert aber, dass der verfolgte Prozess beim nächsten Eintritt oder " "einem Systemaufruf beziehungsweise nach der Ausführung einer einzelnen " "Anweisung gestoppt wird. (Der verfolgte Prozess wird auch, wie üblich, über " "den Empfang des Signals gestoppt.) Aus der Sicht des Verfolgers scheint es, " "als ob der verfolgte Prozess durch Empfang eines B gestoppt wurde. " "Daher gibt es zum Beispiel für B die Idee, beim ersten Stopp " "die Argumente des Systemaufrufs zu prüfen, dann einen anderen " "B zu schicken und den Rückgabewert des Systemaufrufs am " "zweiten Stopp zu prüfen. Das Argument I wird wie für B " "behandelt. (I wird ignoriert.)" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.6.16)" msgstr "B (seit Linux 2.6.16)" #. commit 3f471126ee53feb5e9b210ea2f525ed3bb9b7a7f #. As of 4.19-rc2 #. commit 27aa55c5e5123fa8b8ad0156559d34d7edff58ca #. see change_syscall in tools/testing/selftests/seccomp/seccomp_bpf.c #. and also strace's linux/*/set_scno.c files. #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "When in syscall-enter-stop, change the number of the system call that is " "about to be executed to the number specified in the I argument. The " "I argument is ignored. This operation is currently supported only on " "arm (and arm64, though only for backwards compatibility), but most other " "architectures have other means of accomplishing this (usually by changing " "the register that the userland code passed the system call number in)." msgstr "" "Wenn im Systemaufrufeintrittsstopp, wird die Nummer des auszuführenden " "Systemaufrufs auf die im Argument I angegebene Nummer geändert. Das " "Argument I wird ignoriert. Diese Aktion wird derzeit nur auf Arm (und " "Arm64, allerdings nur für die Rückwärtskompatibilität) unterstützt, aber die " "meisten anderen Architekturen haben andere Mittel, um dies zu erreichen " "(normalerweise durch Änderung des Registers, in dem der Code aus der " "Anwendungsebene die Nummer des Systemaufrufs übergab)." #. type: TP #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: TQ #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.6.14)" msgstr "B (seit Linux 2.6.14)" #. As at 3.7 #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "For B, continue and stop on entry to the next system call, " "which will not be executed. See the documentation on syscall-stops below. " "For B, do the same but also singlestep if not a " "system call. This call is used by programs like User Mode Linux that want " "to emulate all the tracee's system calls. The I argument is treated " "as for B. The I argument is ignored. These operations " "are currently supported only on x86." msgstr "" "für B beim nächsten Eintritt für den Systemaufruf, der nicht " "ausgeführt wird, fortfahren und stoppen. Siehe die Dokumentation zu " "Systemaufrufstopps weiter unten. Für B das gleiche " "tun, aber in einem einzigen Schritt, wenn es sich nicht um einen " "Systemaufruf handelt. Dieser Aufruf wird von Programmen wie »User Mode " "Linux« verwandt, die die Systemaufrufe des verfolgten Prozesses emulieren " "wollen. Das Argument I wird wie für B behandelt. Das " "Argument I wird ignoriert. Diese Aktionen werden derzeit nur unter " "x86 unterstützt." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 3.4)" msgstr "B (seit Linux 3.4)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Restart the stopped tracee, but prevent it from executing. The resulting " "state of the tracee is similar to a process which has been stopped by a " "B (or other stopping signal). See the \"group-stop\" subsection " "for additional information. B works only on tracees attached " "by B." msgstr "" "startet den gestoppten verfolgten Prozess erneut, verhindert jedoch seine " "Ausführung. Der resultierende Status ist dem eines Prozesses ähnlich, der " "durch ein B (oder ein anderes Stoppsignal) angehalten wurde. " "Zusätzliche Informationen finden Sie im Unterabschnitt »Gruppenstopp«. " "B funktioniert nur bei verfolgten Prozessen, die durch " "B angehängt wurden." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Send the tracee a B to terminate it. (I and I are " "ignored.)" msgstr "" "sendet dem verfolgten Prozess ein B, um ihn zu beenden. (I " "und I werden ignoriert.)" #. [Note from Denys Vlasenko: #. deprecation suggested by Oleg Nesterov. He prefers to deprecate it #. instead of describing (and needing to support) PTRACE_KILL's quirks.] #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "I Instead, send a B " "directly using B(2) or B(2). The problem with B " "is that it requires the tracee to be in signal-delivery-stop, otherwise it " "may not work (i.e., may complete successfully but won't kill the tracee). " "By contrast, sending a B directly has no such limitation." msgstr "" "I Senden Sie stattdessen " "ein B direkt mittels B(2) oder B(2). Das Problem bei " "B ist, dass es verlangt, dass sich der verfolgte Prozess in " "einem Signallieferstopp befindet, andernfalls funktioniert es möglicherweise " "nicht (d.h. es könnte komplett erfolgreich sein, würde aber den verfolgten " "Prozess killen). Im Gegensatz dazu hat das direkte Senden von einem " "B keine derartige Beschränkung." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 3.4)" msgstr "B (seit Linux 3.4)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Stop a tracee. If the tracee is running or sleeping in kernel space and " "B is in effect, the system call is interrupted and syscall-" "exit-stop is reported. (The interrupted system call is restarted when the " "tracee is restarted.) If the tracee was already stopped by a signal and " "B was sent to it, the tracee stops with B " "and I returns the stop signal. If any other ptrace-stop " "is generated at the same time (for example, if a signal is sent to the " "tracee), this ptrace-stop happens. If none of the above applies (for " "example, if the tracee is running in user space), it stops with " "B with I == B. " "B only works on tracees attached by B." msgstr "" "stoppt einen verfolgten Prozess. Falls der verfolgte Prozess im Kernel-Space " "läuft oder schläft und B in Kraft ist, wird der Systemaufruf " "unterbrochen und Systemaufrufbeendigungsstopp gemeldet. (Der unterbrochene " "Systemaufruf wird beim Neustart des verfolgten Prozesses ebenfalls neu " "gestartet.) Falls der verfolgte Prozess bereits durch ein Signal gestoppt " "und B an ihn gesendet wurde, stoppt der verfolgte Prozess mit " "B und I gibt das Stoppsignal zurück. " "Falls zur selben Zeit irgendein anderes »ptrace-stop« erzeugt wird (zum " "Beispiel, weil ein Signal an den verfolgten Prozess gesendet wird), tritt " "dieses »ptrace-stop« auf. Falls nichts von obigem zutrifft (zum Beispiel, " "weil der verfolgte Prozess im Anwendungsraum läuft), stoppt er mit " "B mit I == B. " "B funktioniert nur bei verfolgten Prozessen, die durch " "B angehängt wurden." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. No longer true (removed by Denys Vlasenko, 2011, who remarks: #. "I think it isn't true in non-ancient 2.4 and in Linux 2.6/3.x. #. Basically, it's not true for any Linux in practical use. #. ; the behavior of the tracee is as if it had done a #. .BR PTRACE_TRACEME . #. The calling process actually becomes the parent of the tracee #. process for most purposes (e.g., it will receive #. notification of tracee events and appears in #. .BR ps (1) #. output as the tracee's parent), but a #. .BR getppid (2) #. by the tracee will still return the PID of the original parent. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Attach to the process specified in I, making it a tracee of the calling " "process. The tracee is sent a B, but will not necessarily have " "stopped by the completion of this call; use B(2) to wait for the " "tracee to stop. See the \"Attaching and detaching\" subsection for " "additional information. (I and I are ignored.)" msgstr "" "hängt an den Prozess, der durch I angegeben wird, an und lässt ihn zum " "verfolgten Prozess des aufrufenden Prozesses werden. Dem verfolgten Prozess " "wird ein B gesandt, er wird aber nicht notwendigerweise durch die " "Vollendung dieses Aufrufs gestoppt; benutzen Sie B(2), um auf das " "Stoppen des verfolgten Prozesses zu warten. Lesen Sie den Unterabschnitt " "»Anhängen und Loslösen«, um zusätzliche Informationen zu erhalten. " "(I und I werden ignoriert.)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Permission to perform a B is governed by a ptrace access mode " "B check; see below." msgstr "" "Berechtigungen, ein B durchzuführen, werden durch eine Ptrace-" "Zugriffsmodus-B-Überprüfung geregelt; siehe " "unten." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 3.4)" msgstr "B (seit Linux 3.4)" #. Noted by Dmitry Levin: #. PTRACE_SEIZE was introduced by commit v3.1-rc1~308^2~28, but #. it had to be used along with a temporary flag PTRACE_SEIZE_DEVEL, #. which was removed later by commit v3.4-rc1~109^2~20. #. That is, [before] v3.4 we had a test mode of PTRACE_SEIZE API, #. which was not compatible with the current PTRACE_SEIZE API introduced #. in Linux 3.4. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Attach to the process specified in I, making it a tracee of the calling " "process. Unlike B, B does not stop the " "process. Group-stops are reported as B and " "I returns the stop signal. Automatically attached " "children stop with B and I returns " "B instead of having B signal delivered to them. " "B(2) does not deliver an extra B. Only a Bd " "process can accept B and B commands. The " "\"seized\" behavior just described is inherited by children that are " "automatically attached using B, B, " "and B. I must be zero. I contains a bit " "mask of ptrace options to activate immediately." msgstr "" "hängt an den zu dem in I angegebenen Prozess an, wodurch er ein " "verfolgter Prozess des aufrufenden Prozesses wird. Anders als " "B beendet B den Prozess nicht. Gruppenstopps " "werden als B berichtet und I liefert " "das Stopp-Signal zurück. Automatisch angehängte Kinder stoppen mit " "B und I liefert B zurück, " "statt ein B Signal geliefert zu bekommen. B(2) liefert kein " "zusätzliches B aus. Nur ein Prozess, der B ist, kann " "die Befehle B und B akzeptieren. Das gerade " "beschriebene »beschlagnahmte« (engl. »seized«) Verhalten wird von Kindern " "geerbt, die automatisch mittels B, " "B und B angehängt sind. I " "muss Null sein. I enthält eine Bitmaske, die die sofort zu " "aktivierenden Optionen enthält." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Permission to perform a B is governed by a ptrace access mode " "B check; see below." msgstr "" "Berechtigungen, ein B durchzuführen, werden durch eine Ptrace-" "Zugriffsmodus-B-Überprüfung geregelt; siehe " "unten." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 4.4)" msgstr "B (seit Linux 4.4)" #. commit f8e529ed941ba2bbcbf310b575d968159ce7e895 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This operation allows the tracer to dump the tracee's classic BPF filters." msgstr "" "Diese Aktion erlaubt es dem verfolgenden Prozess, die klassischen BPF-Filter " "des verfolgten Prozesses auszugeben." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "I is an integer specifying the index of the filter to be dumped. The " "most recently installed filter has the index 0. If I is greater than " "the number of installed filters, the operation fails with the error " "B." msgstr "" "I ist eine Ganzzahl, die den Index des Filters, der ausgegeben " "werden soll, angibt. Der neuste installierte Filter hat den Index 0. Falls " "I größer als die Anzahl der installierten Filter ist, schlägt die " "Aktion mit dem Fehler B fehl." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "I is either a pointer to a I array that is large " "enough to store the BPF program, or NULL if the program is not to be stored." msgstr "" "I ist entweder ein Zeiger auf ein Feld I, das " "groß genug ist, ein BPF-Programm zu speichern, oder NULL, falls das Programm " "nicht gespeichert werden soll." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Upon success, the return value is the number of instructions in the BPF " "program. If I was NULL, then this return value can be used to " "correctly size the I array passed in a subsequent call." msgstr "" "Im Erfolgsfall ist der Rückgabewert die Anzahl der Befehle in dem BPF-" "Programm. Falls I NULL war, dann kann dieser Rückgabewert benutzt " "werden, um in einem folgenden Aufruf die korrekte Größe des Feldes I zu übergeben." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This operation fails with the error B if the caller does not have " "the B capability or if the caller is in strict or filter " "seccomp mode. If the filter referred to by I is not a classic BPF " "filter, the operation fails with the error B." msgstr "" "Diese Aktion schlägt mit dem Fehler B fehl, falls der Aufrufende " "nicht die Capability B hat oder falls der Aufrufende in einem " "strikten oder Filter-Seccomp-Modus ist. Falls der durch I " "referenzierte Filter kein klassischer BPF-Filter ist, schlägt die Aktion mit " "dem Fehler B fehl." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This operation is available if the kernel was configured with both the " "B and the B options." msgstr "" "Diese Aktion ist verfügbar, falls der Kernel mit den Optionen " "B und B konfiguriert wurde." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Restart the stopped tracee as for B, but first detach from it. " "Under Linux, a tracee can be detached in this way regardless of which method " "was used to initiate tracing. (I is ignored.)" msgstr "" "startet den gestoppten, verfolgten Prozess wie für B, löst ihn " "aber zuerst vom Prozess ab. Unter Linux kann ein verfolgter Prozess auf " "diese Art abgelöst werden, ohne Rücksicht darauf zu nehmen, welche Methode " "zum Starten der Verfolgung benutzt wurde. (I wird ignoriert.)" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.6.0)" msgstr "B (seit Linux 2.6.0)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This operation performs a similar task to B(2). It reads " "the TLS entry in the GDT whose index is given in I, placing a copy of " "the entry into the I pointed to by I. (By contrast " "with B(2), the I of the I " "is ignored.)" msgstr "" "Diese Aktion führt eine ähnliche Aufgabe wie B(2) durch. " "Sie liest den TLS-Eintrag in dem GDT, dessen Index in I gegeben ist " "und legt eine Kopie des Eintrags in das durch I verwiesende I. (Im Gegensatz wird mit B(2) die I " "des I ignoriert.)" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 2.6.0)" msgstr "B (seit Linux 2.6.0)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This operation performs a similar task to B(2). It sets " "the TLS entry in the GDT whose index is given in I, assigning it the " "data supplied in the I pointed to by I. (By " "contrast with B(2), the I of the I is ignored; in other words, this ptrace operation can't be used " "to allocate a free TLS entry.)" msgstr "" "Diese Aktion führt eine ähnliche Aufgabe wie B(2) durch. " "Sie setzt den TLS-Eintrag in dem GDT, dessen Index in I gegeben " "ist, und weist ihm die in dem durch I verwiesenen I " "zu. (Im Gegensatz zu B(2) wird die I des " "I ignoriert; mit anderen Worten, diese Ptrace-Aktion kann " "nicht zur Bereitstellung eines freien TLS-Eintrags verwandt werden.)" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 5.3)" msgstr "B (seit Linux 5.3)" #. commit 201766a20e30f982ccfe36bebfad9602c3ff574a #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Retrieve information about the system call that caused the stop. The " "information is placed into the buffer pointed by the I argument, which " "should be a pointer to a buffer of type I. The " "I argument contains the size of the buffer pointed to by the I " "argument (i.e., I). The return value " "contains the number of bytes available to be written by the kernel. If the " "size of the data to be written by the kernel exceeds the size specified by " "the I argument, the output data is truncated." msgstr "" "Ermittelt Informationen über den Systemaufruf, der den Stopp ausgelöst hat. " "Die Information wird in den Puffer gelegt, auf den das Argument I " "zeigt, das ein Zeiger auf einen Puffer vom Typ I " "sein sollte. Das Argument I enthält die Größe des Puffers, auf den das " "Argument I zeigt (d.h. I). Der " "Rückgabewert enthält die Anzahl von Bytes, die zum Schreiben durch den " "Kernel verfügbar sind. Falls die Größe der durch den Kernel zu schreibenden " "Bytes die durch das Argument I angegebene Größe überschreiten sollte, " "wird die Ausgabe abgeschnitten." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The I structure contains the following fields:" msgstr "Die Struktur I enthält die folgenden Felder:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "struct ptrace_syscall_info {\n" " __u8 op; /* Type of system call stop */\n" " __u32 arch; /* AUDIT_ARCH_* value; see seccomp(2) */\n" " __u64 instruction_pointer; /* CPU instruction pointer */\n" " __u64 stack_pointer; /* CPU stack pointer */\n" " union {\n" " struct { /* op == PTRACE_SYSCALL_INFO_ENTRY */\n" " __u64 nr; /* System call number */\n" " __u64 args[6]; /* System call arguments */\n" " } entry;\n" " struct { /* op == PTRACE_SYSCALL_INFO_EXIT */\n" " __s64 rval; /* System call return value */\n" " __u8 is_error; /* System call error flag;\n" " Boolean: does rval contain\n" " an error value (-ERRCODE) or\n" " a nonerror return value? */\n" " } exit;\n" " struct { /* op == PTRACE_SYSCALL_INFO_SECCOMP */\n" " __u64 nr; /* System call number */\n" " __u64 args[6]; /* System call arguments */\n" " __u32 ret_data; /* SECCOMP_RET_DATA portion\n" " of SECCOMP_RET_TRACE\n" " return value */\n" " } seccomp;\n" " };\n" "};\n" msgstr "" "struct ptrace_syscall_info {\n" " __u8 op; /* Typ des Systemaufruf-Stopps */\n" " __u32 arch; /* AUDIT_ARCH_*-Wert; siehe seccomp(2) */\n" " __u64 instruction_pointer; /* CPU-Anweisungszeiger */\n" " __u64 stack_pointer; /* CPU-Stack-Zeiger */\n" " union {\n" " struct { /* op == PTRACE_SYSCALL_INFO_ENTRY */\n" " __u64 nr; /* Systemaufrufnummer */\n" " __u64 args[6]; /* Systemaufrufargumente */\n" " } entry;\n" " struct { /* op == PTRACE_SYSCALL_INFO_EXIT */\n" " __s64 rval; /* Systemaufruf-Rückgabewert */\n" " __u8 is_error; /* Systemaufruf-Fehlerschalter;\n" " logisch: enthält rval einen\n" " Fehlerwert (-ERRCODE) oder\n" " einen nichtfehler-Rückgabewert? */\n" " } exit;\n" " struct { /* op == PTRACE_SYSCALL_INFO_SECCOMP */\n" " __u64 nr; /* Systemaufrufnummer */\n" " __u64 args[6]; /* Systemaufrufargumente */\n" " __u32 ret_data; /* SECCOMP_RET_DATA-Anteil\n" " vom SECCOMP_RET_TRACE-\n" " Rückgabewert */\n" " } seccomp;\n" " };\n" "};\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I, I, I, and I fields are " "defined for all kinds of ptrace system call stops. The rest of the " "structure is a union; one should read only those fields that are meaningful " "for the kind of system call stop specified by the I field." msgstr "" "Die Felder I, I, I und I sind " "für alle Arten von Ptrace-Systemaufrufstopps definiert. Der Rest der " "Struktur ist eine Union; Sie sollten nur solche Felder lesen, die für Ihre " "Art von Systemaufrufstopp durch das Feld I definiert sind." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I field has one of the following values (defined in Ilinux/" "ptrace.hE>) indicating what type of stop occurred and which part of the " "union is filled:" msgstr "" "Das Feld I enthält einen der folgenden Werte (definiert in Ilinux/" "ptrace.hE>), der anzeigt, welcher Stopp-Typ aufgetreten und welcher Teil " "der Union gefüllt ist:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I component of the union contains information relating to a " "system call entry stop." msgstr "" "Die Komponente I der Union enthält Informationen mit Bezug zu einem " "Systemaufruf-Eintrags-Stopp." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I component of the union contains information relating to a system " "call exit stop." msgstr "" "Die Komponente I der Union enthält Informationen mit Bezug zu einem " "Systemaufruf-Exit-Stopp." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I component of the union contains information relating to a " "B stop." msgstr "" "Die Komponente I der Union enthält Informationen mit Bezug zu einem " "B-Stopp" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "No component of the union contains relevant information." msgstr "Keine Komponente der Union enthält relevante Informationen." #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "" "In case of system call entry or exit stops, the data returned by " "B is limited to type B " "unless B option is set before the corresponding " "system call stop has occurred." msgstr "" "Falls der Systemaufrufeintritt oder -ausstieg beendet wird, werden die von " "B zurückgelieferten Daten auf den Typ " "B eingeschränkt, außer die Option " "B wurde gesetzt, bevor die Beendigung des " "Systemaufrufs aufgetreten ist." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Death under ptrace" msgstr "Tod unter Ptrace" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When a (possibly multithreaded) process receives a killing signal (one whose " "disposition is set to B and whose default action is to kill the " "process), all threads exit. Tracees report their death to their tracer(s). " "Notification of this event is delivered via B(2)." msgstr "" "Wenn ein Prozess (der möglicherweise aus mehreren Threads besteht) ein " "tötendes Signal erhält (eines, dessen Zuordnung auf B gesetzt ist " "und dessen Standardaktion das Töten des Prozesses ist) werden alle Threads " "beendet. Verfolgte Prozesse melden ihren Tod an ihre(n) Verfolger. Die " "Benachrichtigung über dieses Ereignis wird über B(2) zugestellt." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Note that the killing signal will first cause signal-delivery-stop (on one " "tracee only), and only after it is injected by the tracer (or after it was " "dispatched to a thread which isn't traced), will death from the signal " "happen on I tracees within a multithreaded process. (The term \"signal-" "delivery-stop\" is explained below.)" msgstr "" "Beachten Sie, dass das killende Signal zuerst einen Signallieferstopp (auf " "nur einen verfolgten Prozess) verursachen wird und nur nachdem es durch den " "Verfolger eingespeist wurde (oder nachdem es an einen nicht verfolgten " "Thread versandt wurde), wird der Tod von dem Signal auf I verfolgten " "Prozesse innerhalb eines Prozesses mit mehreren Threads ausgehen. (Der " "Begriff »Signallieferstopp« wird nachfolgend erklärt.)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B does not generate signal-delivery-stop and therefore the tracer " "can't suppress it. B kills even within system calls (syscall-exit-" "stop is not generated prior to death by B). The net effect is that " "B always kills the process (all its threads), even if some threads " "of the process are ptraced." msgstr "" "B erzeugt keinen »Signallieferstopp«. Daher kann der Verfolger es " "nicht unterdrücken. B killt sogar innerhalb von Systemaufrufen (der " "Systemaufrufbeendigungsstopp wird nicht vorrangig vor dem Tod durch " "B erzeugt). Der reine Effekt besteht darin, dass B den " "Prozess (all seine Threads) immer killt, sogar dann, wenn einige Threads des " "Prozesses verfolgt werden." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When the tracee calls B<_exit>(2), it reports its death to its tracer. " "Other threads are not affected." msgstr "" "Wenn der verfolgte Prozess B<_exit>(2) aufruft, meldet er seinem Verfolger " "seinen Tod. Andere Threads werden nicht beeinflusst." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When any thread executes B(2), every tracee in its thread group " "reports its death to its tracer." msgstr "" "Wenn irgendein Thread B(2) ausführt, meldet jeder verfolgte " "Prozess in dessen Gruppe seinen Tod an den Verfolger." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the B option is on, B will happen " "before actual death. This applies to exits via B(2), " "B(2), and signal deaths (except B, depending on the " "kernel version; see BUGS below), and when threads are torn down on " "B(2) in a multithreaded process." msgstr "" "Falls die Option B aktiv ist, wird B " "vor dem tatsächlichen Tod auftreten. Dies wird angewandt, um mittels " "B(2), B(2) und Todessignalen (ausgenommen B, " "abhängig von der Kernel-Version, siehe FEHLER unten) zu beenden und wenn " "Threads bei B(2) in einem Prozess mit mehreren Threads zerrissen " "werden." #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "The tracer cannot assume that the ptrace-stopped tracee exists. There are " "many scenarios when the tracee may die while stopped (such as B). " "Therefore, the tracer must be prepared to handle an B error on any " "ptrace operation. Unfortunately, the same error is returned if the tracee " "exists but is not ptrace-stopped (for commands which require a stopped " "tracee), or if it is not traced by the process which issued the ptrace " "call. The tracer needs to keep track of the stopped/running state of the " "tracee, and interpret B as \"tracee died unexpectedly\" only if it " "knows that the tracee has been observed to enter ptrace-stop. Note that " "there is no guarantee that I will reliably report the " "tracee's death status if a ptrace operation returned B. " "I may return 0 instead. In other words, the tracee may be " "\"not yet fully dead\", but already refusing ptrace operations." msgstr "" "Der Verfolger kann nicht abschätzen, ob der von Ptrace gestoppte Prozess " "existiert. Es gibt mehrere Szenarien, in denen der verfolgte Prozess sterben " "kann, während er gestoppt ist (wie B). Daher muss der Verfolger " "vorbereitet werden, bei allen Ptrace-Aktionen einen B-Fehler zu " "handhaben. Leider wird der gleiche Fehler zurückgegeben, falls der verfolgte " "Prozess existiert, aber nicht von Ptrace gestoppt wurde (für Befehle, die " "einen gestoppten, verfolgten Prozess erfordern) oder falls er nicht durch " "den Prozess verfolgt wird, der den Ptrace-Aufruf abschickte. Der Verfolger " "muss den Überblick über den »laufend«-/»gestoppt«-Status des verfolgten " "Prozesses behalten und B nur dann als »verfolgter Prozess starb " "unerwartet« interpretieren, falls er weiß, dass der verfolgte Prozess " "beobachtet wurde, um in einen Ptrace-Stopp einzutreten. Beachten Sie, dass " "es keine Garantie gibt, dass I zuverlässig den Todesstatus " "des verfolgten Prozesses meldet, falls eine Ptrace-Aktion B " "zurückgibt. I könnte stattdessen 0 zurückgeben. In anderen " "Worten kann es sein, dass der verfolgte Prozess »noch nicht vollständig tot« " "ist, aber bereits Ptrace-Aktionen ablehnt." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The tracer can't assume that the tracee I ends its life by reporting " "I or I; there are cases where this " "does not occur. For example, if a thread other than thread group leader " "does an B(2), it disappears; its PID will never be seen again, and " "any subsequent ptrace stops will be reported under the thread group leader's " "PID." msgstr "" "Der Verfolger kann nicht abschätzen, ob der verfolgte Prozess I sein " "Leben durch Melden von I oder I " "aushaucht. Es gibt Fälle, in denen dies nicht geschieht. Falls ein Thread, " "der nicht führender Thread der Thread-Gruppe ist, zum Beispiel ein " "B(2) ausführt, verschwindet er; seine PID wird nie wieder gesehen " "und alle nachfolgenden Ptrace-Stopps werden unter der PID des führenden " "Threads der Thread-Gruppe gemeldet." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Stopped states" msgstr "Gestoppt-Status" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A tracee can be in two states: running or stopped. For the purposes of " "ptrace, a tracee which is blocked in a system call (such as B(2), " "B(2), etc.) is nevertheless considered to be running, even if the " "tracee is blocked for a long time. The state of the tracee after " "B is somewhat of a gray area: it is not in any ptrace-stop " "(ptrace commands won't work on it, and it will deliver B(2) " "notifications), but it also may be considered \"stopped\" because it is not " "executing instructions (is not scheduled), and if it was in group-stop " "before B, it will not respond to signals until B is " "received." msgstr "" "Ein verfolgter Prozess kann zwei Status haben: laufend oder gestoppt. Für " "die Zwecke von Ptrace wird ein durch einen Systemaufruf (wie B(2), " "B(2), etc.) blockierter verfolgter Prozess dennoch als laufend " "betrachtet, sogar, wenn der verfolgte Prozess für lange Zeit blockiert ist. " "Der Status des verfolgten Prozesses nach B ist eine Grauzone: " "Er ist nicht in einem Ptrace-Stopp (Ptrace-Befehle funktionieren nicht bei " "ihm und er wird B(2)-Benachrichtigungen übermitteln), aber er kann " "auch als »gestoppt« angesehen werden, da er keine Anweisungen ausführt (ist " "nicht eingeplant) und falls er vor B in einem Gruppenstopp " "war, wird er nicht auf Signale antworten, bis er B empfängt." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "There are many kinds of states when the tracee is stopped, and in ptrace " "discussions they are often conflated. Therefore, it is important to use " "precise terms." msgstr "" "Es gibt viele Arten von Status, wenn ein verfolgter Prozess gestoppt wurde " "und in Ptrace-Diskussionen werden sie oft durcheinandergebracht. Daher ist " "es wichtig, präzise Begriffe zu verwenden." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "In this manual page, any stopped state in which the tracee is ready to " "accept ptrace commands from the tracer is called I. Ptrace-" "stops can be further subdivided into I, I, " "I, I, and so on. These stopped states are " "described in detail below." msgstr "" "In dieser Handbuchseite wird jeder Gestoppt-Status, in dem der verfolgte " "Prozess bereit ist, Ptrace-Befehle vom Verfolger zu akzeptieren, I genannt. Ptrace-Stopps können weiter in I, " "I, I und so fort unterteilt werden. Diese " "gestoppten Status werden nachfolgend im Detail beschrieben." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When the running tracee enters ptrace-stop, it notifies its tracer using " "B(2) (or one of the other \"wait\" system calls). Most of this " "manual page assumes that the tracer waits with:" msgstr "" "Wenn der laufende, verfolgte Prozess in Ptrace-Stopp eintritt, " "benachrichtigt er seinen Verfolger mittels B(2) (oder einem anderen " "der »wait«-Systemaufrufe). Meistens geht diese Handbuchseite davon aus, dass " "der Verfolger wartet mit:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "pid = waitpid(pid_or_minus_1, &status, __WALL);\n" msgstr "PID = waitpid(PID_ODER_Minus1, &status, __WALL);\n" #. Denys Vlasenko: #. Do we require __WALL usage, or will just using 0 be ok? (With 0, #. I am not 100% sure there aren't ugly corner cases.) Are the #. rules different if user wants to use waitid? Will waitid require #. WEXITED? #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Ptrace-stopped tracees are reported as returns with I greater than 0 " "and I true." msgstr "" "Mit Ptrace-Stopp angehaltene, verfolgte Prozesse werden als Rückgaben mit " "I größer als 0 und »I true« gemeldet." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B<__WALL> flag does not include the B and B flags, " "but implies their functionality." msgstr "" "Der Schalter B<__WALL> enthält nicht die Schalter B und " "B, impliziert aber ihre Funktionalität." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Setting the B flag when calling B(2) is not " "recommended: the \"continued\" state is per-process and consuming it can " "confuse the real parent of the tracee." msgstr "" "Es wird nicht empfohlen, den Schalter B zu setzen, wenn " "B(2) aufgerufen wird: Der Status »continued« gilt pro Prozess und " "ihn zu verbrauchen, kann den echten Elternprozess des verfolgten Prozesses " "verwirren." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Use of the B flag may cause B(2) to return 0 (\"no wait " "results available yet\") even if the tracer knows there should be a " "notification. Example:" msgstr "" "Die Benutzung des Schalters B könnte B(2) veranlassen, 0 " "zurückzugeben (»noch keine Warteergebnisse verfügbar«), sogar dann, wenn der " "Verfolger weiß, dass dort eine Benachrichtigung sein soll. Beispiel:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "errno = 0;\n" "ptrace(PTRACE_CONT, pid, 0L, 0L);\n" "if (errno == ESRCH) {\n" " /* tracee is dead */\n" " r = waitpid(tracee, &status, __WALL | WNOHANG);\n" " /* r can still be 0 here! */\n" "}\n" msgstr "" "errno = 0;\n" "ptrace(PTRACE_CONT, pid, 0L, 0L);\n" "if (errno == ESRCH) {\n" " /* verfolgter Prozess ist tot */\n" " r = waitpid(tracee, &status, __WALL | WNOHANG);\n" " /* r kann hier immer noch 0 sein! */\n" "}\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The following kinds of ptrace-stops exist: signal-delivery-stops, group-" "stops, B stops, syscall-stops. They all are reported by " "B(2) with I true. They may be differentiated " "by examining the value IE8>, and if there is ambiguity in " "that value, by querying B. (Note: the " "I macro can't be used to perform this examination, because " "it returns the value I<(statusEE8)\\ &\\ 0xff>.)" msgstr "" "Die folgenden Arten von Ptrace-Stopps existieren: Signallieferstopps, " "Gruppenstopps, B-Stopps und Systemaufrufstopps. Sie alle " "werden von B(2) mit »I true« gemeldet. Sie " "könnten durch Untersuchen des Wertes IE8> unterschieden " "werden und, falls es eine Unklarheit im Wert gibt, durch Abfragen von " "B. (Hinweis: Das Makro I kann nicht für " "diese Untersuchung verwandt werden, da es den Wert I<(statusEE8)\\ " "&\\ 0xff> zurückgibt.)" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Signal-delivery-stop" msgstr "Signallieferstopp" #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "When a (possibly multithreaded) process receives any signal except " "B, the kernel selects an arbitrary thread which handles the " "signal. (If the signal is generated with B(2), the target thread " "can be explicitly selected by the caller.) If the selected thread is " "traced, it enters signal-delivery-stop. At this point, the signal is not " "yet delivered to the process, and can be suppressed by the tracer. If the " "tracer doesn't suppress the signal, it passes the signal to the tracee in " "the next ptrace restart operation. This second step of signal delivery is " "called I in this manual page. Note that if the signal is " "blocked, signal-delivery-stop doesn't happen until the signal is unblocked, " "with the usual exception that B can't be blocked." msgstr "" "Wenn ein Prozess (möglicherweise mit mehreren Threads) ein Signal außer " "B empfängt, wählt der Kernel einen beliebigen Thread aus, der das " "Signal handhabt. (Falls das Signal mit B(2) erzeugt wurde, kann der " "Ziel-Thread explizit durch den Aufrufenden ausgewählt werden.) Falls der " "ausgewählte Thread verfolgt wird, tritt er in einen Signallieferstopp ein. " "An diesem Punkt wird das Signal noch nicht an den Prozess zugestellt und " "kann durch den Verfolger unterdrückt werden. Falls der Verfolger das Signal " "nicht unterdrückt, übergibt er das Signal bei der nächsten Ptrace-" "Neustartaktion an den verfolgten Prozess. Dieser zweite Schritt der " "Signalzustellung wird in dieser Handbuchseite I genannt. " "Beachten Sie, dass, falls das Signal blockiert ist, der Signallieferstopp " "nicht auftritt, bis die Blockade des Signals aufgehoben wurde, mit der " "üblichen Ausnahme, dass B nicht blockiert werden kann." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Signal-delivery-stop is observed by the tracer as B(2) returning " "with I true, with the signal returned by " "I. If the signal is B, this may be a different " "kind of ptrace-stop; see the \"Syscall-stops\" and \"execve\" sections below " "for details. If I returns a stopping signal, this may be " "a group-stop; see below." msgstr "" "Der Signallieferstopp wird vom Verfolger als B(2) beobachtet und " "kehrt mit »I true« mit dem Signal zurück, das von " "I zurückgegeben wurde. Falls das Signal B ist, " "könnte dies eine andere Art eines Ptrace-Stopps sein; Einzelheiten finden " "Sie in den Abschnitten »Systemaufrufstopps« und »execve« unterhalb. Falls " "I ein stoppendes Signal zurückgibt, könnte dies ein " "Gruppenstopp sein; siehe unten." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Signal injection and suppression" msgstr "Signaleinspeisung und -unterdrückung" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "After signal-delivery-stop is observed by the tracer, the tracer should " "restart the tracee with the call" msgstr "" "Nachdem der Signallieferstopp durch den Verfolger beobachtet wurde, sollte " "der Verfolger den verfolgten Prozess mit dem Aufruf" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ptrace(PTRACE_restart, pid, 0, sig)\n" msgstr "ptrace(PTRACE_restart, PID, 0, Signal)\n" #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "where B is one of the restarting ptrace operations. If " "I is 0, then a signal is not delivered. Otherwise, the signal I " "is delivered. This operation is called I in this manual " "page, to distinguish it from signal-delivery-stop." msgstr "" "neu starten, wobei B einer der neu startenden Ptrace-Aktion " "ist. Falls I 0 ist, wird das Signal nicht zugestellt. Andernfalls " "wird das Signal I zugestellt. Diese Aktion wird in dieser " "Handbuchseite I genannt, um sie vom Signallieferstopp zu " "unterscheiden." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The I value may be different from the I value: the " "tracer can cause a different signal to be injected." msgstr "" "Der Iwert kann sich vom Wert I unterschieden: Der " "Verfolger kann veranlassen, dass ein anderes Signal eingespeist wird." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Note that a suppressed signal still causes system calls to return " "prematurely. In this case, system calls will be restarted: the tracer will " "observe the tracee to reexecute the interrupted system call (or " "B(2) system call for a few system calls which use a " "different mechanism for restarting) if the tracer uses B. " "Even system calls (such as B(2)) which are not restartable after " "signal are restarted after signal is suppressed; however, kernel bugs exist " "which cause some system calls to fail with B even though no " "observable signal is injected to the tracee." msgstr "" "Beachten Sie, dass ein unterdrücktes Signal immer noch Systemaufrufe " "verursacht, um vorzeitig zurückzukehren. In diesem Fall werden Systemaufrufe " "neu gestartet: Der Verfolger wird den verfolgten Prozess beobachten, um den " "unterbrochenen Systemaufruf neu auszuführen (oder den Systemaufruf " "B(2) für wenige Systemaufrufe, die unterschiedliche " "Mechanismen zum erneuten Starten verwenden), falls der Verfolger " "B benutzt. Sogar Systemaufrufe (wie B(2)), die nach " "einem Signal nicht mehr neu startbar sind, werden nach dem Unterdrücken des " "Signals neu gestartet werden. Es existieren jedoch einige Kernelfehler, die " "zum Fehlschlagen einiger Systemaufrufe mit B führen, sogar, wenn kein " "beobachtbares Signal in den verfolgten Prozess eingespeist wurde." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Restarting ptrace commands issued in ptrace-stops other than signal-delivery-" "stop are not guaranteed to inject a signal, even if I is nonzero. No " "error is reported; a nonzero I may simply be ignored. Ptrace users " "should not try to \"create a new signal\" this way: use B(2) " "instead." msgstr "" "Es wird nicht garantiert, dass beim Neustarten von Ptrace-Befehlen, die in " "anderen Ptrace-Stopps als Signallieferstopps angestoßen wurden,ein Signal " "eingespeist wird, nicht einmal, wenn I nicht Null ist. Es wird kein " "Fehler gemeldet; ein I ungleich Null könnte einfach ignoriert " "werden. Ptrace-Benutzer sollten nicht versuchen, auf diese Art »ein neues " "Signal zu erzeugen«: Benutzen Sie stattdessen B(2)." #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "The fact that signal injection operations may be ignored when restarting the " "tracee after ptrace stops that are not signal-delivery-stops is a cause of " "confusion among ptrace users. One typical scenario is that the tracer " "observes group-stop, mistakes it for signal-delivery-stop, restarts the " "tracee with" msgstr "" "Die Tatsache, dass Signaleinspeisungsaktionen beim erneuten Starten des " "verfolgten Prozesses nach Ptrace-Stopps, die keine Signallieferstopps sind, " "ignoriert werden können, ist ein Grund für Verwirrung bei Ptrace-Benutzern. " "Ein typisches Szenario ist, dass der Verfolger Gruppenstopps beobachtet, sie " "fälschlicherweise für Signallieferstopps hält und den verfolgen Prozess mit" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ptrace(PTRACE_restart, pid, 0, stopsig)\n" msgstr "ptrace(PTRACE_restart, PID, 0, Stoppsignal)\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "with the intention of injecting I, but I gets ignored and " "the tracee continues to run." msgstr "" "neu startet mit der Absicht I einzuspeisen, I aber " "ignoriert wird und der verfolgte Prozess weiter läuft." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B signal has a side effect of waking up (all threads of) a " "group-stopped process. This side effect happens before signal-delivery-" "stop. The tracer can't suppress this side effect (it can only suppress " "signal injection, which only causes the B handler to not be " "executed in the tracee, if such a handler is installed). In fact, waking up " "from group-stop may be followed by signal-delivery-stop for signal(s) " "I B, if they were pending when B was " "delivered. In other words, B may be not the first signal observed " "by the tracee after it was sent." msgstr "" "Das Signal B hat einen Seiteneffekt, dass es einen Prozess im " "Gruppenstopp (alle Threads davon) aufweckt. Dieser Seiteneffekt tritt vor " "dem Signallieferstopp auf. Der Verfolger kann diesen Seiteneffekt nicht " "unterdrücken (er kann nur Signaleinspeisung unterdrücken, was nur dazu " "führt, dass die B-Handhabung nicht im verfolgten Prozess ausgeführt " "wird, falls eine solche Handhabung installiert ist). Tatsächlich könnte dem " "Aufwecken aus den Gruppenstopp ein Signallieferstopp für I Signale " "als B folgen, falls sie ausstehen, wenn B gesandt wurde. " "In anderen Worten könnte es sein, dass B nicht das erste durch den " "Verfolger beobachtete Signal ist, nachdem es gesandt wurde." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Stopping signals cause (all threads of) a process to enter group-stop. This " "side effect happens after signal injection, and therefore can be suppressed " "by the tracer." msgstr "" "Stoppen von Signalen führt dazu, das ein Prozess (alle Threads davon) in " "einen Gruppenstopp eintritt. Dieser Seiteneffekt tritt nach der " "Signaleinspeisung auf und kann daher durch den Verfolger unterdrückt werden." # #. In the Linux 2.4 sources, in arch/i386/kernel/signal.c::do_signal(), #. there is: #. /* The debugger continued. Ignore SIGSTOP. */ #. if (signr == SIGSTOP) #. continue; #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "In Linux 2.4 and earlier, the B signal can't be injected." msgstr "" "In Linux 2.4 und älter kann das Signal B nicht eingespeist werden." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B can be used to retrieve a I structure which " "corresponds to the delivered signal. B may be used to " "modify it. If B has been used to alter I, the " "I field and the I parameter in the restarting command must " "match, otherwise the result is undefined." msgstr "" "B kann benutzt werden, um eine I-Struktur zu " "erhalten, die dem gesandten Signal entspricht. B kann " "benutzt werden, um es zu verändern. Falls B benutzt " "wurde, um I zu verändern, müssen das Feld I und der " "Parameter I im Befehl zum Neustart übereinstimmen, andernfalls ist " "das Ergebnis undefiniert." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Group-stop" msgstr "Gruppenstopp" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When a (possibly multithreaded) process receives a stopping signal, all " "threads stop. If some threads are traced, they enter a group-stop. Note " "that the stopping signal will first cause signal-delivery-stop (on one " "tracee only), and only after it is injected by the tracer (or after it was " "dispatched to a thread which isn't traced), will group-stop be initiated on " "I tracees within the multithreaded process. As usual, every tracee " "reports its group-stop separately to the corresponding tracer." msgstr "" "Wenn ein Prozess (der möglicherweise aus mehreren Threads besteht) ein " "Stoppsignal empfängt, werden alle Threads gestoppt. Falls einige Threads " "verfolgt werden, treten sie in eine Thread-Gruppe ein. Beachten Sie, dass " "das Stoppsignal zuerst einen Signallieferstopp verursachen wird (nur auf den " "verfolgten Prozess) und nur, nachdem es durch den Verfolger eingespeist " "wurde (oder nachdem es an einen Thread geschickt wurde, der nicht verfolgt " "wird), wird der Gruppenstopp auf I verfolgten Prozesse innerhalb eines " "Prozesses aus mehreren Threads eingeleitet. Wie üblich meldet jeder " "verfolgte Prozess seinen Gruppenstopp separat an den entsprechenden " "Verfolger." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Group-stop is observed by the tracer as B(2) returning with " "I true, with the stopping signal available via " "I. The same result is returned by some other classes of " "ptrace-stops, therefore the recommended practice is to perform the call" msgstr "" "Der Gruppenstopp wird vom Verfolger als B(2) beobachtet und kehrt " "mit »I true« mit dem Stoppsignal zurück, das über " "I verfügbar ist. Dasselbe Ergebnis wird von einigen " "anderen Klassen von Ptrace-Stopps zurückgegeben, daher ist die empfohlene " "Vorgehensweise, folgenden Aufruf zu tätigen:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ptrace(PTRACE_GETSIGINFO, pid, 0, &siginfo)\n" msgstr "ptrace(PTRACE_GETSIGINFO, PID, 0, &siginfo)\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The call can be avoided if the signal is not B, B, " "B, or B; only these four signals are stopping signals. If " "the tracer sees something else, it can't be a group-stop. Otherwise, the " "tracer needs to call B. If B fails " "with B, then it is definitely a group-stop. (Other failure codes " "are possible, such as B (\"no such process\") if a B killed " "the tracee.)" msgstr "" "Der Aufruf kann vermieden werden, falls das Signal nicht B, " "B, B oder B ist. Nur diese vier Signale sind " "Stoppsignale. Falls der Verfolger etwas anderes sieht, kann es kein " "Gruppenstopp sein. Andernfalls benötigt der Verfolger den Aufruf " "B. Falls B mit B fehlschlägt, " "ist es definitiv ein Gruppenstopp. (Andere Fehlerkodes wie B (»kein " "derartiger Prozess«) sind möglich, falls ein B den verfolgten " "Prozess gekillt hat." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If tracee was attached using B, group-stop is indicated by " "B: IE16 == PTRACE_EVENT_STOP>. This " "allows detection of group-stops without requiring an extra " "B call." msgstr "" "Falls ein verfolgter Prozess mittels B angehängt wurde, wird " "ein Gruppenstopp durch B angezeigt: IE16 " "== PTRACE_EVENT_STOP>. Dies ermöglicht, einen Gruppenstopp festzustellen, " "ohne dass ein zusätzlicher B-Aufruf erforderlich ist." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "As of Linux 2.6.38, after the tracer sees the tracee ptrace-stop and until " "it restarts or kills it, the tracee will not run, and will not send " "notifications (except B death) to the tracer, even if the tracer " "enters into another B(2) call." msgstr "" "Ab Linux 2.6.38 wird der verfolgte Prozess, nachdem der Verfolger den Ptrace-" "Stopp des verfolgten Prozesses sieht und bis er neu startet oder ihn killt, " "nicht laufen und keine Benachrichtigungen an den Verfolger senden (außer dem " "Tod durch B), nicht einmal, wenn der Verfolger in einen anderen " "B(2)-Aufruf gelangt." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The kernel behavior described in the previous paragraph causes a problem " "with transparent handling of stopping signals. If the tracer restarts the " "tracee after group-stop, the stopping signal is effectively ignored\\[em]the " "tracee doesn't remain stopped, it runs. If the tracer doesn't restart the " "tracee before entering into the next B(2), future B " "signals will not be reported to the tracer; this would cause the B " "signals to have no effect on the tracee." msgstr "" "Das im vorhergehenden Absatz beschriebene Verhalten verursacht ein Problem " "bei transparenter Behandlung von Stoppsignalen. Falls der Verfolger den " "verfolgten Prozess nach einem Gruppenstopp neu startet, wird das Stoppsignal " "effektiv ignoriert – der verfolgte Prozess bleibt nicht gestoppt, er läuft. " "Falls der Verfolger den verfolgten Prozess neu startet, bevor er in das " "nächste B(2) eintritt, werden zukünftige B-Signale nicht " "an den Verfolger gemeldet. Dies würde dazu führen, dass die B-" "Signale keine Auswirkungen auf den verfolgten Prozess haben." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Since Linux 3.4, there is a method to overcome this problem: instead of " "B, a B command can be used to restart a tracee " "in a way where it does not execute, but waits for a new event which it can " "report via B(2) (such as when it is restarted by a B)." msgstr "" "Seit Linux 3.4 gibt es eine Methode, die dieses Problem bewältigt: Statt " "B kann ein B-Befehl zum Neustart eines " "verfolgten Prozesses auf eine Weise benutzt werden, die ihn nicht ausführt, " "aber auf ein neues Ereignis wartet, das er über B(2) melden kann, " "wenn er zum Beispiel mit B neu gestartet wird." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "PTRACE_EVENT stops" msgstr "PTRACE_EVENT-Stopps" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the tracer sets B options, the tracee will enter ptrace-" "stops called B stops." msgstr "" "Falls der Verfolger B-Optionen setzt, wird der verfolgte " "Prozess in B-Stopps genannte Stopps gelangen." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B stops are observed by the tracer as B(2) returning " "with I, and I returns B (or " "for B, returns the stopping signal if tracee is in a " "group-stop). An additional bit is set in the higher byte of the status " "word: the value IE8> will be" msgstr "" "B-Stopps werden durch den Verfolger als B(2) " "beobachtet, kehren mit I zurück und I " "gibt B zurück (oder für B: gibt das Stopp-Signal " "zurück, falls der verfolgte Prozess in einem Gruppen-Stopp ist). Es wird ein " "zusätzliches Bit in das höhere Bit des Status (Datentyp Word) gesetzt: Der " "Wert IE8> wird wie folgt sein:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "((PTRACE_EVENT_fooEE8) | SIGTRAP).\n" msgstr "((PTRACE_EVENT_fooEE8) | SIGTRAP).\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The following events exist:" msgstr "Es gibt die folgenden Ereignisse:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Stop before return from B(2) or B(2) with the B " "flag. When the tracee is continued after this stop, it will wait for child " "to exit/exec before continuing its execution (in other words, the usual " "behavior on B(2))." msgstr "" "stoppt vor dem Zurückkehren von B(2) oder B(2) mit dem " "Schalter B. Wenn der verfolgte Prozess nach diesem Stopp " "fortgeführt wird, wird er auf das Beenden/Ausführen des Kindprozesses " "warten, bevor er mit seiner Ausführung fortfährt (in anderen Worten, das " "übliche Verhalten auf B(2))." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Stop before return from B(2) or B(2) with the exit signal set " "to B." msgstr "" "stoppt vor dem Zurückkehren von B(2) oder B(2) mit dem auf " "B gesetzten Beendigungssignal." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Stop before return from B(2)." msgstr "stoppt vor dem Zurückkehren von B(2)." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Stop before return from B(2) or B(2) with the B " "flag, but after the child unblocked this tracee by exiting or execing." msgstr "" "stoppt vor dem Zurückkehren von B(2) oder B(2) mit dem " "Schalter B, aber nachdem die Blockade dieses verfolgten " "Prozesses durch Beenden oder Ausführung aufgehoben wurde." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For all four stops described above, the stop occurs in the parent (i.e., the " "tracee), not in the newly created thread. B can be used " "to retrieve the new thread's ID." msgstr "" "Für alle vier oben beschriebenen Stopps tritt der Stopp im Elternprozess auf " "(d.h. im verfolgenden Prozess), nicht im neu erstellten Thread. " "B kann benutzt werden, um die Kennung des neuen Threads " "zu erhalten." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Stop before return from B(2). Since Linux 3.0, " "B returns the former thread ID." msgstr "" "stoppt vor dem Zurückkehren von B(2). Ab Linux 3.0, gibt " "B die vorherige Thread-Kennung zurück." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Stop before exit (including death from B(2)), signal death, or " "exit caused by B(2) in a multithreaded process. " "B returns the exit status. Registers can be examined " "(unlike when \"real\" exit happens). The tracee is still alive; it needs to " "be Bed or Bed to finish exiting." msgstr "" "stoppt vor dem Beenden (einschließlich des Todes aus B(2)), dem " "Signaltod oder endet, verursacht durch B(2), in einem Prozess aus " "mehreren Threads. B gibt den Exit-Status zurück. " "Register können untersucht werden (solange nicht »wirklich« beendet wird). " "Der verfolgte Prozess ist immer noch lebendig; er benötigt zum Fertigstellen " "des Beendens B oder B." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Stop induced by B command, or group-stop, or initial " "ptrace-stop when a new child is attached (only if attached using " "B)." msgstr "" "Stopp, der durch einen B-Befehl, einen Gruppenstopp oder " "ein »ptrace-stop« zu Beginn veranlasst wurde, wenn ein neuer Kindprozess " "angehängt wird (nur beim Anhängen mittels B)." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Stop triggered by a B(2) rule on tracee syscall entry when " "B has been set by the tracer. The seccomp event " "message data (from the B portion of the seccomp filter " "rule) can be retrieved with B. The semantics of this " "stop are described in detail in a separate section below." msgstr "" "Stopp, der durch eine B(2)-Regel durch den Eintritt des verfolgten " "Prozesses in einen Systemaufruf ausgelöst wird, wenn " "B vom Verfolger gesetzt wird. Die Seccomp-" "Ereignisdaten (von dem Anteil B der Filterregel) können " "durch B ermittelt werden. Die Semantik dieses Stopps " "werden in einem separaten Abschnitt weiter unten beschrieben." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B on B stops returns B in " "I, with I set to I<(eventEE8)\\ |\\ SIGTRAP>." msgstr "" "B auf B-Stopps gibt B in " "I zurück, wobei I auf I<(eventEE8)\\ |\\ SIGTRAP> " "gesetzt ist." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Syscall-stops" msgstr "Systemaufrufstopps" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the tracee was restarted by B or B, the " "tracee enters syscall-enter-stop just prior to entering any system call " "(which will not be executed if the restart was using B, " "regardless of any change made to registers at this point or how the tracee " "is restarted after this stop). No matter which method caused the syscall-" "entry-stop, if the tracer restarts the tracee with B, the " "tracee enters syscall-exit-stop when the system call is finished, or if it " "is interrupted by a signal. (That is, signal-delivery-stop never happens " "between syscall-enter-stop and syscall-exit-stop; it happens I " "syscall-exit-stop.). If the tracee is continued using any other method " "(including B), no syscall-exit-stop occurs. Note that all " "mentions B apply equally to B." msgstr "" "Falls der verfolgte Prozess durch B oder B " "neu gestartet wurde, gerät der verfolgte Prozess in einen " "Systemaufrufeintrittsstopp kurz vor dem Eintritt in irgendeinen Systemaufruf " "(der nicht ausgeführt wird, falls der Neustart B verwandte, " "unabhängig von allen Änderungen, die zu diesem Zeitpunkt an den Registern " "vorgenommen wurden oder wie der verfolgte Prozess nach diesem Stopp neu " "gestartet wird). Unabhängig davon, welche Methode den " "Systemaufrufeintrittsstopp verursachte, falls der Verfolger den verfolgten " "Prozess mit B neu startet, gerät der verfolgte Prozess in " "einen Systemaufrufbeendigungsstopp, wenn der Systemaufruf beendet ist oder " "falls er durch ein Signal unterbrochen wurde. (Sprich, der Signallieferstopp " "tritt nie zwischen Systemaufrufeintrittsstopp und " "Systemaufrufbeendigungsstopp auf; er findet I dem " "Systemaufrufbeendigungsstopp statt.) Falls der verfolgte Prozess mittels " "irgendeiner anderen Methode fortgesetzt wird (einschließlich " "B), erfolgt kein Systemaufrufbeendigungsstop. Beachten Sie, " "dass alle Erwähnungen von B genauso auf " "B zutreffen." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "However, even if the tracee was continued using B, it is not " "guaranteed that the next stop will be a syscall-exit-stop. Other " "possibilities are that the tracee may stop in a B stop " "(including seccomp stops), exit (if it entered B<_exit>(2) or " "B(2)), be killed by B, or die silently (if it is a " "thread group leader, the B(2) happened in another thread, and that " "thread is not traced by the same tracer; this situation is discussed later)." msgstr "" "Selbst falls der verfolgte Prozess mittels B fortgesetzt " "wird, wird nicht garantiert, dass der nächste Stopp ein " "Systemaufrufbeendigungsstopp sein wird. Andere Möglichkeiten sind, dass der " "verfolgte Prozess in einem B-Stopp (einschließlich Seccomp-" "Stopp) stoppen könnte, endet (falls er in B<_exit>(2) oder B(2) " "eintritt), durch B gekillt wird oder leise stirbt (falls er die " "Thread-Gruppe anführt, kommt das B(2) in einem anderen Thread vor " "und der Thread wird nicht vom selben Verfolger verfolgt; diese Situation " "wird später besprochen)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Syscall-enter-stop and syscall-exit-stop are observed by the tracer as " "B(2) returning with I true, and " "I giving B. If the B " "option was set by the tracer, then I will give the value " "I<(SIGTRAP\\ |\\ 0x80)>." msgstr "" "Systemaufrufeintrittsstopp und Systemaufrufbeendigungsstopp werden vom " "Verfolger als B(2) beobachtet, kehren mit »I " "true« zurück und I gibt B zurück. Falls die " "Option B durch den Verfolger gesetzt wurde, wird " "I den Wert I<(SIGTRAP\\ |\\ 0x80)> zurückgeben." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Syscall-stops can be distinguished from signal-delivery-stop with B " "by querying B for the following cases:" msgstr "" "Systemaufrufstopps können von Signallieferstopps mit B durch " "Abfrage von B für die folgenden Fälle unterschieden " "werden:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I E= 0" msgstr "I E= 0" #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "B was delivered as a result of a user-space action, for example, a " "system call (B(2), B(2), B(3), etc.), expiration of " "a POSIX timer, change of state on a POSIX message queue, or completion of an " "asynchronous I/O operation." msgstr "" "B wurde mit einem Ergebnis einer Anwendungsraumaktion, zum Beispiel " "einem Systemaufruf ((B(2), B(2), B(3), etc.), Ablauf " "eines POSIX-Timers, Statusänderung einer POSIX-Nachrichtenwarteschlange oder " "Vervollständigung einer asynchronen E/A-Aktion geliefert." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I == SI_KERNEL (0x80)" msgstr "I == SI_KERNEL (0x80)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "B was sent by the kernel." msgstr "B wurde vom Kernel gesandt." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "I == SIGTRAP or I == (SIGTRAP|0x80)" msgstr "I == SIGTRAP or I == (SIGTRAP|0x80)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "This is a syscall-stop." msgstr "Dies ist ein Systemaufrufstopp." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "However, syscall-stops happen very often (twice per system call), and " "performing B for every syscall-stop may be somewhat " "expensive." msgstr "" "Systemaufrufstopps kommen jedoch sehr oft vor (zweimal pro Systemaufruf) und " "das Ausführen von B für jeden Systemaufrufstopp könnte " "etwas aufwendig sein." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Some architectures allow the cases to be distinguished by examining " "registers. For example, on x86, I == -B in syscall-enter-" "stop. Since B (like any other signal) always happens I " "syscall-exit-stop, and at this point I almost never contains -" "B, the B looks like \"syscall-stop which is not syscall-" "enter-stop\"; in other words, it looks like a \"stray syscall-exit-stop\" " "and can be detected this way. But such detection is fragile and is best " "avoided." msgstr "" "Einige Architekturen erlauben, die Fälle durch Untersuchen der Register zu " "unterscheiden. Zum Beispiel auf x86, I == -B im " "Systemaufrufeintrittsstopp. Da B (wie jedes andere Signal) immer " "I dem Systemaufrufbeendigungsstopp auftritt und I an diesem Punkt " "fast nie B enthält, sieht das B aus wie ein " "»Systemaufrufstopp, der kein Systemaufrufeintrittsstopp ist«; in anderen " "Worten, er sieht aus wie ein »herrenloser Systemaufrufbeendigungsstopp« und " "kann auf diese Art erkannt werden. Aber eine solche Erkennung ist fragil und " "wird am besten vermieden." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Using the B option is the recommended method to " "distinguish syscall-stops from other kinds of ptrace-stops, since it is " "reliable and does not incur a performance penalty." msgstr "" "Die Benutzung der Option B ist die empfohlene " "Methode, um Systemaufrufstopps von anderen Arten der Ptrace-Stopps zu " "unterscheiden, da sie zuverlässig ist und sich keine Leistungseinbuße " "zuzieht." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Syscall-enter-stop and syscall-exit-stop are indistinguishable from each " "other by the tracer. The tracer needs to keep track of the sequence of " "ptrace-stops in order to not misinterpret syscall-enter-stop as syscall-exit-" "stop or vice versa. In general, a syscall-enter-stop is always followed by " "syscall-exit-stop, B stop, or the tracee's death; no other " "kinds of ptrace-stop can occur in between. However, note that seccomp stops " "(see below) can cause syscall-exit-stops, without preceding syscall-entry-" "stops. If seccomp is in use, care needs to be taken not to misinterpret " "such stops as syscall-entry-stops." msgstr "" "Systemaufrufeintrittsstopp und Systemaufrufbeendigungsstopp sind für den " "Verfolger nicht voneinander zu unterscheiden. Der Verfolger muss den " "Überblick über die Abfolge der Ptrace-Stopps behalten, um nicht den " "Systemaufrufeintrittsstopp fälschlicherweise als " "Systemaufrufbeendigungsstopp oder umgekehrt zu interpretieren. Im " "Allgemeinen folgt diesem Systemaufrufeintrittsstopp immer ein " "Systemaufrufbeendigungsstopp, B-Stopp oder der Tod des " "verfolgten Prozesses; dazwischen können keine anderen Arten von Ptrace-" "Stopps auftreten. Beachten Sie allerdings, dass Seccomp-Stopps (siehe unten) " "Systemaufrufbeendigungsstopps ohne vorhergehende Systemaufrufeintrittsstopps " "hervorrufen können. Falls Seccomp verwandt wird, muss Sorgfalt eingesetzt " "werden, um solche Stopps nicht als Systemaufrufeintrittsstopps " "misszuinterpretieren." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If after syscall-enter-stop, the tracer uses a restarting command other than " "B, syscall-exit-stop is not generated." msgstr "" "Falls der Verfolger nach dem Systemaufrufeintrittsstopp einen anderen Befehl " "zum Neustarten als B verwendet, wird der " "Systemaufrufbeendigungsstopp nicht erzeugt." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B on syscall-stops returns B in I, " "with I set to B or I<(SIGTRAP|0x80)>." msgstr "" "B auf Systemaufrufstopps gibt B in I " "zurück, wobei I auf B oder I<(SIGTRAP|0x80)> gesetzt ist." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "PTRACE_EVENT_SECCOMP stops (Linux 3.5 to Linux 4.7)" msgstr "PTRACE_EVENT_SECCOMP-Stopps (Linux 3.5 bis 4.7)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The behavior of B stops and their interaction with " "other kinds of ptrace stops has changed between kernel versions. This " "documents the behavior from their introduction until Linux 4.7 (inclusive). " "The behavior in later kernel versions is documented in the next section." msgstr "" "Das Verhalten des B-Stopps und seiner Wechselwirkung " "mit anderen Arten von Ptrace-Stopps hat sich zwischen Kernel-Versionen " "geändert. Hier wird das Verhalten von seiner Einführung bis Linux 4.7 " "(einschließlich) beschrieben. Das Verhalten in neueren Kernelversionen wird " "im nächsten Abschnitt beschrieben." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A B stop occurs whenever a B rule " "is triggered. This is independent of which methods was used to restart the " "system call. Notably, seccomp still runs even if the tracee was restarted " "using B and this system call is unconditionally skipped." msgstr "" "Ein B-Stopp erfolgt, wann immer eine " "B-Regel ausgelöst wird. Dies ist von der Methode, die zum " "Neustart des Systemaufrufes verwandt wurde, unabhängig. Insbesondere läuft " "Seccomp immer noch, selbst falls der verfolgte Prozess mittels " "B neu gestartet wurde und dieser Systemaufruf wird " "bedingungslos übersprungen." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Restarts from this stop will behave as if the stop had occurred right before " "the system call in question. In particular, both B and " "B will normally cause a subsequent syscall-entry-stop. " "However, if after the B the system call number is " "negative, both the syscall-entry-stop and the system call itself will be " "skipped. This means that if the system call number is negative after a " "B and the tracee is restarted using B, " "the next observed stop will be a syscall-exit-stop, rather than the syscall-" "entry-stop that might have been expected." msgstr "" "Neustarts aus diesem Stopp verhalten sich so, als ob der Stopp direkt vor " "dem in Frage stehenden Systemaufruf stattgefunden hätte. Insbesondere werden " "sowohl B als auch B normalerweise einen " "folgenden Systemaufrufeintrittsstopp auslösen. Falls allerdings nach dem " "B die Systemaufrufnummer negativ ist, werden sowohl " "der Systemaufrufeintrittsstopp als auch der Systemaufruf selbst " "übersprungen. Das bedeutet, dass falls die Systemaufrufnummer nach dem " "B negativ ist und der verfolgte Prozess mittels " "B neu gestartet wird, der nächste beobachtete Stopp ein " "Systemaufrufbeendigungsstopp statt des vielleicht erwarteten " "Systemaufrufeintrittsstopps sein wird." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "PTRACE_EVENT_SECCOMP stops (since Linux 4.8)" msgstr "PTRACE_EVENT_SECCOMP-Stopps (seit Linux 4.8)" #. commit 93e35efb8de45393cf61ed07f7b407629bf698ea #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Starting with Linux 4.8, the B stop was reordered to " "occur between syscall-entry-stop and syscall-exit-stop. Note that seccomp " "no longer runs (and no B will be reported) if the " "system call is skipped due to B." msgstr "" "Beginnend mit Linux 4.8 wurde der Stopp B neu " "geordnet, so dass er zwischen Systemaufrufeintrittsstopp und " "Systemaufrufbeendigungsstopp auftritt. Beachten Sie, dass Seccomp nicht " "länger ausgeführt wird (und kein B berichtet wird) " "falls der Systemaufruf aufgrund B übersprungen wird." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Functionally, a B stop functions comparably to a " "syscall-entry-stop (i.e., continuations using B will cause " "syscall-exit-stops, the system call number may be changed and any other " "modified registers are visible to the to-be-executed system call as well). " "Note that there may be, but need not have been a preceding syscall-entry-" "stop." msgstr "" "Funktional arbeitet ein B-Stopp vergleichbar mit einem " "Systemaufrufeintrittsstopp (d.h. Fortsetzungen mittels B " "werden einen Systemaufrufbeendigungsstopp auslösen, die Systemaufrufnummer " "könnte sich ändern und alle anderen veränderten Register sind im gleich " "auszuführenden Systemaufruf ebenfalls sichtbar). Beachten Sie, dass es einen " "vorhergehenden Systemaufrufeintrittsstopp gegeben haben kann, aber nicht " "muss." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "After a B stop, seccomp will be rerun, with a " "B rule now functioning the same as a " "B. Specifically, this means that if registers are not " "modified during the B stop, the system call will then " "be allowed." msgstr "" "Nach einem Stopp B wird Seccomp mit einer Regel " "B, die identisch zu einer B " "funktioniert, erneut ausgeführt. Insbesondere bedeutet dies, dass falls " "Register nicht während des Stopps B verändert wurden, " "der Systemaufruf dann erlaubt wird." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "PTRACE_SINGLESTEP stops" msgstr "PTRACE_SINGLESTEP-Stopps" # #. FIXME . #. document stops occurring with PTRACE_SINGLESTEP #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "[Details of these kinds of stops are yet to be documented.]" msgstr "[Einzelheiten dieser Arten von Stopps sind noch nicht dokumentiert.]" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Informational and restarting ptrace commands" msgstr "Benachrichtigende und neustartende Ptrace-Befehle" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Most ptrace commands (all except B, B, " "B, B, and B) require the " "tracee to be in a ptrace-stop, otherwise they fail with B." msgstr "" "Die meisten Ptrace-Befehle (alle außer B, B, " "B, B und B) erfordern, dass " "der verfolgte Prozess in einem Ptrace-Stopp ist, andernfalls scheitern sie " "mit B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When the tracee is in ptrace-stop, the tracer can read and write data to the " "tracee using informational commands. These commands leave the tracee in " "ptrace-stopped state:" msgstr "" "Wenn der verfolgte Prozess im Ptrace-Stopp ist, kann der Verfolger Daten des " "verfolgten Prozesses mittels benachrichtigenden Befehlen lesen und " "schreiben. Diese Befehle belassen den verfolgten Prozess im Status Ptrace-" "gestoppt:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "ptrace(PTRACE_PEEKTEXT/PEEKDATA/PEEKUSER, pid, addr, 0);\n" "ptrace(PTRACE_POKETEXT/POKEDATA/POKEUSER, pid, addr, long_val);\n" "ptrace(PTRACE_GETREGS/GETFPREGS, pid, 0, &struct);\n" "ptrace(PTRACE_SETREGS/SETFPREGS, pid, 0, &struct);\n" "ptrace(PTRACE_GETREGSET, pid, NT_foo, &iov);\n" "ptrace(PTRACE_SETREGSET, pid, NT_foo, &iov);\n" "ptrace(PTRACE_GETSIGINFO, pid, 0, &siginfo);\n" "ptrace(PTRACE_SETSIGINFO, pid, 0, &siginfo);\n" "ptrace(PTRACE_GETEVENTMSG, pid, 0, &long_var);\n" "ptrace(PTRACE_SETOPTIONS, pid, 0, PTRACE_O_flags);\n" msgstr "" "ptrace(PTRACE_PEEKTEXT/PEEKDATA/PEEKUSER, PID, Adresse, 0);\n" "ptrace(PTRACE_POKETEXT/POKEDATA/POKEUSER, PID, Adresse, long_val);\n" "ptrace(PTRACE_GETREGS/GETFPREGS, PID, 0, &struct);\n" "ptrace(PTRACE_SETREGS/SETFPREGS, PID, 0, &struct);\n" "ptrace(PTRACE_GETREGSET, PID, NT_foo, &iov);\n" "ptrace(PTRACE_SETREGSET, PID, NT_foo, &iov);\n" "ptrace(PTRACE_GETSIGINFO, PID, 0, &siginfo);\n" "ptrace(PTRACE_SETSIGINFO, PID, 0, &siginfo);\n" "ptrace(PTRACE_GETEVENTMSG, PID, 0, &long_var);\n" "ptrace(PTRACE_SETOPTIONS, PID, 0, PTRACE_O_flags);\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Note that some errors are not reported. For example, setting signal " "information (I) may have no effect in some ptrace-stops, yet the " "call may succeed (return 0 and not set I); querying " "B may succeed and return some random value if current " "ptrace-stop is not documented as returning a meaningful event message." msgstr "" "Beachten Sie, dass einige Fehler nicht gemeldet wurden. Das Setzen des " "Informationssignals (I) hat zum Beispiel in einigen Ptrace-Stopps " "möglicherweise keine Auswirkungen, der Aufruf kann jedoch erfolgreich sein " "(0 zurückgeben und I nicht setzen); Abfragen von " "B könnte erfolgreich sein und einen zufälligen Wert " "zurückgeben, falls der aktuelle Ptrace-Stopp nicht dokumentiert ist, um eine " "aussagekräftige Ereignisnachricht zurückzugeben." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The call" msgstr "Der Aufruf" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ptrace(PTRACE_SETOPTIONS, pid, 0, PTRACE_O_flags);\n" msgstr "ptrace(PTRACE_SETOPTIONS, PID, 0, PTRACE_O_flags);\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "affects one tracee. The tracee's current flags are replaced. Flags are " "inherited by new tracees created and \"auto-attached\" via active " "B, B, or B " "options." msgstr "" "beeinflusst einen verfolgten Prozess. Die aktuellen Schalter des verfolgten " "Prozesses werden ersetzt. Schalter werden geerbt durch neu erzeugte Prozesse " "und »automatisch angehängt« über aktive B-, " "B- oder B-Optionen." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Another group of commands makes the ptrace-stopped tracee run. They have " "the form:" msgstr "" "Eine weitere Gruppe von Befehlen lässt die per Ptrace gestoppten, verfolgten " "Prozesse laufen. Sie haben die Form:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ptrace(cmd, pid, 0, sig);\n" msgstr "ptrace(Befehl, PID, 0, Signal);\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "where I is B, B, B, " "B, B, B, or " "B. If the tracee is in signal-delivery-stop, " "I is the signal to be injected (if it is nonzero). Otherwise, I " "may be ignored. (When restarting a tracee from a ptrace-stop other than " "signal-delivery-stop, recommended practice is to always pass 0 in I.)" msgstr "" "wobei I B, B, B, " "B, B, B oder " "B ist. Falls der verfolgte Prozess sich im " "Signallieferstopp befindet, ist I das Signal, das eingespeist wird " "(falls es ungleich Null ist). Andernfalls kann I ignoriert werden. " "(Wenn ein verfolgter Prozess von einem anderen Ptrace-Stopp als dem " "Signallieferstopp neu gestartet wird, ist die empfohlene Vorgehensweise, 0 " "in I zu übergeben.)" #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Attaching and detaching" msgstr "Anhängen und Loslösen" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "A thread can be attached to the tracer using the call" msgstr "Ein Thread kann an den Verfolger angehängt werden mit dem Aufruf" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ptrace(PTRACE_ATTACH, pid, 0, 0);\n" msgstr "ptrace(PTRACE_ATTACH, PID, 0, 0);\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "or" msgstr "oder" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ptrace(PTRACE_SEIZE, pid, 0, PTRACE_O_flags);\n" msgstr "ptrace(PTRACE_SEIZE, PID, 0, PTRACE_O_flags);\n" # #. FIXME Describe how to attach to a thread which is already group-stopped. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B sends B to this thread. If the tracer wants this " "B to have no effect, it needs to suppress it. Note that if other " "signals are concurrently sent to this thread during attach, the tracer may " "see the tracee enter signal-delivery-stop with other signal(s) first! The " "usual practice is to reinject these signals until B is seen, then " "suppress B injection. The design bug here is that a ptrace attach " "and a concurrently delivered B may race and the concurrent " "B may be lost." msgstr "" "B sendet außerdem B an diesen Thread. Falls der " "Verfolger möchte, dass dieser B keine Auswirkungen hat, muss er ihn " "unterdrücken. Beachten Sie, dass der Verfolger, falls während des Anhängens " "gleichzeitig weitere Signale an diesen Thread gesandt werden, den Eintritt " "in den Signallieferstopp mit anderen Signalen zuerst sieht! Die übliche " "Vorgehensweise ist, diese Signale neu einzuspeisen, bis B gesehen " "wird und dann die Einspeisung von B zu unterdrücken. Der " "Entwurfsfehler ist hierbei, dass sich ein Ptrace-Anhängen und ein " "gleichzeitig gesandtes B einen Wettlauf liefern und das " "gleichzeitige B verloren gegangen sein kann." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Since attaching sends B and the tracer usually suppresses it, this " "may cause a stray B return from the currently executing system call " "in the tracee, as described in the \"Signal injection and suppression\" " "section." msgstr "" "Da Anhängen B sendet und der Verfolger es üblicherweise " "unterdrückt, könnte dies zu einer herrenlosen B-Rückgabe vom aktuell " "ausgeführten Systemaufruf in diesem verfolgten Prozess führen, wie er im " "Abschnitt »Signaleinspeisung und -unterdrückung« beschrieben wird." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Since Linux 3.4, B can be used instead of B. " "B does not stop the attached process. If you need to stop it " "after attach (or at any other time) without sending it any signals, use " "B command." msgstr "" "Seit Linux 3.4 kann B anstelle von B benutzt " "werden. B stoppt nicht den angehängten Prozess. Falls Sie ihn " "nach dem Anhängen (oder zu einem anderen Zeitpunkt) stoppen wollen ohne " "irgendwelche Signale zu senden, verwenden Sie den Befehl B." #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "The operation" msgstr "Die Aktion" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ptrace(PTRACE_TRACEME, 0, 0, 0);\n" msgstr "ptrace(PTRACE_TRACEME, 0, 0, 0);\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "turns the calling thread into a tracee. The thread continues to run " "(doesn't enter ptrace-stop). A common practice is to follow the " "B with" msgstr "" "verwandelt den aufrufenden Thread in einen verfolgten Prozess. Der Thread " "fährt mit der Ausführung fort (gerät nicht in den Ptrace-Stopp). Eine " "übliche Vorgehensweise besteht darin, B mit" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "raise(SIGSTOP);\n" msgstr "raise(SIGSTOP);\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "and allow the parent (which is our tracer now) to observe our signal-" "delivery-stop." msgstr "" "zu folgen und dem Elternprozess (der nun der Verfolger ist) zu ermöglichen, " "den Signallieferstopp zu beobachten." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the B, B, or " "B options are in effect, then children created by, " "respectively, B(2) or B(2) with the B flag, " "B(2) or B(2) with the exit signal set to B, and " "other kinds of B(2), are automatically attached to the same tracer " "which traced their parent. B is delivered to the children, causing " "them to enter signal-delivery-stop after they exit the system call which " "created them." msgstr "" "Falls die Optionen B, B oder " "B in Kraft sind, werden Kindprozesse mit B(2), " "beziehungsweise B(2) mit dem Schalter B, B(2) oder " "B(2) mit auf B gesetztem Beendigungssignal und anderen Arten " "von B(2) automatisch an den gleichen Verfolger angehängt, der ihren " "Elternprozess verfolgte. B wird an die Kindprozesse gesandt, was " "sie veranlasst, in einen Signallieferstopp zu gelangen, nachdem sie den " "Systemaufruf beenden, der sie erzeugt hat." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Detaching of the tracee is performed by:" msgstr "Loslösen des verfolgten Prozesses wird erreicht durch:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ptrace(PTRACE_DETACH, pid, 0, sig);\n" msgstr "ptrace(PTRACE_DETACH, PID, 0, Signal);\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B is a restarting operation; therefore it requires the tracee " "to be in ptrace-stop. If the tracee is in signal-delivery-stop, a signal " "can be injected. Otherwise, the I parameter may be silently ignored." msgstr "" "B ist eine Neustartaktion; daher erfordert sie, dass der " "verfolgte Prozess in einem Ptrace-Stopp ist. Falls der verfolgte Prozess in " "einem Signallieferstopp ist, kann ein Signal eingespeist werden. Andernfalls " "wird der Parameter I stillschweigend ignoriert." #. FIXME Describe how to detach from a group-stopped tracee so that it #. doesn't run, but continues to wait for SIGCONT. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the tracee is running when the tracer wants to detach it, the usual " "solution is to send B (using B(2), to make sure it goes to " "the correct thread), wait for the tracee to stop in signal-delivery-stop for " "B and then detach it (suppressing B injection). A design " "bug is that this can race with concurrent Bs. Another complication " "is that the tracee may enter other ptrace-stops and needs to be restarted " "and waited for again, until B is seen. Yet another complication is " "to be sure that the tracee is not already ptrace-stopped, because no signal " "delivery happens while it is\\[em]not even B." msgstr "" "Falls der verfolgte Prozess läuft, wenn der Verfolger ihn loslösen möchte, " "besteht die übliche Lösung darin, B zu senden (mittels " "B(2), um sicherzustellen, dass es an den korrekten Thread geht), " "darauf zu warten, dass der verfolgte Prozess in einen Signallieferstopp für " "B stoppt und ihn dann loszulösen (B-Einspeisung wird " "unterdrückt). Ein Entwurfsfehler besteht darin, dass sich dies mit " "gleichzeitigen Bs Ressourcenwettläufe liefern kann. Eine weitere " "Komplikation besteht darin, dass der verfolgte Prozess in andere Ptrace-" "Stopps geraten kann und neu gestartet werden muss und nochmals gewartet " "werden muss, bis B gesehen wird. Noch eine weitere Komplikation " "besteht darin, dass nicht sicher ist, ob der verfolgte Prozess nicht bereits " "mit Ptrace gestoppt wurde, da keine Signallieferung stattfindet, obwohl es " "noch nicht einmal B ist." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the tracer dies, all tracees are automatically detached and restarted, " "unless they were in group-stop. Handling of restart from group-stop is " "currently buggy, but the \"as planned\" behavior is to leave tracee stopped " "and waiting for B. If the tracee is restarted from signal-delivery-" "stop, the pending signal is injected." msgstr "" "Falls der Verfolger stirbt, werden alle verfolgten Prozesse automatisch " "losgelöst und neu gestartet, es sei denn, sie sind im Gruppenstopp. Die " "Handhabung des Neustarts aus dem Gruppenstopp ist derzeit fehlerhaft, aber " "das »wie-geplant«-Verhalten ist, den verfolgten Prozess gestoppt zu lassen " "und auf B zu warten. Falls der verfolgte Prozess neu vom " "Signallieferstopp gestartet wurde, wird das ausstehende Signal einspeist." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "execve(2) under ptrace" msgstr "execve(2) unter Ptrace" # #. clone(2) CLONE_THREAD says: #. If any of the threads in a thread group performs an execve(2), #. then all threads other than the thread group leader are terminated, #. and the new program is executed in the thread group leader. #. In Linux 3.1 sources, see fs/exec.c::de_thread() #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When one thread in a multithreaded process calls B(2), the kernel " "destroys all other threads in the process, and resets the thread ID of the " "execing thread to the thread group ID (process ID). (Or, to put things " "another way, when a multithreaded process does an B(2), at " "completion of the call, it appears as though the B(2) occurred in " "the thread group leader, regardless of which thread did the B(2).) " "This resetting of the thread ID looks very confusing to tracers:" msgstr "" "Wenn ein Thread in einem Prozess mit mehreren Threads B(2) aufruft, " "zerstört der Kernel alle anderen Threads im Prozess und setzt die Thread-" "Kennung des ausführenden Threads auf die Gruppenkennung (Prozesskennung) " "zurück. (Oder anders ausgedrückt, wenn ein Prozess mit mehreren Threads ein " "B(2) bei Vervollständigung des Aufrufs ausführt, scheint es durch " "das B(2) im führenden Thread der Prozessgruppe aufzutreten, " "unabhängig davon, welcher Thread das B(2) aufrief.) Dieses " "Zurücksetzen der Thread-Kennung sieht für Verfolger sehr verwirrend aus:" #. 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 "" "All other threads stop in B stop, if the " "B option was turned on. Then all other threads except " "the thread group leader report death as if they exited via B<_exit>(2) with " "exit code 0." msgstr "" "Alle anderen Threads stoppen im B-Stopp, falls die Option " "B eingeschaltet wurde. Dann melden alle anderen Threads " "außer dem führenden Thread der Gruppe den Tod, als ob sie über B<_exit>(2) " "mit dem Exit-Code 0 beendet worden wären." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The execing tracee changes its thread ID while it is in the B(2). " "(Remember, under ptrace, the \"pid\" returned from B(2), or fed " "into ptrace calls, is the tracee's thread ID.) That is, the tracee's thread " "ID is reset to be the same as its process ID, which is the same as the " "thread group leader's thread ID." msgstr "" "Der ausführende, verfolgte Prozess ändert seine Thread-Kennung, während er " "in dem B(2) ist. (Denken Sie daran, unter Ptrace ist die von " "B(2) zurückgegebene oder in Ptrace-Aufrufe gespeiste »PID«, die " "Thread-Kennung des verfolgten Prozesses.) Sprich, die Thread-Kennung des " "verfolgten Prozesses wird zurückgesetzt, so dass sie ihrer Prozesskennung " "entspricht, die dieselbe ist, wie die Thread-Kennung des führenden Threads " "der Thread-Gruppe." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Then a B stop happens, if the B " "option was turned on." msgstr "" "Dann kommt es zu einem B-Stopp, falls die Option " "B eingeschaltet wurde." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the thread group leader has reported its B stop by " "this time, it appears to the tracer that the dead thread leader \"reappears " "from nowhere\". (Note: the thread group leader does not report death via " "I until there is at least one other live thread. This " "eliminates the possibility that the tracer will see it dying and then " "reappearing.) If the thread group leader was still alive, for the tracer " "this may look as if thread group leader returns from a different system call " "than it entered, or even \"returned from a system call even though it was " "not in any system call\". If the thread group leader was not traced (or was " "traced by a different tracer), then during B(2) it will appear as " "if it has become a tracee of the tracer of the execing tracee." msgstr "" "Falls der führende Thread der Gruppe seinen B-Stopp " "mittlerweile gemeldet hat, scheint es für den Verfolger, als ob der tote " "führende Thread »aus dem Nichts wieder auftaucht«. (Hinweis: Der führende " "Thread der Gruppe meldet den Tod nicht über I bis es " "mindestens einen lebenden anderen Thread gibt. Dies eliminiert die " "Möglichkeit, dass der Verfolger ihn sterben und dann erneut erscheinen " "sieht.) Falls der führende Thread der Gruppe immer noch lebt, könnte dies " "für den Verfolger so aussehen, als ob der führende Thread der Gruppe von " "einem anderen Systemaufruf als dem beigetretenen zurückkehrt oder sogar »von " "einem Systemaufruf zurückkehrt, obwohl er in keinem Systemaufruf war«. Falls " "der führende Thread der Gruppe nicht verfolgt wurde (oder von einem anderen " "Verfolger verfolgt wurde), dann wird es während B(2) so aussehen, " "als ob er ein verfolgter Prozess des Verfolgers des ausführenden verfolgten " "Prozesses geworden wäre." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "All of the above effects are the artifacts of the thread ID change in the " "tracee." msgstr "" "All die Auswirkungen oberhalb sind Artefakte des Thread-Kennungswechsels im " "verfolgten Prozess." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The B option is the recommended tool for dealing with " "this situation. First, it enables B stop, which occurs " "before B(2) returns. In this stop, the tracer can use " "B to retrieve the tracee's former thread ID. (This " "feature was introduced in Linux 3.0.) Second, the B " "option disables legacy B generation on B(2)." msgstr "" "Die Option B ist das empfohlene Werkzeug für den Umgang " "mit dieser Situation. Zuerst aktiviert es B-Stopp, der " "vor der Rückkehr von B(2) auftritt. In diesem Stopp kann der " "Verfolger B verwenden, um die vorherige Thread-Kennung " "des verfolgten Prozesses zu erhalten. (Diese Funktion wurde in Lunux 3.0 " "eingeführt.) Als zweites deaktiviert die Option B die " "alte B-Erzeugung auf B(2)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When the tracer receives B stop notification, it is " "guaranteed that except this tracee and the thread group leader, no other " "threads from the process are alive." msgstr "" "Wenn der Verfolger die B-Stoppbenachrichtigung empfängt, " "ist garantiert, dass außer diesem verfolgten Prozess und dem führenden " "Thread der Gruppe keine anderen Threads des Prozesses lebendig sind." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On receiving the B stop notification, the tracer should " "clean up all its internal data structures describing the threads of this " "process, and retain only one data structure\\[em]one which describes the " "single still running tracee, with" msgstr "" "Beim Empfang der B-Stoppbenachrichtigung sollte der " "Verfolger all seine internen Datenstrukturen aufräumen, die Threads dieses " "Prozesses beschreiben und nur eine Datenstruktur behalten, – eine, die den " "einzelnen, laufenden, verfolgten Prozess beschreibt mit" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "thread ID == thread group ID == process ID.\n" msgstr "Thread-Kennung == Thread-Gruppenkennung == Prozesskennung.\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Example: two threads call B(2) at the same time:" msgstr "Beispiel: Zwei Threads rufen zur gleichen Zeit B(2) auf:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" "*** we get syscall-enter-stop in thread 1: **\n" "PID1 execve(\"/bin/foo\", \"foo\" Eunfinished ...E\n" "*** we issue PTRACE_SYSCALL for thread 1 **\n" "*** we get syscall-enter-stop in thread 2: **\n" "PID2 execve(\"/bin/bar\", \"bar\" Eunfinished ...E\n" "*** we issue PTRACE_SYSCALL for thread 2 **\n" "*** we get PTRACE_EVENT_EXEC for PID0, we issue PTRACE_SYSCALL **\n" "*** we get syscall-exit-stop for PID0: **\n" "PID0 E... execve resumedE ) = 0\n" msgstr "" "*** wir bekommen einen Systemaufrufeintrittsstopp in Thread 1: **\n" "PID1 execve(\"/bin/foo\", \"foo\" Enicht abgeschlossen …E\n" "*** wir liefern PTRACE_SYSCALL für Thread 1 **\n" "*** wir bekommen einen Systemaufrufeintrittsstopp in Thread 2: **\n" "PID2 execve(\"/bin/bar\", \"bar\" Enicht abgeschlossen …E\n" "*** wir liefern PTRACE_SYSCALL für Thread 2 **\n" "*** wir bekommen PTRACE_EVENT_EXEC für PID0, wir liefern PTRACE_SYSCALL **\n" "*** wir bekommen Systemaufrufbeendigungsstopp für PID0: **\n" "PID0 E… execve wieder aufgenommenE ) = 0\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the B option is I in effect for the execing " "tracee, and if the tracee was Bed rather that " "Bd, the kernel delivers an extra B to the tracee " "after B(2) returns. This is an ordinary signal (similar to one " "which can be generated by I), not a special kind of ptrace-" "stop. Employing B for this signal returns I set " "to 0 (I). This signal may be blocked by signal mask, and thus may " "be delivered (much) later." msgstr "" "Falls die Option B für den ausführenden, verfolgten " "Prozess I in Kraft ist und falls der verfolgte Prozess " "Bed statt Bd war, sendet der Kernel ein " "zusätzliches B an den verfolgten Prozess, nachdem B(2) " "zurückgekehrt ist. Dies ist ein gewöhnliches Signal (ähnlich einem, das " "durch I erzeugt werden kann), keine Spezialart eines Ptrace-" "Stopps. Unter Einsatz von B für dieses Signal gibt " "I auf 0 gesetzt (I) zurück. Dieses Signal kann durch die " "Signalmaske blockiert sein und könnte daher (viel) später gesandt werden." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Usually, the tracer (for example, B(1)) would not want to show this " "extra post-execve B signal to the user, and would suppress its " "delivery to the tracee (if B is set to B, it is a killing " "signal). However, determining I B to suppress is not easy. " "Setting the B option or using B and thus " "suppressing this extra B is the recommended approach." msgstr "" "Üblicherweise würde der Verfolger dem Anwender dieses zusätzliche B-" "Signal nach Execve nicht zeigen wollen und seinen Versand an den verfolgten " "Prozess unterdrücken (falls B auf B gesetzt ist, killt es " "das Signal). Es ist jedoch nicht einfach zu bestimmen, I B " "zu unterdrücken ist. Die empfohlene Herangehensweise ist, die Option " "B zu setzen oder B zu verwenden und damit " "dieses zusätzliche B zu unterdrücken." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Real parent" msgstr "Echter Elternprozess" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The ptrace API (ab)uses the standard UNIX parent/child signaling over " "B(2). This used to cause the real parent of the process to stop " "receiving several kinds of B(2) notifications when the child " "process is traced by some other process." msgstr "" "Die Ptrace-Programmierschnittstelle (miss)braucht die Standard-UNIX-Eltern-/" "Kindprozess-Signalgebung über B(2). Diese wird benutzt, um den " "echten Elternprozess zum Stopp des Empfangs mehrerer Arten von B(2)-" "Benachrichtigungen zu veranlassen, wenn der Kindprozess durch einen anderen " "Prozess verfolgt wird." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Many of these bugs have been fixed, but as of Linux 2.6.38 several still " "exist; see BUGS below." msgstr "" "Viele dieser Fehler wurden behoben, aber ab Linux 2.6.38 existieren etliche " "immer noch; siehe FEHLER oberhalb." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "As of Linux 2.6.38, the following is believed to work correctly:" msgstr "" "Ab Linux 2.6.38 wird davon ausgegangen, dass folgendes korrekt funktioniert:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "exit/death by signal is reported first to the tracer, then, when the tracer " "consumes the B(2) result, to the real parent (to the real parent " "only when the whole multithreaded process exits). If the tracer and the " "real parent are the same process, the report is sent only once." msgstr "" "Beenden/Sterben durch Signal wird zuerst an den Verfolger gemeldet, dann, " "wenn der Verfolger das B(2)-Ergebnis verbraucht, an den echten " "Elternprozess (an den echten Elternprozess nur, wenn der ganze Prozess aus " "mehreren Threads existiert). Falls der Verfolger und der echte Elternprozess " "derselbe Prozess sind, wird der Bericht nur einmal gesandt." #. 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 "RÜCKGABEWERT" #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "On success, the B operations return the requested data (but " "see NOTES), the B operation returns the number of " "instructions in the BPF program, the B operation " "returns the number of bytes available to be written by the kernel, and other " "operations return zero." msgstr "" "Bei Erfolg geben die B-Aktionen die angeforderten Daten zurück " "(aber siehe die ANMERKUNGEN), die Aktion B " "liefert die Anzahl der Anweisungen in dem BPF-Programm zurück, die Aktion " "B liefert die Anzahl der Byte zurück, die zum " "Schreiben durch den Kernel verfügbar sind und andere Aktionen geben Null " "zurück." #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "On error, all operations return -1, and I is set to indicate the " "error. Since the value returned by a successful B operation " "may be -1, the caller must clear I before the call, and then check it " "afterward to determine whether or not an error occurred." msgstr "" "Bei einem Fehler geben alle Aktionen -1 zurück und I wird gesetzt, um " "den Fehler anzuzeigen. Da der Wert, der von einer erfolgreichen Aktion " "B zurückgegeben wurde, -1 sein könnte, muss der Aufrufende vor " "dem Aufruf I leeren und es dann hinterher untersuchen, um " "festzustellen, ob ein Fehler aufgetreten ist oder nicht." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "ERRORS" msgstr "FEHLER" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "(i386 only) There was an error with allocating or freeing a debug register." msgstr "" "(nur i386) Es ist beim Reservieren oder der Freigabe eines Debug-Registers " "ein Fehler aufgetreten." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "There was an attempt to read from or write to an invalid area in the " "tracer's or the tracee's memory, probably because the area wasn't mapped or " "accessible. Unfortunately, under Linux, different variations of this fault " "will return B or B more or less arbitrarily." msgstr "" "Es gab einen Versuch in einem ungültigen Bereich im Speicher des Verfolgers " "oder des verfolgten Prozesses zu lesen oder zu schreiben, wahrscheinlich, " "weil der Bereich nicht abgebildet war oder kein Zugriff möglich war. " "Unglücklicherweise geben unter Linux mehrere Variationen dieser " "Ausnahmebehandlung mehr oder weniger willkürlich B oder B " "zurück." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "An attempt was made to set an invalid option." msgstr "Es wurde versucht, eine ungültige Option zu setzen." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "I is invalid, or an attempt was made to read from or write to an invalid " "area in the tracer's or the tracee's memory, or there was a word-alignment " "violation, or an invalid signal was specified during a restart operation." msgstr "" "I ist ungültig, es wurde versucht, in einem ungültigen Bereich im " "Speicher des Verfolgers oder des verfolgten Prozesses zu lesen oder zu " "schreiben, es gab eine Verletzung der Ausrichtung an der »word«-Größe oder " "es wurde während der Neustart-Aktion ein ungültiges Signal angegeben." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The specified process cannot be traced. This could be because the tracer " "has insufficient privileges (the required capability is B); " "unprivileged processes cannot trace processes that they cannot send signals " "to or those running set-user-ID/set-group-ID programs, for obvious reasons. " "Alternatively, the process may already be being traced, or (before Linux " "2.6.26) be B(1) (PID 1)." msgstr "" "Der angegebene Prozess kann nicht verfolgt werden. Dies könnte daher rühren, " "dass der Verfolger über unzureichende Privilegien verfügt (die Capability " "B wird benötigt); unprivilegierte Prozesse können keine " "Prozesse verfolgen, denen sie keine Signale senden können oder die SUID-/" "SGID-Programme ausführen, was naheliegend ist. Alternativ könnte der Prozess " "bereits verfolgt werden oder (Linux vor 2.6.26) B(1) (PID 1) sein." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "The specified process does not exist, or is not currently being traced by " "the caller, or is not stopped (for operations that require a stopped tracee)." msgstr "" "Der angegebene Prozess existiert nicht, wird derzeit nicht vom Aufrufenden " "verfolgt oder ist nicht gestoppt (bei Aktionen, die einen gestoppten " "verfolgten Prozess erfordern)." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "STANDARDS" msgstr "STANDARDS" #. type: Plain text #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed msgid "None." msgstr "Keine." #. type: SH #: archlinux debian-unstable fedora-40 fedora-rawhide mageia-cauldron #: opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "HISTORY" msgstr "GESCHICHTE" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "SVr4, 4.3BSD." msgstr "SVr4, 4.3BSD." #. See commit 00cd5c37afd5f431ac186dd131705048c0a11fdb #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Before Linux 2.6.26, B(1), the process with PID 1, may not be traced." msgstr "" "In Linux-Versionen vor 2.6.26 kann B(1) den Prozess mit der " "Prozessnummer 1 nicht verfolgen." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "NOTES" msgstr "ANMERKUNGEN" #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "Although arguments to B() are interpreted according to the " "prototype given, glibc currently declares B() as a variadic " "function with only the I argument fixed. It is recommended to always " "supply four arguments, even if the requested operation does not use them, " "setting unused/ignored arguments to I<0L> or I<(void\\ *)\\ 0>." msgstr "" "Obwohl Argumente für B() gemäß dem angegebenen Prototypen " "interpretiert werden, deklariert Glibc derzeit B() als eine variable " "Funktion mit nur dem festen Argument I. Es wird empfohlen, immer vier " "Argumente anzugeben, sogar dann, wenn die angeforderte Aktion sie nicht " "verwendet. Setzen Sie unbenutzte/ignorierte Argumente auf I<0L> oder " "I<(void\\ *)\\ 0>." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A tracees parent continues to be the tracer even if that tracer calls " "B(2)." msgstr "" "Der Elternprozess des verfolgten Prozesses wird weiterhin der Verfolger " "sein, selbst wenn der Verfolger B(2) aufruft." #. See http://lkml.org/lkml/2008/5/8/375 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The layout of the contents of memory and the USER area are quite operating-" "system- and architecture-specific. The offset supplied, and the data " "returned, might not entirely match with the definition of I." msgstr "" "Das Layout des Speicherinhalts und des BENUTZERbereichs sind ziemlich " "betriebsystem- und architekturspezifisch. Der mitgelieferte Versatz und die " "zurückgegebenen Daten passen möglicherweise nicht ganz zu der Definition von " "I." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The size of a \"word\" is determined by the operating-system variant (e.g., " "for 32-bit Linux it is 32 bits)." msgstr "" "Die Größe eines »word« wird durch die Betriebsystemvariante festgelegt (z.B. " "ist es für ein 32-Bit-Linux 32 Bit)." #. """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "This page documents the way the B() call works currently in Linux. " "Its behavior differs significantly on other flavors of UNIX. In any case, " "use of B() is highly specific to the operating system and " "architecture." msgstr "" "Diese Seite dokumentiert die Möglichkeit, wie der B()-Aufruf derzeit " "in Linux arbeitet. Sein Verhalten unterscheidet sich auf anderen unixoiden " "Betriebssystemen deutlich. Auf jeden Fall ist die Benutzung von B() " "in hohem Grad abhängig vom Betriebssystem und der Architektur." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "Ptrace access mode checking" msgstr "Ptrace-Zugriffsmodusüberprüfung" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Various parts of the kernel-user-space API (not just B() " "operations), require so-called \"ptrace access mode\" checks, whose outcome " "determines whether an operation is permitted (or, in a few cases, causes a " "\"read\" operation to return sanitized data). These checks are performed in " "cases where one process can inspect sensitive information about, or in some " "cases modify the state of, another process. The checks are based on factors " "such as the credentials and capabilities of the two processes, whether or " "not the \"target\" process is dumpable, and the results of checks performed " "by any enabled Linux Security Module (LSM)\\[em]for example, SELinux, Yama, " "or Smack\\[em]and by the commoncap LSM (which is always invoked)." msgstr "" "Verschiedene Teile des Kernel-Benutzerraum-APIs (nicht nur B()-" "Aktionen) benötigen sogenannte »Ptrace-Zugriffsmodusüberprüfungen«, deren " "Ergebnis bestimmt, ob eine Aktion erlaubt (oder, in wenigen Fällen, einer " "»Lese«-Aktion bereinigte Daten zurückliefern) wird. Diese Überprüfungen " "werden in Fällen durchgeführt, in denen ein Prozess vertrauliche " "Informationen über einen anderen Prozess einsehen könnte oder in einigen " "Fällen den Zustand eines anderen Prozesse verändern könnte. Die " "Überprüfungen basieren auf Faktoren wie den Berechtigungsnachweisen und den " "Capabilitys der zwei Prozesse, ob der Speicherinhalt des »Zielprozesses« " "ausgegeben werden kann und dem Ergebnis der Überprüfungen, die durch jedes " "aktivierte Linux-Sicherheitsmodul (LSM) – zum Beispiel SELinux, Yama oder " "Smack – und durch das Commoncap-LSM (das immer ausgeführt wird), ausgeführt " "wird." #. commit 006ebb40d3d65338bd74abb03b945f8d60e362bd #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Prior to Linux 2.6.27, all access checks were of a single type. Since Linux " "2.6.27, two access mode levels are distinguished:" msgstr "" "Vor Linux 2.6.27 waren alle Zugriffsprüfungen von einem einzigen Typ. Seit " "Linux 2.6.27 werden zwei Zugriffsmodi unterschieden:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For \"read\" operations or other operations that are less dangerous, such " "as: B(2); B(2); reading IpidI, IpidI, or IpidI; or B(2) of a IpidI file." msgstr "" "Für »Lese«-Aktionen oder andere Aktionen, die weniger gefährlich sind, wie " "B(2); B(2); Lesen aus IPIDI, IPIDI oder IPIDI; oder B(2) einer IPIDI-Datei." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" # # #. Regarding the above description of the distinction between #. PTRACE_MODE_READ and PTRACE_MODE_ATTACH, Stephen Smalley notes: #. That was the intent when the distinction was introduced, but it doesn't #. appear to have been properly maintained, e.g. there is now a common #. helper lock_trace() that is used for #. /proc/pid/{stack,syscall,personality} but checks PTRACE_MODE_ATTACH, and #. PTRACE_MODE_ATTACH is also used in timerslack_ns_write/show(). Likely #. should review and make them consistent. There was also some debate #. about proper handling of /proc/pid/fd. Arguably that one might belong #. back in the _ATTACH camp. #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "For \"write\" operations, or other operations that are more dangerous, such " "as: ptrace attaching (B) to another process or calling " "B(2). (B was effectively the default " "before Linux 2.6.27.)" msgstr "" "Für »Schreibe«-Aktionen oder andere Aktionen, die gefährlicher sind, wie " "Ptrace-Anhängungen (B) an einen anderen Prozess oder Aufrufe " "von B(2). (B war tatsächlich die " "Vorgabe vor Linux 2.6.27.)" #. commit caaee6234d05a58c5b4d05e7bf766131b810a657 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Since Linux 4.5, the above access mode checks are combined (ORed) with one " "of the following modifiers:" msgstr "" "Seit Linux 4.5 sind die obigen Zugriffsmodusprüfungen mittels ODER mit einem " "der folgenden Modifikatoren verknüpft:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Use the caller's filesystem UID and GID (see B(7)) or " "effective capabilities for LSM checks." msgstr "" "Die Dateisystem-UID und -GID (siehe B(7)) oder die effektiven " "Capabilitys für LSM-Prüfungen des Aufrufenden verwenden." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Use the caller's real UID and GID or permitted capabilities for LSM checks. " "This was effectively the default before Linux 4.5." msgstr "" "Die reale UID und GID oder die erlaubten Capabilitys für LSM-Prüfungen des " "Aufrufenden verwenden. Dies war vor Linux 4.5 die Vorgabe." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Because combining one of the credential modifiers with one of the " "aforementioned access modes is typical, some macros are defined in the " "kernel sources for the combinations:" msgstr "" "Da die Kombination eines der Berechtigungsnachweise-Modifikatoren mit einem " "der vorgenannten Zugriffsmodi typisch ist, sind ein paar Makros in den " "Kernelquellen für die Kombinationen definiert." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Defined as B." msgstr "Definiert als B." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Defined as B." msgstr "Definiert als B." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Defined as B." msgstr "Definiert als B." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B" msgstr "B" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Defined as B." msgstr "Definiert als B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "One further modifier can be ORed with the access mode:" msgstr "" "Ein weiterer Modifikator kann mit den Zugriffsmodus mittels ODER verknüpft " "werden:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "B (since Linux 3.3)" msgstr "B (seit Linux 3.3)" #. commit 69f594a38967f4540ce7a29b3fd214e68a8330bd #. Just for /proc/pid/stat #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Don't audit this access mode check. This modifier is employed for ptrace " "access mode checks (such as checks when reading IpidI) that " "merely cause the output to be filtered or sanitized, rather than causing an " "error to be returned to the caller. In these cases, accessing the file is " "not a security violation and there is no reason to generate a security audit " "record. This modifier suppresses the generation of such an audit record for " "the particular access check." msgstr "" "Diese Zugriffsmodusprüfung nicht auditieren. Dieser Modifikator wird für " "Ptrace-Zugriffsmodusprüfungen eingesetzt (wie z.B. Prüfungen beim Lesen von " "IPIDI), die lediglich die Ausgabe filtern oder bereinigen, " "statt dem Aufrufenden einen Fehler zurückzuliefern. In diesen Fällen ist der " "Zugriff auf die Datei keine Sicherheitsverletzung und es gibt keinen Grund, " "einen Sicherheitsauditdatensatz zu erstellen. Dieser Modifikator unterdrückt " "die Erstellung eines solchen Auditdatensatzes für diese Zugriffsprüfung." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Note that all of the B constants described in this subsection " "are kernel-internal, and not visible to user space. The constant names are " "mentioned here in order to label the various kinds of ptrace access mode " "checks that are performed for various system calls and accesses to various " "pseudofiles (e.g., under I). These names are used in other manual " "pages to provide a simple shorthand for labeling the different kernel checks." msgstr "" "Beachten Sie, dass alle in diesem Unterabschnitt beschriebenen Konstanten " "B kernelintern und nicht im Anwendungsraum sichtbar sind. Die " "Konstantennamen werden hier benannt, um den verschiedenen Arten von Ptrace-" "Zugriffsmodusprüfungen, die für verschiedene Systemaufrufe und Zugriff auf " "verschiedene Pseudodateien (z.B. unter I) durchgeführt werden, einen " "Namen zu geben. Diese Namen werden in anderen Handbuchseiten benutzt, um " "eine einfache Abkürzung für die Benennung der verschiedenen Kernelprüfungen " "bereitzustellen." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The algorithm employed for ptrace access mode checking determines whether " "the calling process is allowed to perform the corresponding action on the " "target process. (In the case of opening Ipid files, the \"calling " "process\" is the one opening the file, and the process with the " "corresponding PID is the \"target process\".) The algorithm is as follows:" msgstr "" "Der für Ptrace-Zugriffsmodusprüfungen eingesetzte Algorithmus bestimmt, ob " "dem aufrufenden Prozess erlaubt wird, die entsprechende Aktion auf dem " "Zielprozess durchzuführen. (Im Falle des Öffnens von I[PID]-Dateien " "ist der »aufrufende Prozess« derjenige, der die Datei öffnet, und der " "Prozess mit der entsprechenden PID der »Zielprozess«). Der Algorithmus geht " "wie folgt:" #. type: IP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "(1)" msgstr "(1)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the calling thread and the target thread are in the same thread group, " "access is always allowed." msgstr "" "Falls der aufrufende Thread und der Ziel-Thread in der gleichen Thread-" "Gruppe sind, wird der Zugriff immer erlaubt." #. type: IP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "(2)" msgstr "(2)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the access mode specifies B, then, for the check in " "the next step, employ the caller's filesystem UID and GID. (As noted in " "B(7), the filesystem UID and GID almost always have the same " "values as the corresponding effective IDs.)" msgstr "" "Falls der Zugriffsmodus B festlegt, dann wird für die " "Prüfung im nächsten Schritt die Dateisystem-UID und -GID des Aufrufenden " "verwandt. (Wie in B(7) vermerkt, haben die Dateisystem-UID und -" "GID fast immer die gleichen Werte wie die entsprechenden effektiven " "Kennungen.)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Otherwise, the access mode specifies B, so use the " "caller's real UID and GID for the checks in the next step. (Most APIs that " "check the caller's UID and GID use the effective IDs. For historical " "reasons, the B check uses the real IDs instead.)" msgstr "" "Andernfalls legt der Zugriffsmodus B fest, so dass " "die reale UID und GID für die Prüfungen im nächsten Schritt verwandt werden. " "(Die meisten APIs, die die UIDs und GIDs des Aufrufenden prüfen, verwenden " "effektive Kennungen. Aus historischen Gründen verwendet die Prüfung " "B stattdessen die realen Kennungen.)" #. type: IP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "(3)" msgstr "(3)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Deny access if I of the following is true:" msgstr "Zugriff verweigern, falls I der Folgenden wahr ist:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The real, effective, and saved-set user IDs of the target match the caller's " "user ID, I the real, effective, and saved-set group IDs of the target " "match the caller's group ID." msgstr "" "Die reale, effektive und saved-set-Benutzerkennungen des Zieles passen auf " "die der Benutzerkennung des Aufrufenden I die reale, effektive und " "saved-set-Gruppenkennung des Zieles passen auf die der Gruppenkennung des " "Aufrufenden." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The caller has the B capability in the user namespace of the " "target." msgstr "" "Der Aufrufende verfügt über die Capability B in dem " "Benutzernamensraum des Ziels." #. type: IP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "(4)" msgstr "(4)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Deny access if the target process \"dumpable\" attribute has a value other " "than 1 (B; see the discussion of B in " "B(2)), and the caller does not have the B capability " "in the user namespace of the target process." msgstr "" "Verweigert den Zugriff, falls das Attribut »dumpable« einen anderen Wert als " "1 (B, siehe die Diskussion von B in " "B(2)) hat und der Aufrufende nicht über die Capability " "B in dem Benutzernamensraum des Zielprozesses verfügt." #. type: IP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "(5)" msgstr "(5)" #. (in cap_ptrace_access_check()): #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The kernel LSM I() interface is invoked to " "see if ptrace access is permitted. The results depend on the LSM(s). The " "implementation of this interface in the commoncap LSM performs the following " "steps:" msgstr "" "Die Schnittstelle I() wird aufgerufen, um zu " "erkennen, ob Ptrace-Zugriff erlaubt ist. Das Ergebnis hängt von dem/den " "LSM(en) ab. Die Implementierung dieser Schnittstelle im LSM Commoncap führt " "die folgenden Schritte durch:" #. type: IP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "(5.1)" msgstr "(5.1)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If the access mode includes B, then use the caller's " "I capability set in the following check; otherwise (the access " "mode specifies B, so) use the caller's I " "capability set." msgstr "" "Falls der Zugriffsmodus B enthält, dann wird die " "I Capability-Menge des Aufrufenden in der nachfolgenden Prüfung " "verwandt, andernfalls (der Zugriffsmodus legt B fest) " "wird die I Capability-Menge des Aufrufenden verwandt." #. type: IP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "(5.2)" msgstr "(5.2)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The caller and the target process are in the same user namespace, and the " "caller's capabilities are a superset of the target process's I " "capabilities." msgstr "" "Der aufrufende und der Zielprozess sind im gleichen Benutzernamensraum und " "die Capabilitys des Aufrufenden sind eine Obermenge der I " "Capabilitys des Zielprozesses." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "The caller has the B capability in the target process's user " "namespace." msgstr "" "Der Aufrufende verfügt über die Capability B in dem " "Benutzernamensraum des Zielprozesses." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Note that the commoncap LSM does not distinguish between B " "and B." msgstr "" "Beachten Sie, dass das LSM Commoncap nicht zwischen B und " "B unterscheidet." #. type: IP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "(6)" msgstr "(6)" # #. """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If access has not been denied by any of the preceding steps, then access is " "allowed." msgstr "" "Falls der Zugriff in den vorhergehenden Schritten nicht verweigert wurde, " "dann wird er erlaubt." #. type: SS #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "/proc/sys/kernel/yama/ptrace_scope" msgstr "/proc/sys/kernel/yama/ptrace_scope" #. commit 2d514487faf188938a4ee4fb3464eeecfbdcf8eb #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On systems with the Yama Linux Security Module (LSM) installed (i.e., the " "kernel was configured with B), the I file (available since Linux 3.4) can be used to restrict " "the ability to trace a process with B() (and thus also the ability " "to use tools such as B(1) and B(1)). The goal of such " "restrictions is to prevent attack escalation whereby a compromised process " "can ptrace-attach to other sensitive processes (e.g., a GPG agent or an SSH " "session) owned by the user in order to gain additional credentials that may " "exist in memory and thus expand the scope of the attack." msgstr "" "Auf Systemen, auf denen das Yama Linux Security Module (LSM) installiert (d." "h. der Kernel mit B konfiguriert worden) ist, kann die " "Datei I (verfügbar seit Linux 3.4) zum " "Einschränken der Nachverfolgung von Prozessen mit B() verwandt " "werden (und damit auch die Möglichkeit, Werkzeuge wie B(1) und " "B(1) zu verwenden). Das Ziel einer solchen Einschränkung besteht darin, " "Angriffseskalationen zu vermeiden, bei denen ein kompromittierter Prozess " "sich mittels Ptrace-attach an andere sensitive Prozesse (z.B. einem GPG-" "Agenten oder einer SSH-Sitzung), die dem Benutzer gehören, anhängen könnte, " "um zusätzliche Berechtigungsnachweise zu erlangen, die im Speicher " "existieren, und damit den Umfang des Angriffs zu erhöhen." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "More precisely, the Yama LSM limits two types of operations:" msgstr "Genauer gesagt begrenzt die Yama LSM zwei Arten von Aktionen:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Any operation that performs a ptrace access mode B " "check\\[em]for example, B() B. (See the \"Ptrace " "access mode checking\" discussion above.)" msgstr "" "Jede Aktion, die eine Ptrace-Zugriffsmodusprüfung B " "durchführt – beispielsweise B() B. (Siehe die obige " "Diskussion »Ptrace-Zugriffsmodusüberprüfung«)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "B() B." msgstr "B() B." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A process that has the B capability can update the I file with one of the following values:" msgstr "" "Ein Prozess, der über die Capability B verfügt, kann die " "Datei I mit einem der folgenden Werte " "aktualisieren:" #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "0 (\"classic ptrace permissions\")" msgstr "0 (»klassische Ptrace-Berechtigungen«)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "No additional restrictions on operations that perform B " "checks (beyond those imposed by the commoncap and other LSMs)." msgstr "" "Keine zusätzlichen Beschränkungen bei Aktionen, die B-" "Überprüfungen durchführen (die über die von Commoncap und anderen LSMs " "hinausgehen)." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "The use of B is unchanged." msgstr "B wird unverändert verwandt." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "1 (\"restricted ptrace\") [default value]" msgstr "1 (»eingeschränkter Ptrace«) [Vorgabewert]" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "When performing an operation that requires a B check, " "the calling process must either have the B capability in the " "user namespace of the target process or it must have a predefined " "relationship with the target process. By default, the predefined " "relationship is that the target process must be a descendant of the caller." msgstr "" "Wenn eine Aktion durchgeführt wird, die eine B-" "Überprüfung benötigt, muss der aufrufende Prozess entweder über die " "Capability B in dem Benutzernamensraum des Zielprozesses " "verfügen oder er muss eine vorbestimmte Beziehung zum Zielprozess haben. " "Standardmäßig ist die vorbestimmte Beziehung, dass der Zielprozess ein " "Nachkomme des Aufrufenden sein muss." #. commit 90bb766440f2147486a2acc3e793d7b8348b0c22 #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A target process can employ the B(2) B operation to " "declare an additional PID that is allowed to perform B " "operations on the target. See the kernel source file I (or I before Linux " "4.13) for further details." msgstr "" "Ein Zielprozess kann die B(2)-Aktion B einsetzen, um " "eine zusätzliche PID zu erklären, der es erlaubt ist, B-" "Aktionen auf dem Ziel durchzuführen. Siehe die Kernelquelldatei " "I (oder I vor Linux 4.13) für weitere Details." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "2 (\"admin-only attach\")" msgstr "2 (»nur Admin-Anhängung«)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Only processes with the B capability in the user namespace " "of the target process may perform B operations or trace " "children that employ B." msgstr "" "Nur Prozesse mit der Capability B im Benutzernamensraum des " "Zielprozesses dürfen B-Aktionen durchführen oder Kinder, " "die B einsetzen, verfolgen." #. type: TP #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "3 (\"no attach\")" msgstr "3 (»keine Anhängung«)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "No process may perform B operations or trace children " "that employ B." msgstr "" "Kein Prozess darf B-Aktionen durchführen oder " "Kindprozesse verfolgen, die B einsetzen." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "Once this value has been written to the file, it cannot be changed." msgstr "" "Sobald dieser Wert in die Datei geschrieben wurde, kann er nicht mehr " "geändert werden." # #. """""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "With respect to values 1 and 2, note that creating a new user namespace " "effectively removes the protection offered by Yama. This is because a " "process in the parent user namespace whose effective UID matches the UID of " "the creator of a child namespace has all capabilities (including " "B) when performing operations within the child user " "namespace (and further-removed descendants of that namespace). " "Consequently, when a process tries to use user namespaces to sandbox itself, " "it inadvertently weakens the protections offered by the Yama LSM." msgstr "" "Beachten Sie im Hinblick auf die Werte 1 und 2, dass die Erstellung eines " "neuen Benutzernamensraums effektiv den durch Yama bereitgestellten Schutz " "entfernt. Dies rührt daher, dass der Prozess in dem Elternbenutzerraum, " "dessen effektive UID auf die UID des Erstellers des Kindnamensraums passt, " "über alle Capabilitys (einschließlich B) verfügt, wenn er " "Aktionen innerhalb des Kindnamensraums (und weiter entfernter Nachkommen " "dieses Namensraums) durchführt. Wenn ein Prozess versucht, einen " "Benutzernamensraum zu verwenden, um sich in eine Sandbox zu bringen, wird er " "konsequenterweise den durch das Yama LSM bereitgestellten Schutz schwächen." #. 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 "Unterschiede C-Bibliothek/Kernel" #. type: Plain text #: archlinux debian-unstable fedora-rawhide opensuse-tumbleweed msgid "" "At the system call level, the B, B, and " "B operations have a different API: they store the result at " "the address specified by the I parameter, and the return value is the " "error flag. The glibc wrapper function provides the API given in " "DESCRIPTION above, with the result being returned via the function return " "value." msgstr "" "Auf der Systemaufrufebene haben die Aktionen B, " "B und B eine unterschiedliche " "Programmierschnittstelle: Sie speichern das Ergebnis an der durch den " "Parameter I angegebenen Adresse und der Rückgabewert ist ein " "Fehlercode. Die Glibc-Wrapper-Funktion stellt die oben in BESCHREIBUNG " "angegebene Programmierschnittstelle bereit. Ihr Ergebnis wird über den " "Rückgabewert der Funktion zurückgegeben." #. type: SH #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "BUGS" msgstr "FEHLER" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "On hosts with Linux 2.6 kernel headers, B is declared " "with a different value than the one for Linux 2.4. This leads to " "applications compiled with Linux 2.6 kernel headers failing when run on " "Linux 2.4. This can be worked around by redefining B to " "B, if that is defined." msgstr "" "Auf Rechnern mit 2.6 Linux-Headern ist B mit einem " "anderen Wert deklariert, als auf einem für 2.4. Dies führt dazu, dass " "Anwendungen, die mit 2.6-Linux-Headern kompiliert wurden, bei der Ausführung " "auf 2.4er Kerneln scheitern. Dies kann durch Neudefinieren von " "B zu B umgangen werden, wenn dies " "definiert ist." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Group-stop notifications are sent to the tracer, but not to real parent. " "Last confirmed on 2.6.38.6." msgstr "" "Gruppenstoppbenachrichtigungen werden an der Verfolger gesandt, aber nicht " "an den echten Elternprozess. Zuletzt auf 2.6.38.6 bestätigt." #. Note from Denys Vlasenko: #. Here "exits" means any kind of death - _exit, exit_group, #. signal death. Signal death and exit_group cases are trivial, #. though: since signal death and exit_group kill all other threads #. too, "until all other threads exit" thing happens rather soon #. in these cases. Therefore, only _exit presents observably #. puzzling behavior to ptrace users: thread leader _exit's, #. but WIFEXITED isn't reported! We are trying to explain here #. why it is so. #. FIXME . need to test/verify this scenario #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "If a thread group leader is traced and exits by calling B<_exit>(2), a " "B stop will happen for it (if requested), but the " "subsequent B notification will not be delivered until all other " "threads exit. As explained above, if one of other threads calls " "B(2), the death of the thread group leader will I be " "reported. If the execed thread is not traced by this tracer, the tracer " "will never know that B(2) happened. One possible workaround is to " "B the thread group leader instead of restarting it in this " "case. Last confirmed on 2.6.38.6." msgstr "" "Falls ein führender Thread einer Gruppe verfolgt und durch den Aufruf von " "B<_exit>(2) beendet wird, wird es für ihn zu einem B-" "Stopp kommen (falls angefordert), aber die nachfolgende B-" "Benachrichtigung wird nicht gesandt, bis alle anderen Threads beendet sind. " "Wie oben erklärt, wird der Tod des führenden Prozesses der Gruppe gemeldet, " "falls einer der anderen Threads B(2) aufruft. Falls der ausgeführte " "Thread nicht durch den Verfolger verfolgt wird, wird der Verfolger niemals " "erfahren, dass B(2) auftrat. Eine mögliche Notlösung ist ein " "B für den führenden Thread der Gruppe, anstatt ihn in diesem " "Fall neu zu starten. Zuletzt auf 2.6.38.6 bestätigt." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "A B signal may still cause a B stop before " "actual signal death. This may be changed in the future; B is meant " "to always immediately kill tasks even under ptrace. Last confirmed on Linux " "3.13." msgstr "" "Ein B-Signal kann immer noch einen B-Stopp vor " "dem tatsächlichen Signaltod verursachen. Dies könnte in Zukunft geändert " "werden; B ist dazu gedacht, Aufgaben immer sofort zu killen, sogar " "unter Ptrace. Zuletzt auf Linux 3.13 bestätigt." #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Some system calls return with B if a signal was sent to a tracee, but " "delivery was suppressed by the tracer. (This is very typical operation: it " "is usually done by debuggers on every attach, in order to not introduce a " "bogus B). As of Linux 3.2.9, the following system calls are " "affected (this list is likely incomplete): B(2), and B(2) " "from an B(7) file descriptor. The usual symptom of this bug is " "that when you attach to a quiescent process with the command" msgstr "" "Einige Systemaufrufe kehren mit B zurück, falls ein Signal an den " "verfolgten Prozess gesandt, die Auslieferung aber durch den Verfolger " "unterdrückt wurde. (Dies ist eine ganz typische Aktion: Sie wird " "normalerweise von Fehlersuchprogrammen bei jedem Anhängen durchgeführt, um " "kein fingiertes B einzuleiten.) Ab Linux 3.2.9 werden die folgenden " "Systemaufrufe beeinflusst (diese Liste ist wahrscheinlich nicht " "vollständig): B(2) und B(2) von einem B(7)-" "Dateideskriptor. Das übliche Anzeichen für diesen Fehler ist, falls Sie " "einen ruhenden Prozess mit dem Befehl" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "strace -p Eprocess-IDE\n" msgstr "strace -p EProzesskennungE\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "then, instead of the usual and expected one-line output such as" msgstr "anhängen, dass Sie statt der erwarteten einzeiligen Ausgabe, wie" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "restart_syscall(E... resuming interrupted call ...E_\n" msgstr "restart_syscall(E… resuming interrupted call …E_\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "select(6, [5], NULL, [5], NULL_\n" msgstr "select(6, [5], NULL, [5], NULL_\n" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "('_' denotes the cursor position), you observe more than one line. For " "example:" msgstr "" "('_' kennzeichnet die Cursor-Position) mehr als eine Zeile beobachten " "können, zum Beispiel:" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed #, no-wrap msgid "" " clock_gettime(CLOCK_MONOTONIC, {15370, 690928118}) = 0\n" " epoll_wait(4,_\n" msgstr "" " clock_gettime(CLOCK_MONOTONIC, {15370, 690928118}) = 0\n" " epoll_wait(4,_\n" # http://de.wikipedia.org/wiki/Mode-Setting#Mode-Setting_im_User-Space #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "What is not visible here is that the process was blocked in " "B(2) before B(1) has attached to it. Attaching caused " "B(2) to return to user space with the error B. In this " "particular case, the program reacted to B by checking the current " "time, and then executing B(2) again. (Programs which do not " "expect such \"stray\" B errors may behave in an unintended way upon " "an B(1) attach.)" msgstr "" "Was hier nicht sichtbar ist, ist, dass der Prozess in B(2) " "blockiert wurde, bevor B(1) an ihn angehängt hat. Das Anhängen " "verursachte ein B(2), um zum Anwendungsraum mit dem Fehler " "B zurückzukehren. In diesem besonderen Fall reagiert das Programm auf " "B, indem die aktuelle Zeit geprüft und dann B(2) erneut " "ausgeführt wird. (Programme, die keine derartigen »verirrten« B-" "Fehler erwarten, können sich bei einem B(1)-Anhängen in " "unbeabsichtigter Weise verhalten.)" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "Contrary to the normal rules, the glibc wrapper for B() can set " "I to zero." msgstr "" "Entgegen den normalen Regeln kann der Glibc-Wrapper für B() I " "auf Null setzen." #. 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 "SIEHE AUCH" #. type: Plain text #: archlinux debian-bookworm debian-unstable fedora-40 fedora-rawhide #: mageia-cauldron opensuse-leap-15-6 opensuse-tumbleweed msgid "" "B(1), B(1), B(1), B(2), B(2), " "B(2), B(2), B(2), B(2), B(2), " "B(2), B(2), B(2), B(3), B(7), " "B(7)" msgstr "" "B(1), B(1), B(1), B(2), B(2), " "B(2), B(2), B(2), B(2), B(2), " "B(2), B(2), B(2), B(3), B(7), " "B(7)" #. type: TH #: debian-bookworm #, no-wrap msgid "2023-02-05" msgstr "5. Februar 2023" #. type: TH #: debian-bookworm #, no-wrap msgid "Linux man-pages 6.03" msgstr "Linux man-pages 6.03" #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 #, no-wrap msgid "" "BIB<, pid_t >IB<,>\n" "B< void *>IB<, void *>IB<);>\n" msgstr "" "BIB<, pid_t >IB<,>\n" "B< void *>IB<, void *>IB<);>\n" #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "While being traced, the tracee will stop each time a signal is delivered, " "even if the signal is being ignored. (An exception is B, which has " "its usual effect.) The tracer will be notified at its next call to " "B(2) (or one of the related \"wait\" system calls); that call will " "return a I value containing information that indicates the cause of " "the stop in the tracee. While the tracee is stopped, the tracer can use " "various ptrace requests to inspect and modify the tracee. The tracer then " "causes the tracee to continue, optionally ignoring the delivered signal (or " "even delivering a different signal instead)." msgstr "" "Während der Prozess verfolgt wird, wird er jedesmal stoppen, wenn ein Signal " "gesandt wird, sogar wenn das Signal ignoriert wird. (Eine Ausnahme ist " "B, das seine normale Wirkung erzielt.) Der Verfolger wird bei " "seinem nächsten Aufruf von B(2) (oder den zugehörigen »wait«-" "Systemaufrufen) benachrichtigt; dies wird einen Iwert zurückgeben, " "der Informationen enthält, die den Grund angeben, weshalb der verfolgte " "Prozess stoppte. Während der verfolgte Prozess angehalten ist, kann der " "Verfolger verschiedene Ptrace-Anfragen verwenden, um den verfolgten Prozess " "zu untersuchen und zu verändern. Dann veranlasst der Verfolger den " "verfolgten Prozess fortzufahren und wahlweise das versandte Signal zu " "ignorieren (oder stattdessen sogar ein anderes Signal zu senden)." #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "The value of I determines the action to be performed:" msgstr "" "Der Wert des Arguments I legt die Aktion des Systemaufrufs fest:" #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "Indicate that this process is to be traced by its parent. A process " "probably shouldn't make this request if its parent isn't expecting to trace " "it. (I, I, and I are ignored.)" msgstr "" "zeigt an, dass dieser Prozess durch seinen Elternprozess verfolgt wird. Ein " "Prozess sollte diese Anfrage wahrscheinlich nicht stellen, falls sein " "Elternprozess nicht erwartet, ihn zu verfolgen.(I, I und " "I werden ignoriert.)" #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "The B request is used only by the tracee; the remaining " "requests are used only by the tracer. In the following requests, I " "specifies the thread ID of the tracee to be acted on. For requests other " "than B, B, B, and " "B, the tracee must be stopped." msgstr "" "Die B-Anfrage wird nur vom verfolgten Prozess benutzt; die " "verbleibenden Anfragen werden nur vom verfolgenden Prozess benutzt. In den " "folgenden Anfragen gibt I die Thread-Kennung des verfolgten Prozesses " "an, der beeinflusst werden soll. Für andere Anfragen als B, " "B, B und B muss der verfolgte " "Prozess gestoppt werden." #. type: TP #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "B, B" msgstr "B, B" #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "Read a word at the address I in the tracee's memory, returning the " "word as the result of the B() call. Linux does not have separate " "text and data address spaces, so these two requests are currently " "equivalent. (I is ignored; but see NOTES.)" msgstr "" "liest ein »word« an der Stelle I im Speicher des verfolgten " "Prozesses und gibt das »word« als Ergebnis des B()-Aufrufs zurück. " "Linux hat keine separaten Adressräume für Text und Daten, daher sind diese " "beiden Anfragen derzeit gleichwertig. (Das Argument I wird ignoriert, " "lesen Sie aber auch ANMERKUNGEN.)" #. type: TP #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "B, B" msgstr "B, B" #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "Copy the word I to the address I in the tracee's memory. As for " "B and B, these two requests are currently " "equivalent." msgstr "" "kopiert das »word« I an die Stelle I im Speicher des " "verfolgenden Prozesses. Wie bei B und B " "sind die beiden Anfragen derzeit gleichwertig." #. type: TP #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "B, B" msgstr "B, B" #. type: TP #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "B, B" msgstr "B, B" #. type: TP #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "B, B" msgstr "B, B" #. commit 3f471126ee53feb5e9b210ea2f525ed3bb9b7a7f #. As of 4.19-rc2 #. commit 27aa55c5e5123fa8b8ad0156559d34d7edff58ca #. see change_syscall in tools/testing/selftests/seccomp/seccomp_bpf.c #. and also strace's linux/*/set_scno.c files. #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "When in syscall-enter-stop, change the number of the system call that is " "about to be executed to the number specified in the I argument. The " "I argument is ignored. This request is currently supported only on " "arm (and arm64, though only for backwards compatibility), but most other " "architectures have other means of accomplishing this (usually by changing " "the register that the userland code passed the system call number in)." msgstr "" "Wenn im Systemaufrufeintrittsstopp, wird die Nummer des auszuführenden " "Systemaufrufs auf die im Argument I angegebene Nummer geändert. Das " "Argument I wird ignoriert. Die Anfrage wird derzeit nur auf Arm (und " "Arm64, allerdings nur für die Rückwärtskompatibilität) unterstützt, aber die " "meisten anderen Architekturen haben andere Mittel, um dies zu erreichen " "(normalerweise durch Änderung des Registers, in dem der Code aus der " "Anwendungsebene die Nummer des Systemaufrufs übergab)." #. type: TP #: debian-bookworm opensuse-leap-15-6 #, no-wrap msgid "B, B (since Linux 2.6.14)" msgstr "B, B (seit Linux 2.6.14)" #. As at 3.7 #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "For B, continue and stop on entry to the next system call, " "which will not be executed. See the documentation on syscall-stops below. " "For B, do the same but also singlestep if not a " "system call. This call is used by programs like User Mode Linux that want " "to emulate all the tracee's system calls. The I argument is treated " "as for B. The I argument is ignored. These requests are " "currently supported only on x86." msgstr "" "für B beim nächsten Eintritt für den Systemaufruf, der nicht " "ausgeführt wird, fortfahren und stoppen. Siehe die Dokumentation zu " "Systemaufrufstopps weiter unten. Für B das gleiche " "tun, aber in einem einzigen Schritt, wenn es sich nicht um einen " "Systemaufruf handelt. Dieser Aufruf wird von Programmen wie »User Mode " "Linux« verwandt, die die Systemaufrufe des verfolgten Prozesses emulieren " "wollen. Das Argument I wird wie für B behandelt. Das " "Argument I wird ignoriert. Diese Anfragen werden derzeit nur unter " "x86 unterstützt." #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "The tracer cannot assume that the ptrace-stopped tracee exists. There are " "many scenarios when the tracee may die while stopped (such as B). " "Therefore, the tracer must be prepared to handle an B error on any " "ptrace operation. Unfortunately, the same error is returned if the tracee " "exists but is not ptrace-stopped (for commands which require a stopped " "tracee), or if it is not traced by the process which issued the ptrace " "call. The tracer needs to keep track of the stopped/running state of the " "tracee, and interpret B as \"tracee died unexpectedly\" only if it " "knows that the tracee has been observed to enter ptrace-stop. Note that " "there is no guarantee that I will reliably report the " "tracee's death status if a ptrace operation returned B. " "I may return 0 instead. In other words, the tracee may be " "\"not yet fully dead\", but already refusing ptrace requests." msgstr "" "Der Verfolger kann nicht abschätzen, ob der von Ptrace gestoppte Prozess " "existiert. Es gibt mehrere Szenarien, in denen der verfolgte Prozess sterben " "kann, während er gestoppt ist (wie B). Daher muss der Verfolger " "vorbereitet werden, bei allen Ptrace-Aktionen einen B-Fehler zu " "handhaben. Leider wird der gleiche Fehler zurückgegeben, falls der verfolgte " "Prozess existiert, aber nicht von Ptrace gestoppt wurde (für Befehle, die " "einen gestoppten, verfolgten Prozess erfordern) oder falls er nicht durch " "den Prozess verfolgt wird, der den Ptrace-Aufruf abschickte. Der Verfolger " "muss den Überblick über den »laufend«-/»gestoppt«-Status des verfolgten " "Prozesses behalten und B nur dann als »verfolgter Prozess starb " "unerwartet« interpretieren, falls er weiß, dass der verfolgte Prozess " "beobachtet wurde, um in einen Ptrace-Stopp einzutreten. Beachten Sie, dass " "es keine Garantie gibt, dass I zuverlässig den Todesstatus " "des verfolgten Prozesses meldet, falls eine Ptrace-Aktion B " "zurückgibt. I könnte stattdessen 0 zurückgeben. In anderen " "Worten kann es sein, dass der verfolgte Prozess »noch nicht vollständig tot« " "ist, aber bereits Ptrace-Anfragen ablehnt." #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "When a (possibly multithreaded) process receives any signal except " "B, the kernel selects an arbitrary thread which handles the " "signal. (If the signal is generated with B(2), the target thread " "can be explicitly selected by the caller.) If the selected thread is " "traced, it enters signal-delivery-stop. At this point, the signal is not " "yet delivered to the process, and can be suppressed by the tracer. If the " "tracer doesn't suppress the signal, it passes the signal to the tracee in " "the next ptrace restart request. This second step of signal delivery is " "called I in this manual page. Note that if the signal is " "blocked, signal-delivery-stop doesn't happen until the signal is unblocked, " "with the usual exception that B can't be blocked." msgstr "" "Wenn ein Prozess (möglicherweise mit mehreren Threads) ein Signal außer " "B empfängt, wählt der Kernel einen beliebigen Thread aus, der das " "Signal handhabt. (Falls das Signal mit B(2) erzeugt wurde, kann der " "Ziel-Thread explizit durch den Aufrufenden ausgewählt werden.) Falls der " "ausgewählte Thread verfolgt wird, tritt er in einen Signallieferstopp ein. " "An diesem Punkt wird das Signal noch nicht an den Prozess zugestellt und " "kann durch den Verfolger unterdrückt werden. Falls der Verfolger das Signal " "nicht unterdrückt, übergibt er das Signal bei der nächsten Ptrace-" "Neustartanfrage an den verfolgten Prozess. Dieser zweite Schritt der " "Signalzustellung wird in dieser Handbuchseite I genannt. " "Beachten Sie, dass, falls das Signal blockiert ist, der Signallieferstopp " "nicht auftritt, bis die Blockade des Signals aufgehoben wurde, mit der " "üblichen Ausnahme, dass B nicht blockiert werden kann." #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "where B is one of the restarting ptrace requests. If I " "is 0, then a signal is not delivered. Otherwise, the signal I is " "delivered. This operation is called I in this manual " "page, to distinguish it from signal-delivery-stop." msgstr "" "neu starten, wobei B einer der neu startenden Ptrace-" "Anfragen ist. Falls I 0 ist, wird das Signal nicht zugestellt. " "Andernfalls wird das Signal I zugestellt. Diese Aktion wird in " "dieser Handbuchseite I genannt, um sie vom " "Signallieferstopp zu unterscheiden." #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "The fact that signal injection requests may be ignored when restarting the " "tracee after ptrace stops that are not signal-delivery-stops is a cause of " "confusion among ptrace users. One typical scenario is that the tracer " "observes group-stop, mistakes it for signal-delivery-stop, restarts the " "tracee with" msgstr "" "Die Tatsache, dass Signaleinspeisungsanfragen beim erneuten Starten des " "verfolgten Prozesses nach Ptrace-Stopps, die keine Signallieferstopps sind, " "ignoriert werden können, ist ein Grund für Verwirrung bei Ptrace-Benutzern. " "Ein typisches Szenario ist, dass der Verfolger Gruppenstopps beobachtet, sie " "fälschlicherweise für Signallieferstopps hält und den verfolgen Prozess mit" #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "B was delivered as a result of a user-space action, for example, a " "system call (B(2), B(2), B(3), etc.), expiration of " "a POSIX timer, change of state on a POSIX message queue, or completion of an " "asynchronous I/O request." msgstr "" "B wurde mit einem Ergebnis einer Anwendungsraumaktion, zum Beispiel " "einem Systemaufruf ((B(2), B(2), B(3), etc.), Ablauf " "eines POSIX-Timers, Statusänderung einer POSIX-Nachrichtenwarteschlange oder " "Vervollständigung einer asynchronen E/A-Anfrage geliefert." #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "The request" msgstr "Die Anfrage" #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "On success, the B requests return the requested data (but see " "NOTES), the B request returns the number of " "instructions in the BPF program, the B request " "returns the number of bytes available to be written by the kernel, and other " "requests return zero." msgstr "" "Bei Erfolg geben die B-Anfragen die angeforderten Daten zurück " "(aber siehe die ANMERKUNGEN), die Anfrage B " "liefert die Anzahl der Anweisungen in dem BPF-Programm zurück, die Anfrage " "B liefert die Anzahl der Byte zurück, die zum " "Schreiben durch den Kernel verfügbar sind und andere Anfragen geben Null " "zurück." #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "On error, all requests return -1, and I is set to indicate the " "error. Since the value returned by a successful B request may " "be -1, the caller must clear I before the call, and then check it " "afterward to determine whether or not an error occurred." msgstr "" "Bei einem Fehler geben alle Anfragen -1 zurück und I wird gesetzt, um " "den Fehler anzuzeigen. Da der Wert, der von einer erfolgreichen " "B-Anfrage zurückgegeben wurde, -1 sein könnte, muss der " "Aufrufende vor dem Aufruf I leeren und es dann hinterher untersuchen, " "um festzustellen, ob ein Fehler aufgetreten ist oder nicht." #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "I is invalid, or an attempt was made to read from or write to an " "invalid area in the tracer's or the tracee's memory, or there was a word-" "alignment violation, or an invalid signal was specified during a restart " "request." msgstr "" "I ist ungültig, es wurde versucht, in einem ungültigen Bereich im " "Speicher des Verfolgers oder des verfolgten Prozesses zu lesen oder zu " "schreiben, es gab eine Verletzung der Ausrichtung an der »word«-Größe oder " "es wurde während des Neustarts der Abfrage ein ungültiges Signal angegeben." #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "The specified process does not exist, or is not currently being traced by " "the caller, or is not stopped (for requests that require a stopped tracee)." msgstr "" "Der angegebene Prozess existiert nicht, wird derzeit nicht vom Aufrufenden " "verfolgt oder ist nicht gestoppt (bei Anfragen, die einen gestoppten " "verfolgten Prozess erfordern)." #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "Although arguments to B() are interpreted according to the " "prototype given, glibc currently declares B() as a variadic " "function with only the I argument fixed. It is recommended to " "always supply four arguments, even if the requested operation does not use " "them, setting unused/ignored arguments to I<0L> or I<(void\\ *)\\ 0>." msgstr "" "Obwohl Argumente für B() gemäß dem angegebenen Prototypen " "interpretiert werden, deklariert Glibc derzeit B() als eine variable " "Funktion mit nur dem festen I-Argument. Es wird empfohlen, immer " "vier Argumente anzugeben, sogar dann, wenn die angeforderte Aktion sie nicht " "verwendet. Setzen Sie unbenutzte/ignorierte Argumente auf I<0L> oder " "I<(void\\ *)\\ 0>." #. type: Plain text #: debian-bookworm fedora-40 mageia-cauldron opensuse-leap-15-6 msgid "" "At the system call level, the B, B, and " "B requests have a different API: they store the result at " "the address specified by the I parameter, and the return value is the " "error flag. The glibc wrapper function provides the API given in " "DESCRIPTION above, with the result being returned via the function return " "value." msgstr "" "Auf der Systemaufrufebene haben die Anfragen B, " "B und B eine unterschiedliche " "Programmierschnittstelle: Sie speichern das Ergebnis an der durch den " "Parameter I angegebenen Adresse und der Rückgabewert ist ein " "Fehlercode. Die Glibc-Wrapper-Funktion stellt die oben in BESCHREIBUNG " "angegebene Programmierschnittstelle bereit. Ihr Ergebnis wird über den " "Rückgabewert der Funktion zurückgegeben." #. type: TH #: fedora-40 mageia-cauldron #, no-wrap msgid "2023-10-31" msgstr "31. Oktober 2023" #. type: TH #: fedora-40 mageia-cauldron #, no-wrap msgid "Linux man-pages 6.06" msgstr "Linux man-pages 6.06" #. type: TH #: fedora-rawhide #, no-wrap msgid "2024-03-03" msgstr "3. März 2024" #. type: TH #: fedora-rawhide #, no-wrap msgid "Linux man-pages 6.7" msgstr "Linux man-pages 6.7" #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "2023-03-30" msgstr "30. März 2023" #. type: TH #: opensuse-leap-15-6 #, no-wrap msgid "Linux man-pages 6.04" msgstr "Linux-Handbuchseiten 6.04" #. type: TH #: opensuse-tumbleweed #, no-wrap msgid "Linux man-pages (unreleased)" msgstr "Linux man-pages (unveröffentlicht)"