Chinaunix首页 | 论坛 | 博客
  • 博客访问: 920938
  • 博文数量: 194
  • 博客积分: 7991
  • 博客等级: 少将
  • 技术积分: 2067
  • 用 户 组: 普通用户
  • 注册时间: 2007-12-09 22:03
文章分类

全部博文(194)

文章存档

2010年(8)

2009年(71)

2008年(109)

2007年(6)

我的朋友

分类: LINUX

2008-03-29 13:54:35

 
开源,一个时髦的话题,混计算机的, 不提开源您都不好意思跟人打招呼。
这是去年我做的一个开源小项目,非常简单了,今天拿出来放在blog上吧,如果喜您欢,请评论之。
 
 
 Ksocket is a linux 2.6 kernel module that provides bsd-style socket interfaces (namely socket, bind, listen, connect, accept, ...) for kernel developers to facilitate their network progaramming in linux kernel space.

The interfaces ksocket presented are much the same as their equivalent in glibc, so even new developers for kernel space will have no barrier in developing kernel network-related programms.
 
Ksocket provides the following interfaces for now:
ksocket_t ksocket(int domain, int type, int protocol)
int kshutdown(ksocket_t socket, int how)
int kclose(ksocket_t socket)
int kbind(ksocket_t socket, struct sockaddr *address, int address_len)
int klisten(ksocket_t socket, int backlog)
int kconnect(ksocket_t socket, struct sockaddr *address, int address_len)
ksocket_t kaccept(ksocket_t socket, struct sockaddr *address, int *address_len)
ssize_t krecv(ksocket_t socket, void *buffer, size_t length, int flags)
ssize_t ksend(ksocket_t socket, const void *buffer, size_t length, int flags)
ssize_t krecvfrom(ksocket_t socket, void * buffer, size_t length, int flags, struct sockaddr * address, int * address_len)
ssize_t ksendto(ksocket_t socket, void *message, size_t length, int flags, const struct sockaddr *dest_addr, int dest_len)
int kgetsockname(ksocket_t socket, struct sockaddr *address, int *address_len)
int kgetpeername(ksocket_t socket, struct sockaddr *address, int *address_len)
int ksetsockopt(ksocket_t socket, int level, int optname, void *optval, int optlen)
int kgetsockopt(ksocket_t socket, int level, int optname, void *optval, int *optlen)
 
阅读(2095) | 评论(2) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-01-28 01:07:24

I had the same warnings I have insmod the ksocket but cannot insmod the ksocket_tcp_srv , shows error inserting 'ksocket_tcp_srv': -1 unknow symbol in module

chinaunix网友2008-08-07 01:08:03

你好,我正在使用您寫的ksocket 但是在安裝您的tcp test-module時,會出現錯誤,請問是否有更新版本呢! 感謝您的幫忙~ seele2dx@hotmail.com make[1]: Entering directory `/usr/src/linux-2.6.18' CC [M] /root/Desktop/ksocket-0.0.1/sample/tcp/srv/ksocket_tcp_srv.o /root/Desktop/ksocket-0.0.1/sample/tcp/srv/ksocket_tcp_srv.c: 在函式 「tcp_srv」 中: /root/Desktop/ksocket-0.0.1/sample/tcp/srv/ksocket_tcp_srv.c:52: 警告:隱含宣告函式 「ksocket_debug」 /root/Desktop/ksocket-0.0.1/sample/tcp/srv/ksocket_tcp_srv.c:78: 警告:隱含宣告函式 「inet_ntoa」 /root/Desktop/ksoc