int TcpSocket::Bind(InetAddress& addr) { bool ret = addr.IsValid(); if(false == ret) { FILE_LOG(logERROR)<<__FILE__<<" "<<__LINE__<<" address is invalid"; return -1; } if(-1 == ::bind(sockfd_, (SA*)(&addr.GetAddr()), sizeof(addr.GetAddr()))) { FILE_LOG(logERROR)<<__FILE__<<" "<<__LINE__<<" bind address error"; return -1; } return 0; }