//绑定socket的程序 平台:solaris 9 . 非超级用户telnet 方式登陆
//这个是书上的原代码
#include <stdio.h>
#include <sys/types.h>
#include <sys/socket.h>
#include <netinet/in.h>
#include <arpa/inet.h>
#define QUEUE_SIZE 5
#define IP "10.17.49.117"
#define PORT 5678
int main(int argc, char *argv[])
{
int sock_listen ,sock_user1 ;
struct sockaddr_in my_addr;
my_addr.sin_family=AF_INET;
my_addr.sin_port=htons(PORT);
my_addr.sin_addr.s_addr=inet_addr(IP);
bzero(&(my_addr.sin_zero),8);
if (sock_listen=socket(AF_INET,SOCK_STREAM,0) == -1)
{
printf("create socket error./n");
return -1;
}
if (bind(sock_listen,(struct sockaddr *)(&my_addr) , sizeof(struct sockaddr)) == -1)
{
printf("bind socket error./n");
return -1;
}
return 0;
}
// s为文件名称
cc -o s s.c -lsocket -lnsl -lresolv
成功编译
但是运行总是 “bind socket error.”错误
为什么???(IP,端口都正确)
博客展示了在 Solaris 9 平台,非超级用户以 telnet 方式登陆时绑定 socket 的程序代码。代码编译成功,但运行时出现“bind socket error.”错误,且 IP 和端口都正确,博主对此问题提出疑问。

457

被折叠的 条评论
为什么被折叠?



