Soket Unix - Ringkasan
Berikut adalah daftar semua fungsi yang berkaitan dengan pemrograman soket.
Fungsi Pelabuhan dan Layanan
Unix menyediakan fungsi berikut untuk mengambil nama layanan dari file / etc / services.
struct servent *getservbyname(char *name, char *proto) - Panggilan ini menggunakan nama layanan dan nama protokol dan mengembalikan nomor port yang sesuai untuk layanan itu.
struct servent *getservbyport(int port, char *proto) - Panggilan ini menggunakan nomor port dan nama protokol dan mengembalikan nama layanan yang sesuai.
Fungsi Pengurutan Byte
unsigned short htons (unsigned short hostshort) - Fungsi ini mengubah jumlah 16-bit (2-byte) dari urutan byte host ke urutan byte jaringan.
unsigned long htonl (unsigned long hostlong) - Fungsi ini mengubah jumlah 32-bit (4-byte) dari urutan byte host ke urutan byte jaringan.
unsigned short ntohs (unsigned short netshort) - Fungsi ini mengubah jumlah 16-bit (2-byte) dari urutan byte jaringan menjadi urutan byte host.
unsigned long ntohl (unsigned long netlong) - Fungsi ini mengubah jumlah 32-bit dari urutan byte jaringan menjadi urutan byte host.
Fungsi Alamat IP
int inet_aton (const char *strptr, struct in_addr *addrptr)- Panggilan fungsi ini mengubah string yang ditentukan, dalam notasi titik standar Internet, ke alamat jaringan, dan menyimpan alamat dalam struktur yang disediakan. Alamat yang diubah akan berada dalam Network Byte Order (byte diurutkan dari kiri ke kanan). Ia mengembalikan 1 jika string itu valid dan 0 pada kesalahan.
in_addr_t inet_addr (const char *strptr)- Panggilan fungsi ini mengubah string yang ditentukan, dalam notasi titik standar Internet, menjadi nilai integer yang cocok untuk digunakan sebagai alamat Internet. Alamat yang diubah akan berada dalam Network Byte Order (byte diurutkan dari kiri ke kanan). Ia mengembalikan byte jaringan biner 32-bit memerintahkan alamat IPv4 dan INADDR_NONE pada kesalahan.
char *inet_ntoa (struct in_addr inaddr) - Panggilan fungsi ini mengubah alamat host Internet yang ditentukan menjadi string dalam notasi titik standar Internet.
Fungsi Inti Soket
int socket (int family, int type, int protocol) - Panggilan ini mengembalikan deskriptor soket yang dapat Anda gunakan di panggilan sistem nanti atau memberi Anda -1 pada kesalahan.
int connect (int sockfd, struct sockaddr *serv_addr, int addrlen)- Fungsi koneksi digunakan oleh klien TCP untuk membuat koneksi dengan server TCP. Panggilan ini mengembalikan 0 jika berhasil terhubung ke server, jika tidak maka akan mengembalikan -1.
int bind(int sockfd, struct sockaddr *my_addr,int addrlen)- Fungsi bind memberikan alamat protokol lokal ke soket. Panggilan ini mengembalikan 0 jika berhasil mengikat ke alamat, jika tidak maka akan mengembalikan -1.
int listen(int sockfd, int backlog)- Fungsi mendengarkan hanya dipanggil oleh server TCP untuk mendengarkan permintaan klien. Panggilan ini mengembalikan 0 jika berhasil, jika tidak, ia mengembalikan -1.
int accept (int sockfd, struct sockaddr *cliaddr, socklen_t *addrlen)- Fungsi terima dipanggil oleh server TCP untuk menerima permintaan klien dan untuk membuat koneksi yang sebenarnya. Panggilan ini mengembalikan deskriptor non-negatif tentang sukses, jika tidak maka akan mengembalikan -1.
int send(int sockfd, const void *msg, int len, int flags)- Fungsi kirim digunakan untuk mengirim data melalui soket aliran atau soket datagram TERHUBUNG. Panggilan ini mengembalikan jumlah byte yang dikirim, jika tidak maka akan mengembalikan -1.
int recv (int sockfd, void *buf, int len, unsigned int flags)- Fungsi recv digunakan untuk menerima data melalui soket aliran atau soket datagram TERHUBUNG. Panggilan ini mengembalikan jumlah byte yang dibaca ke buffer, jika tidak maka akan mengembalikan -1 pada kesalahan.
int sendto (int sockfd, const void *msg, int len, unsigned int flags, const struct sockaddr *to, int tolen)- Fungsi sendto digunakan untuk mengirim data melalui soket datagram TIDAK TERSAMBUNG. Panggilan ini mengembalikan jumlah byte yang dikirim, jika tidak maka akan mengembalikan -1 pada kesalahan.
int recvfrom (int sockfd, void *buf, int len, unsigned int flags struct sockaddr *from, int *fromlen)- Fungsi recvfrom digunakan untuk menerima data dari soket datagram UNCONNECTED. Panggilan ini mengembalikan jumlah byte yang dibaca ke buffer, jika tidak maka akan mengembalikan -1 pada kesalahan.
int close (int sockfd)- Fungsi close digunakan untuk menutup komunikasi antara klien dan server. Panggilan ini mengembalikan 0 jika berhasil, jika tidak maka akan mengembalikan -1.
int shutdown (int sockfd, int how)- Fungsi shutdown digunakan untuk menutup komunikasi dengan baik antara klien dan server. Fungsi ini memberikan lebih banyak kontrol dibandingkan dengan fungsi tutup. Ini mengembalikan 0 untuk kesuksesan, -1 jika tidak.
int select (int nfds, fd_set *readfds, fd_set *writefds, fd_set *errorfds, struct timeval *timeout) - Fungsi ini digunakan untuk membaca atau menulis banyak soket.
Fungsi Pembantu Socket
int write (int fildes, const void *buf, int nbyte)- Fungsi tulis mencoba menulis byte nbyte dari buffer yang ditunjukkan oleh buf ke file yang terkait dengan deskriptor file yang terbuka, fildes. Setelah berhasil diselesaikan, write () mengembalikan jumlah byte yang sebenarnya ditulis ke file yang terkait dengan fildes. Jumlah ini tidak pernah lebih dari nbyte. Jika tidak, -1 dikembalikan.
int read (int fildes, const void *buf, int nbyte)- Fungsi baca mencoba membaca byte nbyte dari file yang terkait dengan deskriptor file yang terbuka, fildes, ke dalam buffer yang ditunjukkan oleh buf. Setelah berhasil diselesaikan, write () mengembalikan jumlah byte yang sebenarnya ditulis ke file yang terkait dengan fildes. Jumlah ini tidak pernah lebih dari nbyte. Jika tidak, -1 dikembalikan.
int fork (void)- Fungsi garpu membuat proses baru. Proses baru, yang disebut proses anak, akan menjadi salinan persis dari proses panggilan (proses induk).
void bzero (void *s, int nbyte)- Fungsi bzero menempatkan nbyte null byte dalam string s. Fungsi ini akan digunakan untuk mengatur semua struktur soket dengan nilai null.
int bcmp (const void *s1, const void *s2, int nbyte)- Fungsi bcmp membandingkan string byte s1 dengan string byte s2. Kedua string tersebut diasumsikan sebagai byte nbyte.
void bcopy (const void *s1, void *s2, int nbyte)- Fungsi bcopy menyalin byte nbyte dari string s1 ke string s2. String yang tumpang tindih ditangani dengan benar.
void *memset(void *s, int c, int nbyte) - Fungsi memset juga digunakan untuk mengatur variabel struktur dengan cara yang sama seperti bzero.