zoukankan      html  css  js  c++  java
  • udhcp源码详解(一)之文件组织结构(dhcp server) --转

     udhcp目录下有十几个源文件,一个源文件相对应一个模块,完成一系列相关的功能,例如在static_leases.c主要针对static_lease链表增删查找等操作。

           dhcpd.c——   整个dhcp server运行的主线,server开始运行是从udhcpd_main函数开

    |      始,相当于我们程序的main入口。在dhcpd_main将各个功能模块组合起

    |      来实现我们的dhcp server。

                         |

                  arpping.c——这个文件里只有一个函数arpping,server在给客户机分配IP地址

                         |             从IP地址池里找到a Free IP后,会调用arpping函数看网络上是否

                         |             主机使用该地址。

                         |

                  common.c — 引用文件的注释:Functions for debugging and logging as well as some

    |             other simple helper functions.

    |

                  file.c  ——    文件名可以看出她是跟文件打交道的。file.c里有个很重要的函数

    |             read_config,读取默认配置信息和从配置文件udhcpd.conf文件里读

    |             取配置信息,从网上Down个udhcpd.conf,她和Linux下其他配置文

    |             件格式一样,以后写这类函数时候可以模仿着写。

    |

                  leases.c——   针对在dhcpd.h文件里声明的struct dhcpOfferedAddr结构的操作函

    |             数。

    |

                  option.c——   在dhcp交互的数据报文中有个选项字段options,该文件里的函数操作

    |             对象也就是选项信息。

    |

    serverpacket.c       数据报文发送之前,根据不同情况对各个字段的填充相应的信息。

    |      |

    |      |

                         |      packet.c——  dhcp报文的发送信息封装与向网络发送。

                         |

                  pidfile.c——   Functions to assist in the writing and removing of pidfiles.

                         |             主要针对 /var/run/udhcpd.pid

                         |

                  signalpipe.c— server会监听两个文件描述符,其中一个是”管道”描述符,该描述符

    |             的相应操作就在signalpipe.c文件里,另外还有对signal的设置……

    |

                  socket.c——  socket套接字创建,interface信息读取。

                         |

                  static_leases.c 对在dhcpd.h里定义的struct static_lease结构体的相应操作函数。

    相对应得头文件是对函数声明,以及结构体的定义和宏的定义。

  • 相关阅读:
    电容充放电时间计算
    常见AVX贴片钽电容封装尺寸、容值、耐压值的关系
    EPCS1结构及访问注意事项
    拜占庭将军问题
    photoshop的蒙板的作用
    linux系统脚本的常见启动顺序
    进制转换
    8>ORACLE四种关闭方式
    32位和64位操作系统的区别
    javascript 对大小写的问题
  • 原文地址:https://www.cnblogs.com/woainilsr/p/3180958.html
Copyright © 2011-2022 走看看