Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Notatki - gniazda \\
- 1. socket
- int socket(int domain, int type, int protocol);
- Działanie - zwraca deskryptor gniazda.
- Argumenty - domena, typ gniazda SOCK_STREAM lub SOCK_DGRAM, protokół gdy 0 to funkcja socket() sama wybierze właściwy protokół bazując na parametrze typ.
- Zwraca - deskryptor gniazda, lub -1 w przypadku błędu + ustawia errno.
- 2. connect
- int connect(int sockfd, const struct sockaddr *addr, socklen_t addrlen)
- Działanie - nawiązuje połączenie ze zdalnym hostem.
- Argumenty - sockfd to deskryptor gniazda zwrócony przez funkcję socket(), addr to wskaźnik na strukturę sockaddr która zawiera m.in. docelowy port i adres IP z którym chcemy nawiązać połączenie, addrlen to rozmiar tej struktury więc może być ustawiony na sizeof(struct sockaddr).
- Zwraca - 0 w przypadku sukcesu, -1 w przypadku błędu + ustawia errno.
- 3. bind
- int bind(int sockfd, const struct sockaddr *addr, socklen_t addrlen);
- Działanie - przypisuję gniazdo do konkretnego portu.
- Argumenty - sockfd to deskryptor gniazda zwrócony przez funkcję socket(), addr to wskaźnik na strukturę sockaddr która zawiera m.in. port, addrlen to rozmiar tej struktury więc może być ustawiony na sizeof(struct sockaddr).
- Zwraca - 0 w przypadku sukcesu, -1 w przypadku błędu + ustawia errno.
- 4. listen
- int listen(int sockfd, int backlog);
- Działanie - nasłuchuje na połączenia przychodzące.
- Argumenty - sockfd to deskryptor gniazda zwrócony przez funkcję socket(), backlog to ilość dozwolonych połączeń w kolejce połączeń przychodzących.
- Zwraca - 0 w przypadku sukcesu, -1 w przypadku błędu + ustawia errno.
- 5. accept
- int accept(int sockfd, struct sockaddr *addr, socklen_t *addrlen);
- Działanie - akceptuje połączenie na które czekamy korzystając z listen(). Zwraca nam deskryptor gniazda dzięki któremu mamy dostęp do tego połączenia oraz ustawia odpowiednio strukturę która zawiera informację o tym połączeniu i hoście z którym się łączymy.
- Argumenty - sockfd to deskryptor gniazda zwrócony przez funkcję socket(), addr to wskaźnik na strukturę sockaddr w której znajdą się informację o oczekującym połączeniu, addrlen to rozmiar tej struktury więc może być ustawiony na sizeof(struct sockaddr) - funkcja nie umieści więcej bajtów danych niż tutaj ustalimy, jeżeli umieści mniej to zmienna zostanie zmieniona.
- Zwraca - deskryptor gniazda dla połączenia które zaakcpetowaliśmy, -1 w przypadku błędu + ustawia errno.
- 6. read
- 7. recv
- 8. write
- 9. gethostbyname
- 10. getaddrinfo
- 11. htons
Advertisement
Add Comment
Please, Sign In to add comment