Provided by: manpages-cs_0.18.20090209-1_all bug

JMÉNO

       send, sendto, sendmsg - pošli zprávu do soketu

SYNTAXE

       #include <sys/types.h>
       #include <sys/socket.h>

       int send(int s, const void *msg, int len, unsigned int flags);

       int  sendto(int  s, const void *msg, int len, unsigned int flags, const
       struct sockaddr *to, int tolen);

       int sendmsg(int s, const struct msghdr *msg, unsigned int flags);

POPIS

       Send, sendto, a sendmsg se používají k zasílání zpráv do jiných soketů.
       Send  může  být  použito  pouze,  je-li  soket spojen zatímco sendto a
       sendmsg mohou být použity kdykoliv.

       Adresa cílového soketu je zadána parametrem to a tolen specifikuje jeho
       velikost. Adresa zprávy je zadána v argumentu len.  Je-li zpráva příliš
       dlouhá, aby mola být poslána atomicky,  je  vrácena  chyba  EMSGSIZE  a
       zpráva není poslána.

       Funkce  send  neposkytuje  žádnou  možnost indikace správného doručení.
       Lokálně detekované chyby jsou indikovány návratovou hodnotou -1.

       Pokud není  k  dispozici  žádné  volné  místo  pro  zprávu  před  jejím
       přenosem,  send  se normálně zablokuje, pokud soket není v neblokujícím
       módu.  Volání select(2) může být použito k zjištění, je-li možno poslat
       další data.

       Parametr flags může obsahovat jednu nebo více z následujících hodnot:

              #define   MSG_OOB        0x1  /* zpracuj out-of-band data */
              #define   MSG_DONTROUTE  0x4  /* obejdi routing, použij přímé rozhraní*/

       Flag MSG_OOB je použit pro posílání out-of-band dat do soketu, který to
       podporuje (např.  SOCK_STREAM); použitý protokol musí  také  podporovat
       out-of-band   data.    MSG_DONTROUTE   je   normálně   používáno  pouze
       diagnostickými a routovacími programy.

       V recv(2) je obsažen popis struktury msghdr

NÁVRATOVÁ HODNOTA

       Volání vrací počet poslaných znaků, nebo -1 pokud se objevila chyba.

CHYBY

       EBADF   Byl specifikován neplatný deskriptor.

       ENOTSOCK
               Argument s není soket

       EFAULT  Parametr je v neplatné části adresového prostoru procesu.

       EMSGSIZE
               Soket požaduje, aby tato  zpráva  byla  poslána  atomicky,  ale
               velikost této zprávy toto znemožňuje.

       EWOULDBLOCK
               Soket  je  označen  jako  neblokující  a  požadovaná operace by
               blokovala.

       ENOBUFS Systém není schopen alokovat interní buffery. Operace může  být
               úspěšná až budou buffery k dispozici.

       ENOBUFS Výstupní  fronta  pro  síťové  rozhraní je zaplněna. To obvykle
               znamená, že rozhraní přestalo posílat, ale  může  to  být  také
               způsobeno občasným přetížením rozhraní.

SPLŇUJE STANDARDY

       4.4BSD,  SVr4  (tato  volání  se  poprvé  objevila  ve  4.2BSD).   SVr4
       dokumentuje další chyby EINVAL, EINTR, EMSGSIZE, ENOSR, ENOMEM.

DALŠÍ INFORMACE

       fcntl(2), recv(2), select(2), getsockopt(2), socket(2), write(2)

VAROVÁNÍ

       Překlad  je  pravděpodobně  zastaralý.  Pokud  chcete  pomoci  s   jeho
       aktualizací, zamiřte na http://man-pages-cs-wiki.homelinux.net/