huyc

导航

2011年12月5日 #

cmsg

摘要: CMSG(3)NAME CMSG_ALIGN, CMSG_SPACE, CMSG_NXTHDR, CMSG_FIRSTHDR —— 访问辅助数据SYNOPSIS#include <sys/socket.h>struct cmsghdr *CMSG_FIRSTHDR(struct msghdr *msgh);struct cmsghdr *CMSG_NXTHDR(struct msghdr *msgh, struct cmsghdr *cmsg);size_t CMSG_ALIGN(size_t length);size_t CMSG_SPACE(size_t length);siz 阅读全文

posted @ 2011-12-05 14:51 huyc 阅读(5998) 评论(0) 推荐(1) 编辑

2011年12月3日 #

没有银弹,合适与正确的距离

摘要: 今天在网上查看QThread的信息时找到一篇文章,http://hi.baidu.com/cyclone/blog/item/5fac3bc7ab1b90d1d10060f2.html文章引述了老外的观点说什么是QThread的正确使用方式,文章很短,一下子就看完了,看了无非就是说QThread的正确使用方式应该是事件驱动。的确,标准的Qt程序就应该像这样:#include <QCoreApplication>#include <QDebug>int main(int argc, char **argv){ QCoreApplication app(argc, argv 阅读全文

posted @ 2011-12-03 21:11 huyc 阅读(303) 评论(0) 推荐(0) 编辑

2011年11月3日 #

ipq_errstr,ipq_perror

摘要: IPQ_ERRSTR(3) 2001-10-16NAME ipq_errstr, ipq_perror —— libipq错误处理例程SYNOPSIS#include <linux/netfilter.h>#include <libipq.h>char *ipq_errstr(void);void ipq_perror(const char *s);DESCRIPTION函数ipq_errstr返回一个错误描述,基于内部ipq_errno变量的当前值。所有的libipq的API函数将在错误时设置此变量。函数ipq_perror打印错误消息到stderr,该消息与内部变量 阅读全文

posted @ 2011-11-03 20:31 huyc 阅读(232) 评论(0) 推荐(0) 编辑

ipq_set_verdict(3)

摘要: IPQ_SET_VERDICT(3) 2001-10-16NAME ipq_set_verdict —— 下达判决,可选地修改给内核的数据包SYNOPSIS#include <linux/netfilter.h>#include <libipq.h>int ipq_set_verdict(const struct ipq_handle *h, ipq_id_t id, unsigned int verdict, size_t data_len, unsigned char *buf);DESCRIPTION函数ipq_set_verdict对之前调用ipq_read获取 阅读全文

posted @ 2011-11-03 20:23 huyc 阅读(875) 评论(0) 推荐(0) 编辑

ipq_set_mode(3)

摘要: IPQ_SET_MODE(3) 2001-10-16NAME ipq_set_mode —— 设置ip_queue的排队模式SYNOPSIS#include <linux/netfilter.h>#include <libipq.h>int ipq_set_mode(const struct ipq_handle *h, u_int8_t mode, size_t range);DESCRIPTION函数ipq_set_mode发送一个消息给内核ip_queue模块,指定是仅发送数据包元数据,还是将数据包负载带着元数据一起拷贝到用户空间。参数h是一个上下文句柄,其必须是 阅读全文

posted @ 2011-11-03 20:05 huyc 阅读(732) 评论(0) 推荐(0) 编辑

ipq_message_type,ipq_get_packet,ipq_getmsgerr

摘要: IPQ_MESSAGE_TYPE(3) 2001-10-16NAME ipq_message_type, ipq_get_packet, ipq_getmsgerr —— 查询排队消息SYNOPSIS#include <linux/netfilter.h>#include <libipq.h>int ipq_message_type(const unsigned char *buf);ipq_packet_msg_t *ipq_get_packet(const unsigned char *buf);int ipq_get_msgerr(const unsigned c 阅读全文

posted @ 2011-11-03 19:47 huyc 阅读(938) 评论(0) 推荐(0) 编辑

ipq_read(3)

摘要: IPQ_READ(3) 2001-10-16NAME ipq_read —— 将来自ip_queue的消息队列读取到指定的缓冲区SYNOPSIS#include <linux/netfilter.h>#include <libipq.h>ssize_t ipq_read(const struct ipq_handle *h, unsigned char *buf, size_t len, int timeout);DESCRIPTION函数ipq_read从内核读取一个队列消息并将其拷贝到buf指向的内存,最大拷贝长度为len。参数h是一个上下文句柄,它必须是之前调用i 阅读全文

posted @ 2011-11-03 19:14 huyc 阅读(798) 评论(0) 推荐(0) 编辑

ipq_create_handle,ipq_destroy_handle

摘要: IPQ_CREATE_HANDLE(3)2001-10-16NAME ipq_create_handle, ipq_destroy_handle —— 创建和销毁libipq句柄。SYNOPSIS#include <linux/netfilter.h>#include <libipq.h>struct ipq_handle *ipq_create_handle(u_int32_t flags, u_int32_t protocol);int ipq_destroy_handle(struct ipq_handle *h);DESCRIPTION函数ipq_create_ 阅读全文

posted @ 2011-11-03 16:39 huyc 阅读(761) 评论(0) 推荐(0) 编辑

2011年11月2日 #

libipq(3)

摘要: LIBIPQ(3)NAME libipq —— iptables用户空间数据包排队库SYNOPSIS#include <linux/netfilter.h>#include <libipq.h>DESCRIPTION libipq是一个iptables用户空间数据包排队开发库。用户空间数据包排队 Netfilter提供一个机制,将数据包送到栈外在用户空间排队,然后这些数据包送回内核并附带上一个如何处理这个数据包的决定(比如ACCEPT或DROP)。这些数据包在送回内核之前还可能在用户空间被修改。对于每个支持的协议,内核模块调用一个Netfilter注册的队列handle 阅读全文

posted @ 2011-11-02 20:02 huyc 阅读(2349) 评论(0) 推荐(0) 编辑

2011年11月1日 #

mq_overview(7)

摘要: MQ_OVERVIEW(7) 2009-09-27NAME mq_overview —— POSIX消息队列概述DESCRIPTION POSIX消息队列允许进程以消息的形式交换数据。此API与System V消息队列(msgget(2),msgsnd(2),msgrcv(2)等)有明显不同,但做的事情差不多。消息队列通过mq_open(3)创建和打开,此函数返回一个消息队列描述符(mqd_t),它用于之后的调用中引用打开的消息队列。每个消息队列由一个名字标识,该名字具有这样的格式/somename,亦即,一个空字符结尾,以斜线开头,最多跟着NAME_MAX(即255)个字符,并且这些字符都不 阅读全文

posted @ 2011-11-01 11:10 huyc 阅读(2458) 评论(0) 推荐(0) 编辑