diff --git a/src/gausskernel/cbb/communication/libcomm_core/mc_tcp.cpp b/src/gausskernel/cbb/communication/libcomm_core/mc_tcp.cpp index dc20f0f8a..429402e29 100644 --- a/src/gausskernel/cbb/communication/libcomm_core/mc_tcp.cpp +++ b/src/gausskernel/cbb/communication/libcomm_core/mc_tcp.cpp @@ -142,6 +142,17 @@ int mc_tcp_set_cloexec(int fd) return set_socketopt(fd, 1, FD_CLOEXEC); } +/* +function name: mc_tcp_accept +description: This function will block the process by default until a client connection is established and returns a new available socket. +arguments: The first argument is a socket descriptor to a specific socket. + The second argument is a result parameter, which is used to accept a return value that specifies the address of the client. + The third argument is also a result argument, which is used to accept the size of the sockaddr structure. It indicates the number of bytes occupied by the sockaddr structure. +return value: Return a value less than 0 if an error occurred when call the function accept4(), else return the new fd of socket. +note: none +date: 2022/8/9 +contact tel: 18720816902 +*/ int mc_tcp_accept(int fd, struct sockaddr* sa, socklen_t* salenptr) { int new_fd; @@ -168,6 +179,17 @@ again: return (new_fd); } +/* +function name: mc_tcp_bind +description: This function binds the specified socket to a specific IP address and port. +arguments: The first argument indicates the socket descriptor that has been established. + The second argument is a pointer to the sockaddr structure to socket. + The third argument is byte length of sockaddr structure. +return value: Return errno, the return value is 0 if succeed, else one of other error types is returned for failure. +note: none +date: 2022/8/8 +contact tel: 18720816902 +*/ int mc_tcp_bind(int fd, const struct sockaddr* sa, socklen_t salen) { int error = -1;