Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
Achou.Wang
accel-ppp
提交
86b15189
A
accel-ppp
项目概览
Achou.Wang
/
accel-ppp
通知
6
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
A
accel-ppp
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
前往新版Gitcode,体验更适合开发者的 AI 搜索 >>
提交
86b15189
编写于
11月 23, 2015
作者:
D
Dmitry Kozlov
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
preparation for DPDK intergation (part 4)
上级
2dbcda2b
变更
4
隐藏空白更改
内联
并排
Showing
4 changed file
with
39 addition
and
18 deletion
+39
-18
accel-pppd/include/ap_net.h
accel-pppd/include/ap_net.h
+20
-0
accel-pppd/include/ap_session.h
accel-pppd/include/ap_session.h
+2
-16
accel-pppd/net.c
accel-pppd/net.c
+9
-1
accel-pppd/net/dpdk.c
accel-pppd/net/dpdk.c
+8
-1
未找到文件。
accel-pppd/include/ap_net.h
0 → 100644
浏览文件 @
86b15189
#ifndef __AP_NET_H
#define __AP_NET_H
struct
ap_net
{
int
(
*
socket
)(
int
domain
,
int
type
,
int
proto
);
int
(
*
connect
)(
int
sock
,
const
struct
sockaddr
*
,
socklen_t
len
);
int
(
*
bind
)(
int
sock
,
const
struct
sockaddr
*
,
socklen_t
len
);
int
(
*
listen
)(
int
sock
,
int
backlog
);
ssize_t
(
*
recv
)(
int
sock
,
void
*
buf
,
size_t
len
,
int
flags
);
ssize_t
(
*
recvfrom
)(
int
sock
,
void
*
buf
,
size_t
len
,
int
flags
,
struct
sockaddr
*
src_addr
,
socklen_t
*
addrlen
);
ssize_t
(
*
send
)(
int
sock
,
const
void
*
buf
,
size_t
len
,
int
flags
);
ssize_t
(
*
sendto
)(
int
sock
,
const
void
*
buf
,
size_t
len
,
int
flags
,
const
struct
sockaddr
*
dest_addr
,
socklen_t
addrlen
);
int
(
*
set_nonblocking
)(
int
sock
,
int
f
);
int
(
*
setsockopt
)(
int
sockfd
,
int
level
,
int
optname
,
const
void
*
optval
,
socklen_t
optlen
);
int
(
*
ppp_open
)();
int
(
*
ppp_ioctl
)(
int
fd
,
unsigned
long
request
,
void
*
arg
);
int
(
*
sock_ioctl
)(
unsigned
long
request
,
void
*
arg
);
};
#endif
accel-pppd/include/ap_session.h
浏览文件 @
86b15189
#ifndef __AP_SESSION_H__
#define __AP_SESSION_H__
#include "ap_net.h"
//#define AP_SESSIONID_LEN 16
#define AP_IFNAME_LEN 16
...
...
@@ -36,22 +38,6 @@
struct
ap_session
;
struct
backup_data
;
struct
rtnl_link_stats
;
struct
sockaddr
;
struct
ap_net
{
int
(
*
socket
)(
int
domain
,
int
type
,
int
proto
);
int
(
*
connect
)(
int
sock
,
const
struct
sockaddr
*
,
socklen_t
len
);
int
(
*
bind
)(
int
sock
,
const
struct
sockaddr
*
,
socklen_t
len
);
int
(
*
listen
)(
int
sock
,
int
backlog
);
ssize_t
(
*
recv
)(
int
sock
,
void
*
buf
,
size_t
len
,
int
flags
);
ssize_t
(
*
recvfrom
)(
int
sock
,
void
*
buf
,
size_t
len
,
int
flags
,
struct
sockaddr
*
src_addr
,
socklen_t
*
addrlen
);
ssize_t
(
*
send
)(
int
sock
,
const
void
*
buf
,
size_t
len
,
int
flags
);
ssize_t
(
*
sendto
)(
int
sock
,
const
void
*
buf
,
size_t
len
,
int
flags
,
const
struct
sockaddr
*
dest_addr
,
socklen_t
addrlen
);
int
(
*
set_nonblocking
)(
int
sock
,
int
f
);
int
(
*
ppp_open
)();
int
(
*
ppp_ioctl
)(
int
fd
,
unsigned
long
request
,
void
*
arg
);
int
(
*
sock_ioctl
)(
unsigned
long
request
,
void
*
arg
);
};
struct
ap_ctrl
{
struct
triton_context_t
*
ctx
;
...
...
accel-pppd/net.c
浏览文件 @
86b15189
...
...
@@ -4,7 +4,9 @@
#include "triton.h"
#include "ap_session.h"
#include "ap_net.h"
extern
int
sock_fd
;
__export
__thread
const
struct
ap_net
*
net
;
...
...
@@ -53,6 +55,11 @@ static int def_set_nonblocking(int sock, int f)
return
fcntl
(
sock
,
F_SETFL
,
O_NONBLOCK
);
}
static
int
def_setsockopt
(
int
sock
,
int
level
,
int
optname
,
const
void
*
optval
,
socklen_t
optlen
)
{
return
setsockopt
(
sock
,
level
,
optname
,
optval
,
optlen
);
}
static
int
def_ppp_open
()
{
return
open
(
"/dev/ppp"
,
O_RDWR
);
...
...
@@ -78,6 +85,7 @@ __export const struct ap_net def_net = {
.
send
=
def_send
,
.
sendto
=
def_sendto
,
.
set_nonblocking
=
def_set_nonblocking
,
.
setsockopt
=
def_setsockopt
,
.
ppp_open
=
def_ppp_open
,
.
ppp_ioctl
=
def_ppp_ioctl
,
.
sock_ioctl
=
def_sock_ioctl
,
...
...
accel-pppd/net/dpdk.c
浏览文件 @
86b15189
...
...
@@ -8,7 +8,7 @@
#include <linux/if.h>
#include "triton.h"
#include "ap_
session
.h"
#include "ap_
net
.h"
#include "log.h"
#include "if_dpdk.h"
...
...
@@ -311,6 +311,12 @@ static int dpdk_set_nonblocking(int sock, int f)
return
0
;
}
static
int
dpdk_setsockopt
(
int
sock
,
int
level
,
int
optname
,
const
void
*
optval
,
socklen_t
optlen
)
{
return
0
;
}
static
int
dpdk_ppp_open
()
{
int
id
=
MSG_PPP_OPEN
;
...
...
@@ -451,6 +457,7 @@ static const struct ap_net dpdk_net = {
.
send
=
dpdk_send
,
.
sendto
=
dpdk_sendto
,
.
set_nonblocking
=
dpdk_set_nonblocking
,
.
setsockopt
=
dpdk_setsockopt
,
.
ppp_open
=
dpdk_ppp_open
,
.
ppp_ioctl
=
dpdk_ppp_ioctl
,
.
sock_ioctl
=
dpdk_sock_ioctl
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录