#include    <netdb.h>
#include <stdlib.h>
#include <string.h>
#include <sys/socket.h> #define SA struct sockaddr int
udp_client(const char *host, const char *serv, SA **saptr, socklen_t *lenp)
{
int sockfd, n;
struct addrinfo hints, *res, *ressave; bzero(&hints, sizeof(struct addrinfo));
hints.ai_family = AF_UNSPEC;
hints.ai_socktype = SOCK_DGRAM; if ( (n = getaddrinfo(host, serv, &hints, &res)) != ) {
err_quit (
"udp_client error for %s, %s: %s",
host, serv, gai_strerror(n)
);
}
ressave = res; do {
sockfd = socket(res->ai_family, res->ai_socktype, res->ai_protocol);
if (sockfd >= ) {
break; /* success */
}
} while ( (res = res->ai_next) != NULL); if (res == NULL) { /* errno set from final socket() */
err_sys("udp_client error for %s, %s", host, serv);
} *saptr = malloc(res->ai_addrlen);
memcpy(*saptr, res->ai_addr, res->ai_addrlen);
*lenp = res->ai_addrlen; freeaddrinfo(ressave); return(sockfd);
}

udp_client函数的更多相关文章

  1. UNP学习笔记(第十一章 名字与地址转换)

    域名系统 域名系统(Domain Name System,DNS)主要用于主机名字与IP地址之间的映射. 主机名既可以是一个简单得名字,如solaris,也可以是一个全限定域名,如solaris.un ...

  2. Swoole server函数列表(转载)

    swoole_server::__construct swoole_server::set swoole_server::on swoole_server::addlistener swoole_se ...

  3. day31-python之内置函数

    1.udp多线程 import socketserver class MyServer(socketserver.BaseRequestHandler): def handle(self): prin ...

  4. Python 小而美的函数

    python提供了一些有趣且实用的函数,如any all zip,这些函数能够大幅简化我们得代码,可以更优雅的处理可迭代的对象,同时使用的时候也得注意一些情况   any any(iterable) ...

  5. 探究javascript对象和数组的异同,及函数变量缓存技巧

    javascript中最经典也最受非议的一句话就是:javascript中一切皆是对象.这篇重点要提到的,就是任何jser都不陌生的Object和Array. 有段时间曾经很诧异,到底两种数据类型用来 ...

  6. JavaScript权威指南 - 函数

    函数本身就是一段JavaScript代码,定义一次但可能被调用任意次.如果函数挂载在一个对象上,作为对象的一个属性,通常这种函数被称作对象的方法.用于初始化一个新创建的对象的函数被称作构造函数. 相对 ...

  7. C++对C的函数拓展

    一,内联函数 1.内联函数的概念 C++中的const常量可以用来代替宏常数的定义,例如:用const int a = 10来替换# define a 10.那么C++中是否有什么解决方案来替代宏代码 ...

  8. 菜鸟Python学习笔记第一天:关于一些函数库的使用

    2017年1月3日 星期二 大一学习一门新的计算机语言真的很难,有时候连函数拼写出错查错都能查半天,没办法,谁让我英语太渣. 关于计算机语言的学习我想还是从C语言学习开始为好,Python有很多语言的 ...

  9. javascript中的this与函数讲解

    前言 javascript中没有块级作用域(es6以前),javascript中作用域分为函数作用域和全局作用域.并且,大家可以认为全局作用域其实就是Window函数的函数作用域,我们编写的js代码, ...

随机推荐

  1. TCP/IP 和 HTTP 的区别和联系是什么?

    作者:车小胖链接:https://www.zhihu.com/question/38648948/answer/240006409来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请注 ...

  2. LOJ #2205. 「HNOI2014」画框 解题报告

    #2205. 「HNOI2014」画框 最小乘积生成树+KM二分图带权匹配 维护一个\((\sum A,\sum B)\)的匹配下凸包,答案在这些点中产生. 具体的,凸包两端可以直接跑单独的\(A\) ...

  3. luogu2605 基站选址 (线段树优化dp)

    设f[i][j]表示在第i个村庄建第j个基站的花费 那么有$f[i][j]=min\{f[k][j-1]+w[k,i]\}$,其中w[k,i]表示在k,i建基站,k,i中间的不能被满足的村庄的赔偿金之 ...

  4. 任意模数NTT

    任意模数\(NTT\) 众所周知,为了满足单位根的性质,\(NTT\)需要质数模数,而且需要能写成\(a2^{k} + r\)且\(2^k \ge n\) 比较常用的有\(998244353,1004 ...

  5. SWOT分析法——进行项目管理的高效方法

    SWOT分析法是什么 SWOT分析法,即态势分析法,就是将与研究对象密切相关的各种主要内部优势.劣势和外部的机会和威胁等,通过调查列举出来,并依照矩阵形式排列,然后用系统分析的思想,把各种因素相互匹配 ...

  6. 如何用思维导图快速理解PMBOK-PMP第六版教材

    PMP的教材很多人拿到PMBOK的时候都觉得头疼,这书本这么厚,我什么时候能看完啊,确实是,没有体系,没有框架的看书是很难的,看的很多知识点都无法联系起来.所以利用思维导图来学习PMP就很有效果,下面 ...

  7. 【译】10. Java反射——数组

    原文地址:http://tutorials.jenkov.com/java-reflection/arrays.html ======================================= ...

  8. python多继承中子类访问祖先类的同名成员

    子类调用父类的同名成员 方式1: class A: def f_a(self): print("----A----") class B: def f_a(self): print( ...

  9. JS学习笔记Day5

    一.变量的作用域 1.作用域:变量的作用范围 2.全局变量:变量在整个程序都是有效的(从程序开始到程序结束变量均有效)在函数体外部定义的变量都是全局变量:在函数体内部 没有用var定义的变量也有可能是 ...

  10. python自动化开发-[第六天]-常用模块、面向对象

    今日概要: 1.常用模块 - os模块 - random模块 - shutil模块 - hashlib模块 - pickle/json模块 - shelve模块 - configparser模块 - ...