trong "sys/socket.h" nó định nghĩa các chức năng:Chiều dài kích thước địa chỉ của hàm chấp nhận trong <sys/socket.h>
int accept (int socket, struct sockaddr *address, socklen_t *address_len);
Câu hỏi của tôi đã làm với socklen_t * address_len dựa trên số manual trỏ đến một số socklen_t mà trên đầu vào chỉ định độ dài của cấu trúc sockaddr được cung cấp và trên đầu ra chỉ định độ dài của địa chỉ được lưu trữ.
Trong điều kiện nào thì đầu vào kích thước address_len khác với đầu ra?
Tôi cần điều này để tôi có thể mô phỏng trường hợp thử nghiệm trên trình bao bọc mà tôi đã tạo cho cấu trúc sockaddr_in.
Cảm ơn rất nhiều!
+1 câu hỏi hay –
'sockaddr' có mảng' char' làm thành viên thứ hai. Giá trị trả về trong 'address_len' sẽ được bao nhiêu phần tử thực sự được sử dụng trong thành viên đó (trái ngược với bao nhiêu phần tử có thể chứa) – Attila