ephemient..

7

链接-lresolv(BIND的libresolv).

#include

#include

#include

int resolvmx(const char *name, char **mxs, int limit) {

unsigned char response[NS_PACKETSZ]; /* big enough, right? */

ns_msg handle;

ns_rr rr;

int mx_index, ns_index, len;

char dispbuf[4096];

if ((len = res_search(name, C_IN, T_MX, response, sizeof(response))) < 0) {

/* WARN: res_search failed */

return -1;

}

if (ns_initparse(response, len, &handle) < 0) {

/* WARN: ns_initparse failed */

return 0;

}

len = ns_msg_count(handle, ns_s_an);

if (len < 0)

return 0;

for (mx_index = 0, ns_index = 0;

mx_index < limit && ns_index < len;

ns_index++) {

if (ns_parserr(&handle, ns_s_an, ns_index, &rr)) {

/* WARN: ns_parserr failed */

continue;

}

ns_sprintrr (&handle, &rr, NULL, NULL, dispbuf, sizeof (dispbuf));

if (ns_rr_class(rr) == ns_c_in && ns_rr_type(rr) == ns_t_mx) {

char mxname[MAXDNAME];

dn_expand(ns_msg_base(handle), ns_msg_base(handle) + ns_msg_size(handle), ns_rr_rdata(rr) + NS_INT16SZ, mxname, sizeof(mxname));

mxs[mx_index++] = strdup(mxname);

}

}

return mx_index;

}

linux添加mx记录,在C linux中查询MX记录相关推荐

  1. Linux添加/删除用户和用户组(linux中,添加cvs用户,实质就是添加linux用户。)

    来源:http://www.cnblogs.com/xd502djj/archive/2011/11/23/2260094.html 本文总结了Linux添加或者删除用户和用户组时常用的一些命令和参数 ...

  2. linux添加压缩文件tar,在linux中使用tar创建与解压文件

    tar命令用于将一组文件创建tar存档.它也可以提取tar档案,显示档案中包含的文件列表,将其他文件添加到现有档案,以及各种其他类型的操作 tar支持种类繁多的压缩程序如gzip,bzip2,lzip ...

  3. linux添加五笔输入法,RedHat Linux 9中vim升级方法及如何安装五笔输入法

    1 vim升级方法 1.1 下载新版本的vim安装包及语言包 到vim官方网站上www.vim.org下载对应的版本,这里以7.2版为例 vim-7.2.tar.bz2 vim-7.2-lang.ta ...

  4. linux添加启动脚本文件夹,linux – 将脚本中的符号链接添加到rc.d文件夹中以在系统启动期间启动进程...

    我正在使用fedora 15. 我试图添加MYSql守护进程在系统strtup期间启动. 我已经明白我必须将它添加到rc5.d,因为它是默认目标&是graphical.target. 来自in ...

  5. linux添加ssl信任根证书,linux系统添加根证书linux证书信任列表

    1.linux 访问 https 证书问题 [root@boss-test-dev001-jydx ~]# curl -v https://mobile.mycard520.com.tw * Abou ...

  6. linux添加硬盘分区设置柱面,linux 下添加新硬盘设备和硬盘分区格式化挂载使用磁盘配额限制...

    磁盘管理 1.查看硬盘设备信息 fdisk -l 2.磁盘分区.格式化.挂载使用 1).查看硬盘信息:fdisk -l [root@localhost ~]# fdisk -l Disk /dev/s ...

  7. linux添加用户命令_为Linux的cp和mv命令添加进度条

    cp和mv可能是大家日常中使用最多的Linux命令之一.但是有一个突出的问题是这两个命令都不会有任何提示信息,这在操作大文件时候只能干等.可能大家对此已经习以为常,但是其实上也有解决解决方法,本文我们 ...

  8. linux添加硬盘分区设置柱面,Linux添加硬盘并分区格式化

    一.Linux的硬盘识别 2.6 kernel以后,linux会将识别到的硬件设备,在/dev/下建立相应的设备文件.如: sda        表示第1块SCSI硬盘. hda        表示第 ...

  9. linux添加三个用户lab1,linux操作系统实验linux下用户与组的管理

    姓名学号班级 实验三Linux下用户与组的管理 一.实验目的 1.理解/etc/passwd和/etc/group文件的含义: 2.掌握桌面环境下管理用户与组群的方法: 3.掌握利用shell命令管理 ...

  10. linux添加用户后怎么查看,linux怎样查看系统新添加的用户?

    linux怎样查看系统新添加的用户? 答案:4  信息版本:手机版 解决时间 2019-10-06 23:42 已解决 2019-10-06 06:26 如题!老板把服务器让别人配的,但是现在屡次发生 ...

最新文章

  1. Spring MVC文件上传
  2. 数字图像处理实验(7):PROJECT 04-03 , Lowpass Filtering
  3. linux内核中链表代码分析---list.h头文件分析(二)【转】
  4. 【B站视频笔记】linux 进程间通信(ipc)信号(软中断信号)signal库函数、可靠信号和不可靠信号、信号集sigprocmask(信号掩码、信号递达Delivery、信号未决Pending)
  5. YFIOServer 后台IO接口使用说明
  6. idea java主题_IDEA变身超级形态,需要这个酷炫主题
  7. C++基础知识(四)—— 操作符/运算符
  8. HTML5中的自定义属性总结
  9. 21天打卡活动 leetcode 301
  10. Baby-step giant-step算法
  11. 每一个圣人都有一个过去
  12. 程序员进阶攻略笔记01-10
  13. 02-StringStringBuilderStringBuffer
  14. 深入理解java虚拟机-java虚拟机的
  15. 显示12306服务器处理中正在排队,12306称能够解决技术问题 不与企业合作
  16. GDAL添加ECW格式支持
  17. 如何看待PMP的2022年11月新考纲?
  18. 【软考系统架构设计师】2017下系统架构师案例分析历年真题
  19. React h5 前端 拍照银行卡识别 百度银行卡识别216101
  20. 免费分享我的C++版多线程邮件地址采集器 1.0 大小230K 无需安装,纯绿色版

热门文章

  1. QQ被盗的自救、事故分析
  2. 桌面便签哪个软件好用?求推荐一款便签软件?
  3. Linux内核网络:实现与理论--介绍
  4. 中南大学计算机学院2021复试名单,中南大学2021各学院研究生拟录取名单链接汇总!...
  5. pkl形式的数据集读取和可视化
  6. 一键U盘装系统 电脑内存使用率高的解决方法
  7. tauri打包慢:解决tauri的打包慢以及超时的方法
  8. 基于深度学习方法的事件抽取论文整理
  9. png格式转eps格式
  10. RabbitMQ的学习笔记