PR_SET_MM_EXE_FILE(2const)

BEZEICHNUNG
PR_SET_MM_EXE_FILE - Verändert Kernelspeicher-Map-Beschreibungsfelder

BIBLIOTHEK
Standard-C-Bibliothek (libc, -lc)

ÜBERSICHT
#include <linux/prctl.h>  /* Definition der PR_*-Konstanten */
#include <sys/prctl.h>

int prctl(PR_SET_MM, PR_SET_MM_EXE_FILE, long dd, 0L, 0L);

BESCHREIBUNG
Ersetzt den symbolischen Link /proc/PID/exe durch einen neuen, der auf eine neue Programmdatei zeigt, die durch den im Argument dd bereitgestellten Dateideskriptor identifiziert wird. Der Dateideskriptor sollte mit einem regulären Aufruf von open(2) erhalten worden sein.

Um den symbolischen Link zu ändern, müssen Sie das Mapping aller bestehenden Programmspeicherbereiche entfernen, einschließlich derer, die der Kernel selbst erstellt hat (der Kernel erstellt beispielsweise mindestens einen ausführbaren Programmbereich für den ELF-Abschnitt .text).

RÜCKGABEWERT
Bei Erfolg wird 0 zurückgegeben. Bei einem Fehler wird -1 zurückgegeben und errno gesetzt, um den Fehler anzuzeigen.

FEHLER

EACCES
    Die Datei ist nicht ausführbar.

EBADF
    Der in dd übergebene Dateideskriptor ist ungültig.

EBUSY
    Dies ist der zweite Versuch, den symbolischen Link /proc/PID/exe zu ändern.

DATEIEN

/proc/PID/exe

STANDARDS
Linux.

GESCHICHTE
Linux 3.5.

Unter Linux 4.9 und älter kann die Aktion PR_SET_MM_EXE_FILE während der Lebensdauer eines Prozesses nur einmal durchgeführt werden. Wird ein zweiter Versuch durchgeführt, dann führt dies zu dem Fehler EPERM. Diese Einschränkung wurde aus Sicherheitsgründen durchgesetzt, die später als fadenscheinig angesehen wurden. In Linux 4.10 wurde diese Einschränkung entfernt, da einige Benutzeranwendungen diese Aktion mehr als einmal ausführen mussten.

SIEHE AUCH
prctl(2), PR_SET_MM(2const), proc_pid_exe(5)

ÜBERSETZUNG
Die deutsche Übersetzung dieser Handbuchseite wurde von Helge Kreutzmann <debian@helgefjell.de> erstellt.

Diese Übersetzung ist Freie Dokumentation; lesen Sie die GNU General Public License Version 3 (https://www.gnu.org/licenses/gpl-3.0.html) oder neuer bezüglich der Copyright-Bedingungen. Es wird KEINE HAFTUNG übernommen.

Wenn Sie Fehler in der Übersetzung dieser Handbuchseite finden, schicken Sie bitte eine E-Mail an die Mailingliste der Übersetzer: debian-l10n-german@lists.debian.org.