汇编网首页登录博客注册
240420643的学习博客
博客首页博客互动【做检测题】论坛求助

我的博客

个人首页 |  我的文章 |  我的相册 |  我的好友 |  最新访客 |  文章收藏 |  论坛提问 |  友情链接 |  给我留言  
图片载入中
学习动态
好友圈
文章收藏

[2009-01-30 14:02] 套接口选项函数例子(setsockopt\setsockopt)

图片载入中
#include <winsock2.h>
#include <stdio.h>
#include <stdlib.h>
void main()
{
        int optlen;
        int optname;
        SOCKET s;
        WSADATA wsadata;

        if(WSAStartup(MAKEWORD(2,2),&wsadata)!=0)
        {
          printf("wsastartup() failed!!\n");
          return;
        }
        s=socket(AF_INET,SOCK_STREAM,0);
        if(s==INVALID_SOCKET)
        {
          printf("socket() failed!!\n");
          return;
        }
        optlen=sizeof(optname);
        printf("---------------------\n");
        if(getsockopt(s,SOL_SOCKET,SO_TYPE,(char *)&optname,&optlen)==SOCKET_ERROR)
        {
          printf("getsockopt() error");
          return;
        }
        switch(optname)
        {
        case SOCK_STREAM:
                printf("SO_TYPE:SOCK_STREAM\n");break;
        case SOCK_DGRAM:
                printf("SO_TYPE:SOCK_DGRAM\n");break;
        case SOCK_RAW:
                printf("SO_TYPE:SOCK_RAW\n");
        }
        if(getsockopt(s,SOL_SOCKET,SO_RCVBUF,(char *)&optname,&optlen)==SOCKET_ERROR)
        {
          printf("getsockopt() error!!\n");
          return;
        }
        printf("SO_RCVBUF:%d\n",optname);
        if(getsockopt(s,SOL_SOCKET,SO_SNDBUF,(char *)&optname,&optlen)==SOCKET_ERROR)
        {
          printf("getsockopt() error!!\n");
          return;
        }
        printf("SO_SNBBUF:%d\n",optname);
        optname=16*1024;
        if(setsockopt(s,SOL_SOCKET,SO_RCVBUF,(char *)&optname,sizeof(optname))==SOCKET_ERROR)
        {
          printf("setsockopt() error!!\n");
          return;
        }
        if(getsockopt(s,SOL_SOCKET,SO_RCVBUF,(char *)&optname,&optlen)==SOCKET_ERROR)
        {
          printf("getsockopt() error!!\n");
          return;
        }
        printf("-----------------------\n");
        printf("SO_RCVBUF:%d\n",optname);
        printf("------------------------\n");
        WSACleanup();
}
评论次数(0)  |  浏览次数(393)  |  类型(网络编程) |  收藏此文  | 
 
 请输入验证码  (提示:点击验证码输入框,以获取验证码