manpages-de - en to de translation catalogue (39 entries)

note: type: TH
en: 2019-03-06
de: 6. März 2019

note: type: TH
en: Linux Programmer's Manual
de: Linux-Programmierhandbuch

note: type: SH
en: NAME
de: BEZEICHNUNG

note: type: Plain text
en: strcpy, strncpy - copy a string
de: strcpy, strncpy - kopiert eine Zeichenkette

note: type: SH
en: SYNOPSIS
de: ÜBERSICHT

note: type: Plain text
en: B<char *strcpy(char *>I<dest>B<, const char *>I<src>B<);>
de: B<char *strcpy(char *>I<Ziel>B<, const char *>I<Quelle>B<);>

note: type: Plain text
en: B<char *strncpy(char *>I<dest>B<, const char *>I<src>B<, size_t >I<n>B<);>
de: B<char *strncpy(char *>I<Ziel>B<, const char *>I<Quelle>B<, size_t >I<n>B<);>

note: type: SH
en: DESCRIPTION
de: BESCHREIBUNG

note: type: Plain text
en: The B<strcpy>()  function copies the string pointed to by I<src>, including the terminating null byte (\(aq\e0\(aq), to the buffer pointed to by I<dest>.  The strings may not overlap, and the destination string I<dest> must be large enough to receive the copy.  I<Beware of buffer overruns!> (See BUGS.)
de: Die Funktion B<strcpy>() kopiert die Zeichenkette, auf die der Zeiger I<Quelle> zeigt, inklusive des abschließenden Null-Bytes (\(aq\e0\(aq) an die Stelle, auf die I<Ziel> zeigt. Die Zeichenketten dürfen sich nicht überlappen und die Zielzeichenkette I<Ziel> muss groß genug sein, um die Kopie aufzunehmen. B<Vorsicht vor Pufferüberläufen!> (Siehe FEHLER)

note: type: Plain text
en: The B<strncpy>()  function is similar, except that at most I<n> bytes of I<src> are copied.  B<Warning>: If there is no null byte among the first I<n> bytes of I<src>, the string placed in I<dest> will not be null-terminated.
de: Die Funktion B<strncpy>() arbeitet ähnlich, allerdings werden maximal I<n> Byte von I<Quelle> kopiert. B<Warnung>: Ist kein Null-Byte innerhalb der ersten I<n> Byte von I<Quelle>, wird die Zeichenkette in I<Ziel> nicht durch ein Null-Byte abgeschlossen.

note: type: Plain text
en: If the length of I<src> is less than I<n>, B<strncpy>()  writes additional null bytes to I<dest> to ensure that a total of I<n> bytes are written.
de: Ist die Länge von I<Quelle> kleiner als I<n>, schreibt B<strncpy>() zusätzliche Null-Bytes nach I<Ziel>, um sicherzustellen, dass insgesamt I<n> Byte geschrieben werden.

note: type: Plain text
en: A simple implementation of B<strncpy>()  might be:
de: Eine einfache Implementierung von B<strncpy>() ist:

note: type: Plain text
en: char *
    strncpy(char *dest, const char *src, size_t n)
    {
        size_t i;
de: char *
    strncpy(char *Ziel, const char *Quelle, size_t n)
    {
        size_t i;

note: type: Plain text
en:     for (i = 0; i E<lt> n && src[i] != \(aq\e0\(aq; i++)
            dest[i] = src[i];
        for ( ; i E<lt> n; i++)
            dest[i] = \(aq\e0\(aq;
de:     for (i = 0; i E<lt> n && Quelle[i] != \(aq\e0\(aq; i++)
            Ziel[i] = Quelle[i];
        for ( ; i E<lt> n; i++)
            Ziel[i] = \(aq\e0\(aq;

note: type: Plain text
en:     return dest;
    }
de:     return Ziel;
    }

note: type: SH
en: RETURN VALUE
de: RÜCKGABEWERT

note: type: Plain text
en: The B<strcpy>()  and B<strncpy>()  functions return a pointer to the destination string I<dest>.
de: Die Funktionen B<strcpy>() und B<strncpy>() geben einen Zeiger auf die Zielzeichenkette I<Ziel> zurück.

note: type: SH
en: ATTRIBUTES
de: ATTRIBUTE

note: type: Plain text
en: For an explanation of the terms used in this section, see B<attributes>(7).
de: Siehe B<attributes>(7) für eine Erläuterung der in diesem Abschnitt verwandten Ausdrücke.

note: type: tbl table
en: Interface
de: Schnittstelle

note: type: tbl table
en: Attribute
de: Attribut

note: type: tbl table
en: Value
de: Wert

note: type: tbl table
en: Thread safety
de: Multithread-Fähigkeit

note: type: SH
en: CONFORMING TO
de: KONFORM ZU

note: type: SH
en: NOTES
de: ANMERKUNGEN

note: type: Plain text
en: Some programmers consider B<strncpy>()  to be inefficient and error prone.  If the programmer knows (i.e., includes code to test!)  that the size of I<dest> is greater than the length of I<src>, then B<strcpy>()  can be used.
de: Einige Programmierer halten B<strncpy>() für ineffizient und fehleranfällig. Wenn der Programmierer weiß, dass die Größe von I<Ziel> größer ist als die Länge von I<Quelle> (indem er Code verwendet, der das überprüft!), kann B<strcpy>() benutzt werden.

note: type: Plain text
en: One valid (and intended) use of B<strncpy>()  is to copy a C string to a fixed-length buffer while ensuring both that the buffer is not overflowed and that unused bytes in the destination buffer are zeroed out (perhaps to prevent information leaks if the buffer is to be written to media or transmitted to another process via an interprocess communication technique).
de: Eine gültige (und beabsichtigte) Anwendung von B<strncpy>() ist es, eine C-Zeichenkette in einen Puffer fester Länge zu kopieren und zugleich zweierlei zu garantieren: der Puffer läuft nicht über und nicht benutzte Bytes im Zielpuffer werden auf Null gesetzt. (Vielleicht, um Informationslecks zu verhindern, wenn der Puffer auf Medien geschrieben oder mittels einer IPC-Technik (Interprozesskommunikation) zu einem anderen Prozess übertragen werden soll.)

note: type: Plain text
en: If there is no terminating null byte in the first I<n> bytes of I<src>, B<strncpy>()  produces an unterminated string in I<dest>.  If I<buf> has length I<buflen>, you can force termination using something like the following:
de: Wenn kein abschließendes Null-Byte innerhalb der ersten I<n> Bytes von I<Quelle> enthalten ist, erstellt B<strncpy>() eine nicht abgeschlossene Zeichenkette in I<Ziel>. Falls I<buf> die Länge I<buflen> hat, können Sie den Abschluss durch etwas wie das Folgende erzwingen:

note: type: Plain text
en: (Of course, the above technique ignores the fact that, if I<src> contains more than I<buflen\ -\ 1> bytes, information is lost in the copying to I<dest>.)
de: (Die obige Technik ignoriert natürlich die Tatsache, dass falls die I<Quelle> mehr als I<buflen\ -\ 1> Byte enthält, diese Informationen beim Kopieren nach I<Ziel> verloren gehen.)

note: type: Plain text
en: Some systems (the BSDs, Solaris, and others) provide the following function:
de: Einige Systeme (die BSDs, Solaris und andere) stellen die folgende Funktion bereit:

note: type: Plain text
en:     size_t strlcpy(char *dest, const char *src, size_t size);
de:     size_t strlcpy(char *ziel, const char *quelle, size_t groesse);

note: http://static.usenix.org/event/usenix99/full_papers/millert/millert_html/index.html "strlcpy and strlcat - consistent, safe, string copy and concatenation" 1999 USENIX Annual Technical Conference https://lwn.net/Articles/506530/ type: Plain text
en: This function is similar to B<strncpy>(), but it copies at most I<size-1> bytes to I<dest>, always adds a terminating null byte, and does not pad the destination with (further) null bytes.  This function fixes some of the problems of B<strcpy>()  and B<strncpy>(), but the caller must still handle the possibility of data loss if I<size> is too small.  The return value of the function is the length of I<src>, which allows truncation to be easily detected: if the return value is greater than or equal to I<size>, truncation occurred.  If loss of data matters, the caller I<must> either check the arguments before the call, or test the function return value.  B<strlcpy>()  is not present in glibc and is not standardized by POSIX, but is available on Linux via the I<libbsd> library.
de: Diese Funktion ähnelt B<strncpy>(), aber sie kopiert höchstens I<groesse-1> Byte zum I<ziel>, fügt immer ein abschließendes Null-Byte hinzu und füllt das Ziel nicht mit (weiteren) Null-Bytes auf. Diese Funktion behebt einige der Probleme von B<strcpy>() und B<strncpy>(), aber der Aufrufende muss sich mit der Möglichkeit von Datenverlust befassen, wenn I<groesse> zu klein ist. Der Rückgabewert der Funktion ist die Länge der I<quelle>, mit der die Verkürzung leicht erkannt werden kann: wenn der Rückgabewert größer als oder gleich der I<groesse> ist, wurde verkürzt. Wenn Datenverlust nicht auftreten darf, I<muss> der Aufrufende entweder die Argumente vor dem Aufruf oder den Rückgabewert der Funktion prüfen. B<strlcpy>() ist nicht in der Glibc vorhanden und nicht von POSIX standardisiert, sondern ist unter Linux über die Bibliothek I<libbsd> verfügbar.

note: type: SH
en: BUGS
de: FEHLER

note: type: Plain text
en: If the destination string of a B<strcpy>()  is not large enough, then anything might happen.  Overflowing fixed-length string buffers is a favorite cracker technique for taking complete control of the machine.  Any time a program reads or copies data into a buffer, the program first needs to check that there's enough space.  This may be unnecessary if you can show that overflow is impossible, but be careful: programs can get changed over time, in ways that may make the impossible possible.
de: Wenn die Zielzeichenkette beim Aufruf von B<strcpy>() nicht groß genug ist, kann alles Denkbare passieren. Der Überlauf von Zeichenkettenpuffern mit fester Länge ist eine beliebte Cracker-Technik, um vollständige Kontrolle über einen Rechner zu erlangen. Immer, wenn ein Programm Daten aus einem Puffer liest oder in ihn schreibt, muss das Programm zuerst überprüfen, ob es genug freien Platz gibt. Das kann überflüssig sein, wenn Sie beweisen können, dass ein Überlauf unmöglich ist, aber seien Sie vorsichtig: Programme können im Lauf der Zeit geändert werden. Und plötzlich wird das Unmögliche möglich.

note: type: SH
en: SEE ALSO
de: SIEHE AUCH

note: type: SH
en: COLOPHON
de: KOLOPHON

note: type: Plain text
en: This page is part of release 5.03 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
de: Diese Seite ist Teil der Veröffentlichung 5.03 des Projekts Linux-I<man-pages>. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter \%https://www.kernel.org/doc/man-pages/.

note: type: Plain text
en: This page is part of release 5.02 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
de: Diese Seite ist Teil der Veröffentlichung 5.02 des Projekts Linux-I<man-pages>. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter \%https://www.kernel.org/doc/man-pages/.

note: type: Plain text
en: This page is part of release 5.01 of the Linux I<man-pages> project.  A description of the project, information about reporting bugs, and the latest version of this page, can be found at \%https://www.kernel.org/doc/man-pages/.
de: Diese Seite ist Teil der Veröffentlichung 5.01 des Projekts Linux-I<man-pages>. Eine Beschreibung des Projekts, Informationen, wie Fehler gemeldet werden können sowie die aktuelle Version dieser Seite finden sich unter \%https://www.kernel.org/doc/man-pages/.
