[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

[RFR] man://manpages-de/accept.2



77 Zeichenketten mit Original-Thorvalds-Zitat.

Gruß,
Chris
# German translation of manpages - accept.2.
# This file is distributed under the same license as the manpages-de package.
# Chris Leick <c.leick@vollbio.de>, 2010.
#
msgid ""
msgstr ""
"Project-Id-Version: manpages-de\n"
"POT-Creation-Date: 2010-10-22 16:23+0300\n"
"PO-Revision-Date: 2010-11-14 11:44+0200\n"
"Last-Translator: Chris Leick <c.leick@vollbio.de>\n"
"Language-Team: German <debian-l10n-german@lists.debian.org>\n"
"Language: de\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"


#. type: TH
#, no-wrap
msgid "ACCEPT"
msgstr "ACCEPT"

#. type: TH
#, no-wrap
msgid "2009-02-23"
msgstr "23. Februar 2009"

#. type: TH
#, no-wrap
msgid "Linux"
msgstr "Linux"

#. type: TH
#, no-wrap
msgid "Linux Programmer's Manual"
msgstr "Linux-Programmierhandbuch"

#. type: SH
#, no-wrap
msgid "NAME"
msgstr "BEZEICHNUNG"

#. type: Plain text
msgid "accept - accept a connection on a socket"
msgstr "accept - nimmt eine Verbindung auf einem Socket an"

#. type: SH
#, no-wrap
msgid "SYNOPSIS"
msgstr "Ã?BERSICHT"

#. type: Plain text
#, no-wrap
msgid ""
"B<#include E<lt>sys/types.hE<gt>>          /* See NOTES */\n"
msgstr ""
"B<#include E<lt>sys/types.hE<gt>>           /* Lesen Sie die ANMERKUNGEN */\n"

#. type: Plain text
#, no-wrap
msgid "B<int accept(int >I<sockfd>B<, struct sockaddr *>I<addr>B<, socklen_t *>I<addrlen>B<);>\n"
msgstr ""
"B<int accept(int >I<sockfd>B<, struct sockaddr *>I<adresse>B<, socklen_t "
"*>I<adresslaenge>B<);>\n"

#. type: Plain text
#, no-wrap
msgid ""
"B<#define _GNU_SOURCE>\n"
"B<#include E<lt>sys/socket.hE<gt>>\n"
msgstr ""
"B<#define _GNU_SOURCE>\n"
"B<#include E<lt>sys/socket.hE<gt>>\n"

#. type: Plain text
#, no-wrap
msgid ""
"B<int accept4(int >I<sockfd>B<, struct sockaddr *>I<addr>B<,>\n"
"B<            socklen_t *>I<addrlen>B<, int >I<flags>B<);>\n"
msgstr ""
"B<int accept4(int >I<sockfd>B<, struct sockaddr *>I<adresse>B<,>\n"
"B<            socklen_t *>I<adresslaenge>B<, int >I<schalter>B<);>\n"

#. type: SH
#, no-wrap
msgid "DESCRIPTION"
msgstr "BESCHREIBUNG"

#. type: Plain text
msgid ""
"The B<accept>()  system call is used with connection-based socket types "
"(B<SOCK_STREAM>, B<SOCK_SEQPACKET>).  It extracts the first connection "
"request on the queue of pending connections for the listening socket, "
"I<sockfd>, creates a new connected socket, and returns a new file descriptor "
"referring to that socket.  The newly created socket is not in the listening "
"state.  The original socket I<sockfd> is unaffected by this call."
msgstr ""
"Der Systemaufruf B<accept>() wird mit den verbindungsbasierten Sockettypen "
"(B<SOCK_STREAM> und B<SOCK_SEQPACKET>) benutzt. Er extrahiert die erste "
"Verbindungsanfrage in der Warteschlange ausstehender Verbindungen für das "
"wartende Socket I<sockfd>, erzeugt eine neues verbundenes Socket und gibt "
"einen neuen Datei-Deskriptor zurück, der sich auf dieses Socket bezieht. Das "
"neu erstellte Socket ist nicht im Wartezustand. Das Original-Socket I<sockfd> "
"wird von diesem Aufruf nicht beeinflusst."

#. type: Plain text
msgid ""
"The argument I<sockfd> is a socket that has been created with B<socket>(2), "
"bound to a local address with B<bind>(2), and is listening for connections "
"after a B<listen>(2)."
msgstr ""
"Das Argument I<sockfd> ist ein Socket, das mit B<socket>(2) erstellt wurde, "
"mit B<bind>(2) an eine lokale Adresse gebunden ist und nach einem "
"B<listen>(2) auf Verbindungen wartet."

#. type: Plain text
msgid ""
"The argument I<addr> is a pointer to a I<sockaddr> structure.  This "
"structure is filled in with the address of the peer socket, as known to the "
"communications layer.  The exact format of the address returned I<addr> is "
"determined by the socket's address family (see B<socket>(2)  and the "
"respective protocol man pages).  When I<addr> is NULL, nothing is filled in; "
"in this case, I<addrlen> is not used, and should also be NULL."
msgstr ""
"Das Argument I<adresse> ist ein Zeiger auf eine I<sockaddr>-Struktur. Diese "
"Struktur ist gefüllt mit der Adresse des Peer-Sockets, wie sie der "
"Kommunikationsschicht bekannt ist. Das exakte Format der zurückgegebenen "
"Adresse I<adresse> wird durch die Adressfamilie des Sockets festgelegt (siehe "
"B<socket>(2) und die jeweiligen Protokoll-Handbuchseiten). Wenn I<adresse> "
"NULL ist, wird nichts hineingefüllt; in diesem Fall wird I<adresslaenge> "
"nicht benutzt und sollte auch NULL sein."

#. type: Plain text
msgid ""
"The I<addrlen> argument is a value-result argument: the caller must "
"initialize it to contain the size (in bytes) of the structure pointed to by "
"I<addr>; on return it will contain the actual size of the peer address."
msgstr ""
"Das Argument I<adresslaenge> ist ein Wert-Ergebnis-Argument: Der Aufrufende "
"muss es initialisieren, um die Grö�e (in Byte) der Struktur zu erhalten, auf "
"die I<adresse> zeigt; bei der Rückkehr wird es die tatsächliche Grö�e der "
"Peer-Adresse enthalten."

#. type: Plain text
msgid ""
"The returned address is truncated if the buffer provided is too small; in "
"this case, I<addrlen> will return a value greater than was supplied to the "
"call."
msgstr ""
"Die zurückgegebene Adresse wird gekürzt, falls der bereitgestellte Puffer zu "
"klein ist; in diesem Fall wird I<adresslaenge> einen grö�eren Wert "
"zurückgeben, als der Aufruf bereitstellte."

#. type: Plain text
msgid ""
"If no pending connections are present on the queue, and the socket is not "
"marked as nonblocking, B<accept>()  blocks the caller until a connection is "
"present.  If the socket is marked nonblocking and no pending connections are "
"present on the queue, B<accept>()  fails with the error B<EAGAIN> or "
"B<EWOULDBLOCK>."
msgstr ""
"Falls keine ausstehenden Verbindungen in der Warteschlange sind und das "
"Socket nicht als »nonblocking« gekennzeichnet ist, blockt B<accept>() den "
"Aufrufenden bis eine Verbindung besteht. Wenn das Socket als »nonblocking« "
"gekennzeichnet ist und in der Warteschlange keine ausstehenden Verbindungen "
"sind, schlägt B<accept>() mit dem Fehler B<EAGAIN> oder B<EWOULDBLOCK> fehl."

#. type: Plain text
msgid ""
"In order to be notified of incoming connections on a socket, you can use "
"B<select>(2)  or B<poll>(2).  A readable event will be delivered when a new "
"connection is attempted and you may then call B<accept>()  to get a socket "
"for that connection.  Alternatively, you can set the socket to deliver "
"B<SIGIO> when activity occurs on a socket; see B<socket>(7)  for details."
msgstr ""
"Um über Verbindungen, die auf dem Socket ankommen informiert zu werden, kann "
"B<select>(2) oder B<poll>(2) benutzt werden. Wenn versucht wird, eine neue "
"Verbindung zu erstellen, wird ein lesbares Ereignis geliefert und sie können "
"B<accept>() aufrufen, um ein Socket für diese Verbindung zu erhalten. "
"Alternativ können Sie das Socket zum Liefern von B<SIGIO> setzen, wenn es "
"auf dem Socket zu Aktivität kommt; lesen Sie B<socket>(7), um Einzelheiten zu "
"erhalten."

#. type: Plain text
msgid ""
"For certain protocols which require an explicit confirmation, such as "
"DECNet, B<accept>()  can be thought of as merely dequeuing the next "
"connection request and not implying confirmation.  Confirmation can be "
"implied by a normal read or write on the new file descriptor, and rejection "
"can be implied by closing the new socket.  Currently only DECNet has these "
"semantics on Linux."
msgstr ""
"Bei bestimmten Protokollen, die explizite Bestätigung verlangen, wie DECNet, "
"kann davon ausgegangen werden, dass B<accept> nur die nächste Verbindung aus "
"der Warteschlange holt ohne sie automatisch zu bestätigen. Die Bestätigung "
"kann ein normaler Lese- oder Schreibvorgang auf dem neuen Deskriptor mit sich "
"bringen, eine Ablehung kann durch ein SchlieÃ?en des neuen Sockets impliziert "
"werden. Derzeit verfügt nur DECNet auf Linux über diese Semantiken."

#. type: Plain text
msgid ""
"If I<flags> is 0, then B<accept4>()  is the same as B<accept>().  The "
"following values can be bitwise ORed in I<flags> to obtain different "
"behavior:"
msgstr ""
"Falls I<schalter> 0 ist, dann entspricht B<accept4>() B<accept>(). Die "
"folgenden Werte können in I<schalter> bitweise ODER-verknüpft werden, um ein "
"unterschiedliches Verhalten zu bekommen:"

#. type: TP
#, no-wrap
msgid "B<SOCK_NONBLOCK>"
msgstr "B<SOCK_NONBLOCK>"

#. type: Plain text
# Soll hier wirklich »description« stehen?
msgid ""
"Set the B<O_NONBLOCK> file status flag on the new open file description.  "
"Using this flag saves extra calls to B<fcntl>(2)  to achieve the same result."
msgstr ""
"Setzt den Datei-Statusschalter B<O_NONBLOCK> für die neu geöffnete "
"Dateibeschreibung. Die Benutzung dieses Schalters speichert zusätzliche "
"Aufrufe nach B<fcntl>(2), um das gleiche Ergebnis zu erzielen."

#. type: TP
#, no-wrap
msgid "B<SOCK_CLOEXEC>"
msgstr "B<SOCK_CLOEXEC>"

#. type: Plain text
msgid ""
"Set the close-on-exec (B<FD_CLOEXEC>)  flag on the new file descriptor.  See "
"the description of the B<O_CLOEXEC> flag in B<open>(2)  for reasons why this "
"may be useful."
msgstr ""
"Setzt den Schlie�en-beim-Ausführen-Schalter B<FD_CLOEXEC> für den neu "
"geöffneten Datei-Deskriptor. Lesen Sie die Beschreibung des Schalters "
"B<O_CLOEXEC> in B<open>(2), um die Gründe zu beleuchten, warum dies nützlich "
"sein könnte."

#. type: SH
#, no-wrap
msgid "RETURN VALUE"
msgstr "RÃ?CKGABEWERT"

#. type: Plain text
msgid ""
"On success, these system calls return a nonnegative integer that is a "
"descriptor for the accepted socket.  On error, -1 is returned, and I<errno> "
"is set appropriately."
msgstr ""
"Bei Erfolg geben diese Systemaufrufe eine nicht negative Ganzzahl zurück, die "
"kein Deskriptor für das akzeptierte Socket ist. Bei einem Fehler wird -1 "
"zurückgegeben und I<errno> entsprechend gesetzt."

#. type: SS
#, no-wrap
msgid "Error Handling"
msgstr "Fehlerbehandlung"

#. type: Plain text
msgid ""
"Linux B<accept>()  (and B<accept4>())  passes already-pending network errors "
"on the new socket as an error code from B<accept>().  This behavior differs "
"from other BSD socket implementations.  For reliable operation the "
"application should detect the network errors defined for the protocol after "
"B<accept>()  and treat them like B<EAGAIN> by retrying.  In case of TCP/IP "
"these are B<ENETDOWN>, B<EPROTO>, B<ENOPROTOOPT>, B<EHOSTDOWN>, B<ENONET>, "
"B<EHOSTUNREACH>, B<EOPNOTSUPP>, and B<ENETUNREACH>."
msgstr ""
"Linux-B<accept>() (und B<accept4>()) reichen alle bereits ausstehenden "
"Netzwerkfehler an das neue Socket als einen Fehlerkode von B<accept>() "
"weiter. Dieses Verhalten unterscheidet sich von anderen "
"BSD-Socket-Implementierungen. Um zuverlässig operieren zu können, sollte die "
"Anwendung die für das Protokoll nach B<accept>() definierten Netzwerkfehler "
"aufspüren und sie wie B<EAGAIN> durch erneutes Probieren verfolgen. Im Fall "
"von TCP/IP sind dies B<ENETDOWN>, B<EPROTO>, B<ENOPROTOOPT>, B<EHOSTDOWN>, "
"B<ENONET>, B<EHOSTUNREACH>, B<EOPNOTSUPP>, und B<ENETUNREACH>."

#. type: SH
#, no-wrap
msgid "ERRORS"
msgstr "FEHLER"

#. type: TP
#, no-wrap
msgid "B<EAGAIN> or B<EWOULDBLOCK>"
msgstr "B<EAGAIN> oder B<EWOULDBLOCK>"

#.  Actually EAGAIN on Linux
#. type: Plain text
msgid ""
"The socket is marked nonblocking and no connections are present to be "
"accepted.  POSIX.1-2001 allows either error to be returned for this case, "
"and does not require these constants to have the same value, so a portable "
"application should check for both possibilities."
msgstr ""
"Das Socket ist als »nonblocking« gekennzeichnet und es sind keine "
"Verbindungen vorhanden, die akzeptiert werden müssen. POSIX.1-2001 erlaubt "
"in diesem Fall auch die Rückgabe eines Fehlers und benötigt diese Konstanten "
"nicht, um den gleichen Wert zu bekommen. Deshalb sollte eine portable "
"Anwendung beide Möglichkeiten prüfen."

#. type: TP
#, no-wrap
msgid "B<EBADF>"
msgstr "B<EBADF>"

#. type: Plain text
msgid "The descriptor is invalid."
msgstr "Der Deskriptor ist ungültig."

#. type: TP
#, no-wrap
msgid "B<ECONNABORTED>"
msgstr "B<ECONNABORTED>"

#. type: Plain text
msgid "A connection has been aborted."
msgstr "Eine Verbindung wurde abgebrochen."

#. type: TP
#, no-wrap
msgid "B<EFAULT>"
msgstr "B<EFAULT>"

#. type: Plain text
msgid ""
"The I<addr> argument is not in a writable part of the user address space."
msgstr ""
"Das Argument I<adresse> ist kein beschreibbarer Teil des Adressraums des "
"Benutzers."

#. type: TP
#, no-wrap
msgid "B<EINTR>"
msgstr "B<EINTR>"

#. type: Plain text
msgid ""
"The system call was interrupted by a signal that was caught before a valid "
"connection arrived; see B<signal>(7)."
msgstr ""
"Der Systemaufruf wurde durch ein Signal unterbrochen, das empfangen wurde "
"bevor eine gültige Verbindung ankam; lesen Sie B<signal>(7)."

#. type: TP
#, no-wrap
msgid "B<EINVAL>"
msgstr "B<EINVAL>"

#. type: Plain text
msgid ""
"Socket is not listening for connections, or I<addrlen> is invalid (e.g., is "
"negative)."
msgstr ""
"Das Socket wartet nicht auf Verbindungen oder I<adresslaenge> ist ungültig "
"(z.B. negativ)."

#. type: Plain text
msgid "(B<accept4>())  invalid value in I<flags>."
msgstr "(B<accept4>()) ungültiger Wert in I<schalter>"

#. type: TP
#, no-wrap
msgid "B<EMFILE>"
msgstr "B<EMFILE>"

#. type: Plain text
msgid "The per-process limit of open file descriptors has been reached."
msgstr "Die Beschränkung offener Datei-Deskriptoren pro Prozess wurde erreicht."

#. type: TP
#, no-wrap
msgid "B<ENFILE>"
msgstr "B<ENFILE>"

#. type: Plain text
msgid "The system limit on the total number of open files has been reached."
msgstr "Die Systembeschränkung für die Summe offener Datei wurde erreicht."

#. type: TP
#, no-wrap
msgid "B<ENOBUFS>, B<ENOMEM>"
msgstr "B<ENOBUFS>, B<ENOMEM>"

#. type: Plain text
msgid ""
"Not enough free memory.  This often means that the memory allocation is "
"limited by the socket buffer limits, not by the system memory."
msgstr ""
"Nicht genug Speicher. Dies bedeutet oft, dass die Speicherreservierung durch "
"die Socket-Pufferbeschränkungen begrenzt ist und nicht durch den "
"Systemspeicher."

#. type: TP
#, no-wrap
msgid "B<ENOTSOCK>"
msgstr "B<ENOTSOCK>"

#. type: Plain text
msgid "The descriptor references a file, not a socket."
msgstr "Der Deskriptor referenziert eine Datei und kein Socket."

#. type: TP
#, no-wrap
msgid "B<EOPNOTSUPP>"
msgstr "B<EOPNOTSUPP>"

#. type: Plain text
msgid "The referenced socket is not of type B<SOCK_STREAM>."
msgstr "Das referenzierte Socket ist nicht vom Typ B<SOCK_STREAM>."

#. type: TP
#, no-wrap
msgid "B<EPROTO>"
msgstr "B<EPROTO>"

#. type: Plain text
msgid "Protocol error."
msgstr "Protokollfehler"

#. type: Plain text
msgid "In addition, Linux B<accept>()  may fail if:"
msgstr "Zusätzlich könnte Linux-B<accept>() fehlschlagen, falls:"

#. type: TP
#, no-wrap
msgid "B<EPERM>"
msgstr "B<EPERM>"

#. type: Plain text
msgid "Firewall rules forbid connection."
msgstr "Firewallregeln die Verbindung verbieten"

#. type: Plain text
msgid ""
"In addition, network errors for the new socket and as defined for the "
"protocol may be returned.  Various Linux kernels can return other errors "
"such as B<ENOSR>, B<ESOCKTNOSUPPORT>, B<EPROTONOSUPPORT>, B<ETIMEDOUT>.  The "
"value B<ERESTARTSYS> may be seen during a trace."
msgstr ""
"Zusätzlich könnten Netzwerkfehler für das neue Socket und wie sie für das "
"Protokoll definiert sind, zurückgegeben werden. Verschiedene Linux-Kernel "
"können andere Fehler zurückgeben, wie B<ENOSR>, B<ESOCKTNOSUPPORT>, "
"B<EPROTONOSUPPORT> oder B<ETIMEDOUT>. Der Wert B<ERESTARTSYS> kann bei einer "
"Ablaufverfolgung entdeckt werden."

#. type: SH
#, no-wrap
msgid "VERSIONS"
msgstr "VERSIONEN"

#. type: Plain text
msgid ""
"The B<accept4>()  system call is available starting with Linux 2.6.28; "
"support in glibc is available starting with version 2.10."
msgstr ""
"Der Systemaufruf B<accept4>() ist seit Linux 2.6.28 verfügbar; Unterstützung "
"in Glibc ist seit Version 2.10 verfügbar."

#. type: SH
#, no-wrap
msgid "CONFORMING TO"
msgstr "KONFORM ZU"

#.  The BSD man page documents five possible error returns
#.  (EBADF, ENOTSOCK, EOPNOTSUPP, EWOULDBLOCK, EFAULT).
#.  POSIX.1-2001 documents errors
#.  EAGAIN, EBADF, ECONNABORTED, EINTR, EINVAL, EMFILE,
#.  ENFILE, ENOBUFS, ENOMEM, ENOTSOCK, EOPNOTSUPP, EPROTO, EWOULDBLOCK.
#.  In addition, SUSv2 documents EFAULT and ENOSR.
#. type: Plain text
msgid ""
"B<accept>(): POSIX.1-2001, SVr4, 4.4BSD, (B<accept>()  first appeared in "
"4.2BSD)."
msgstr ""
"B<accept>(): POSIX.1-2001, SVr4, 4.4BSD, (B<accept>() erstmalig erschienen in "
"4.2BSD)."

#. type: Plain text
msgid "B<accept4>()  is a nonstandard Linux extension."
msgstr "B<accept4>() ist keine Standard-Linux-Erweiterung."

#.  Some testing seems to show that Tru64 5.1 and HP-UX 11 also
#.  do not inherit file status flags -- MTK Jun 05
#. type: Plain text
msgid ""
"On Linux, the new socket returned by B<accept>()  does I<not> inherit file "
"status flags such as B<O_NONBLOCK> and B<O_ASYNC> from the listening "
"socket.  This behavior differs from the canonical BSD sockets "
"implementation.  Portable programs should not rely on inheritance or "
"noninheritance of file status flags and always explicitly set all required "
"flags on the socket returned from B<accept>()."
msgstr ""
"Auf Linux erbt das neue, von B<accept>() zurückgegebene Socket I<nicht> die "
"Datei-Statusschalter, wie B<O_NONBLOCK> und B<O_ASYNC> vom wartenden Socket. "
"Dieses Verhalten unterscheidet sich von der vorschriftsmä�igen "
"BSD-Socket-Implementierung. Portable Programme sollten sich nicht auf "
"Vererbung oder Nicht-Vererbung der Datei-Statusschalter verlassen und immer "
"explizit alle benötigten Schalter des Sockets setzen, das sie von B<accept>() "
"zurückbekommen."

#. type: SH
#, no-wrap
msgid "NOTES"
msgstr "ANMERKUNGEN"

#. type: Plain text
msgid ""
"POSIX.1-2001 does not require the inclusion of I<E<lt>sys/types.hE<gt>>, and "
"this header file is not required on Linux.  However, some historical (BSD) "
"implementations required this header file, and portable applications are "
"probably wise to include it."
msgstr ""
"POSIX.1-2001  benötigt nicht die Einbindung von I<E<lt>sys/types.hE<gt>> und "
"diese Header-Datei wird auf Linux nicht benötigt. Allerdings benötigten "
"einige historische (BSD-) Implementierungen diese Header-Datei und portierbare "
"Anwendungen sind gut beraten, sie einzufügen."

#. type: Plain text
msgid ""
"There may not always be a connection waiting after a B<SIGIO> is delivered "
"or B<select>(2)  or B<poll>(2)  return a readability event because the "
"connection might have been removed by an asynchronous network error or "
"another thread before B<accept>()  is called.  If this happens then the call "
"will block waiting for the next connection to arrive.  To ensure that "
"B<accept>()  never blocks, the passed socket I<sockfd> needs to have the "
"B<O_NONBLOCK> flag set (see B<socket>(7))."
msgstr ""
"Es könnte sein, dass nicht immer eine Verbindung wartet, nachdem ein B<SIGIO> "
"zugestellt wurde oder B<select>(2) oder B<poll>(2) ein Lesebarkeitsereignis "
"zurückgeben, weil die Verbindung von einem asynchronen Netwerkfehler oder "
"einem anderen Thread entfernt worden sein könnte bevor B<accept>() aufgerufen "
"wurde. Falls dies geschieht, wird der Aufruf das Warten auf die Ankunft der "
"nächsten Verbindung blockieren. Um sicherzustellen, dass B<accept>() niemals "
"blockiert, muss beim durchgereichten Socket I<sockfd> der Schalter "
"B<O_NONBLOCK> gesetzt werden (siehe B<socket>(7))."

#. type: SS
#, no-wrap
msgid "The socklen_t type"
msgstr "Der Typ socklen_t"

#. type: Plain text
msgid ""
"The third argument of B<accept>()  was originally declared as an I<int *> "
"(and is that under libc4 and libc5 and on many other systems like 4.x BSD, "
"SunOS 4, SGI); a POSIX.1g draft standard wanted to change it into a I<size_t "
"*>, and that is what it is for SunOS 5.  Later POSIX drafts have I<socklen_t "
"*>, and so do the Single Unix Specification and glibc2.  Quoting Linus "
"Torvalds:"
msgstr ""
"Das dritte Argument von B<accept>() wurde ursprünglich als ein I<int *> "
"deklariert (und ist dies unter Libc4, Libc5 und vielen anderen Systemen, wie "
"4.x BSD, SunOS 4, SGI); ein POSIX.1g-Entwurfsstandard wollte es in ein "
"I<size_t *> ändern und das ist es in SunOS 5. Neuere POSIX-Entwürfe benutzen "
"I<socklen_t *> und daher die »Single Unix Specification« und Glibc2. Zitat "
"Linus Thorvalds:"

#.  .I fails: only italicizes a single line
#. type: Plain text
msgid ""
"\"_Any_ sane library _must_ have \"socklen_t\" be the same size as int.  "
"Anything else breaks any BSD socket layer stuff.  POSIX initially I<did> "
"make it a size_t, and I (and hopefully others, but obviously not too many) "
"complained to them very loudly indeed.  Making it a size_t is completely "
"broken, exactly because size_t very seldom is the same size as \"int\" on 64-"
"bit architectures, for example.  And it I<has> to be the same size as \"int"
"\" because that's what the BSD socket interface is.  Anyway, the POSIX "
"people eventually got a clue, and created \"socklen_t\".  They shouldn't "
"have touched it in the first place, but once they did they felt it had to "
"have a named type for some unfathomable reason (probably somebody didn't "
"like losing face over having done the original stupid thing, so they "
"silently just renamed their blunder).\""
msgstr ""
"»Bei jeder vernünftigen Bibliothek _muss_ »socklen_t« die gleiche Grö�e wie "
"»int« haben. Alles andere zerstört jedes weitere BSD-Socket-Ebenen-Zeug. "
"POSIX I<machte> daraus anfangs ein »size_t« und ich (und hoffentlich andere, "
"aber offenbar nicht allzu viele) reklamierten das durchaus lautstark. Dies zu "
"einem »size_t« zu machen ist genau deshalb nicht in Ordnung, weil »size_t« "
"zum Beispiel sehr selten auf 64-Bit-Architekturen die gleiche Grö�e wie »int« "
"hat. Und es I<muss> die gleiche Grö�e wie »int« haben, weil genau das eine "
"BSD-Socket-Schnittstelle ist. Irgendwie hatten die POSIX-Leute keine Ahnung "
"und erstellten »socklen_t«. Sie sollten es ursprünglich nicht anfassen, aber "
"sobald sie es taten, wollten sie aus einem unerfindlichen Grund einen "
"benannten Typ haben (wahrscheinlich wollte jemand sein Gesicht wahren wegen "
"der ursprünglichen Dummheit, so dass sie nur stillschweigend ihren Fehlgriff "
"umbenannten).«"

#. type: SH
#, no-wrap
msgid "EXAMPLE"
msgstr "BEISPIEL"

#. type: Plain text
msgid "See B<bind>(2)."
msgstr "Siehe B<bind>(2)."

#. type: SH
#, no-wrap
msgid "SEE ALSO"
msgstr "SIEHE AUCH"

#. type: Plain text
msgid ""
"B<bind>(2), B<connect>(2), B<listen>(2), B<select>(2), B<socket>(2), "
"B<socket>(7)"
msgstr ""
"B<bind>(2), B<connect>(2), B<listen>(2), B<select>(2), B<socket>(2), "
"B<socket>(7)"

#. type: SH
#, no-wrap
msgid "COLOPHON"
msgstr "KOLOPHON"

#. type: Plain text
msgid ""
"This page is part of release 3.25 of the Linux I<man-pages> project.  A "
"description of the project, and information about reporting bugs, can be "
"found at http://www.kernel.org/doc/man-pages/.";
msgstr ""
"Diese Seite ist Teil der Veröffentlichung 3.25 des Projekts Linux-I<man-"
"pages>. Eine Beschreibung des Projekts und Informationen, wie Fehler "
"gemeldet werden können, finden sich unter http://www.kernel.org/doc/man-";
"pages/."

Reply to: