zoukankan      html  css  js  c++  java
  • UNP学习第七章

    一、套接口选项

    • 函数getsockopt和setsockopt
    • 函数fcntl
    • 函数ioctl

    二、getsockopt和setsockopt函数

    #include <sys/socket.h>
    
    int getsockopt(int sockfd, int level, int optname, void *optval, socklen_t *optlen);
    int setsockopt(int sockfd, int level, int optname, const void *optval, socklen_t *optlen);
    返回:0成功,-1出错
    sockfd:必须指向一个打开的套接口描述字
    level:指定系统中解释选项的代码,选项定义的层次,例如SOL_SOCKET、IPPROTO_TCP
    optname:普通套接口代码或特定于协议的代码,例如TPv4、IPv6或TCP
    optval:一个指向变量的指针,选项值的缓冲区
    optlen:指向optval缓冲区的长度值

    level和optname相关的值:

    三、SO_BROADCAST选项

    此选项使能或禁止进程发送广播消息的能力,并且还必须是在支持广播消息的网络上。

    一个应用进程在发送一个i额广播数据报之前必须设置此套接口选项,因此它能有效防止该进程在应用程序未设计成能广播时就发送广播消息。

    四、fcntl函数

    #include <fcntl.h>
    
    int fcntl(int fd, int cmd, ... /* int arg */);
    返回:成功依赖于参数cmd,-1出错
    fd:文件描述符
    cmd:指令
    无欲速,无见小利。欲速,则不达;见小利,则大事不成。
  • 相关阅读:
    ES6 Promise用法讲解
    NPM使用介绍
    Docker学习系列(二):Docker三十分钟快速入门(上)
    Spring Cloud学习(一)
    胖ap和瘦ap的区别
    论网络知识的重要性
    2018 发发发发
    sikuli--前端自动化操作的神器
    更改MySQL数据库的编码为utf8mb4
    数据库mysql的常规操作
  • 原文地址:https://www.cnblogs.com/ch122633/p/8472003.html
Copyright © 2011-2022 走看看