Linux.ChinaUnix.net
ChinaUnix
|
Linux首页
|
新闻
|
博客
|
文章
|
专栏
|
新手
|
方案
|
图书
|
下载
|
人才
|
手册
|
wiki
|
搜索
会员:
密码:
免费注册
|
忘记密码
|
会员登录
|
搜索
关于构造Http Response包的问题
1
2
3
4
5
6
››
首页
»
CU论坛
»
Linux
»
汇总贴列表
»
内核源码
»
请选择您要去的论坛 ←
>新手园地
>系统管理
>网络问题
>硬件支持
>内核问题
>系统互操作专区
>中文支持
>桌面与办公
>影音娱乐
>网络工具
>编程问题
>内核源码
>CPU与编译器
>嵌入式开发
>驱动开发
>数据库应用
>服务器应用
>安全防护
>集群和虚拟机
>开源业界与评论
>贴图娱乐
>红茶馆
>文档专区
>下载共享
>Linux书友会
>Linux人才交流
>Linux站务交流
===============
→ 操作系统技术交流区 ←
>BSD
>Solaris
>SCO UNIX
>HP-UX
>AIX
>IBM AS400应用论坛
>Tru64 UNIX
>IRIX
>Mac OS X
→ 行业解决方案交流区 ←
> 金融行业
> 电信行业
> 互联网行业
> 医卫行业
> 制造行业
> 信息安全
> 教育行业
> 媒体娱乐行业
> 电子政务
> 交通行业
→ 程序设计交流区 ←
>C/C++
>Shell
>Java
>Php
>Perl
>Python
>Web开发
>软件工程
>中间件技术
>GUI编程
>软件配置管理
>VOIP开发技术
→ 网管技术交流区 ←
>网络安全
>网络技术
>Cisco技术
>存储备份之家
>服务器及硬件技术
→ 数据库技术交流区 ←
>MySQL
>PostgreSQL
>Oracle
>Informix
>Sybase
>DB2
→ 应用技术专题交流区 ←
>Web服务器
>Mail服务器
>FTP服务器
>DNS服务器
>Proxy服务器
>LDAP
>VPN
>Lotus
>Samba
→ IT综合交流区 ←
>IT业界新闻与评论
>IT职业生涯
>IT培训与认证
>IT二手大厅
>IT图书与评论
→ IT人的休闲生活交流区 ←
>清茶斋
>运动地带
>快乐数码摄影
>影音文字
>English Forum
>游戏玩家
>旅游天下
>贴图娱乐
>红茶馆
>IT爱车族
→ 站务及频道交流区 ←
>站务交流
>版主会议室
>Linux站务交流
>Linux版主会议室
>博客站务交流区
>下载频道交流区
>CU活动专区
最近访问的论坛 ...
《开源时代》2009.07月刊(有奖用户调查)
|
系统架构师大会诚邀大家参与者
|
IBM嘉年华活动颁奖倒计时
|
"CU伴我行"八周年有奖征集图文活动
|
联合挑战之“大话WEB应用交付”
‹‹ 上一主题
|
下一主题 ››
[
打印
] [
订阅
] [
收藏
] [
本帖文本页
] [
推荐此主题给朋友,立即获积分
]
Godbach
(To be 千里马!)
版主-大法师
CU编号: 534931
注册:2007-3-9
最后登录: 2009-07-04
帖子:
8560
精华:
12
可用积分:22755 (巨富豪门)
信誉积分:112
专家积分:114 (本版:10)
空间积分:2
推广积分:17
状态:...保密...
[
个人空间
] [
短信
] [
博客
]
[
推广获积分
]
1楼
发表于 2008-9-4 11:26
当我判断到Http Get请求时,我要直接给请求方发送一个Response包。这里涉及到构造数据包的问题。
如果采用修改请求包的方式,要调整的地方:
IP层,源与目的地址,TTL
TCP层,源与目的端口号,SEQ和ACK number
应用层的话,就是构造出来一个Response包。如果基于原先请求包的修改,在应用层数据部分的长度肯定是要发生变化了,这个时候,我还能用直接修改的方法,还是alloc_skb的方法呢?
您对本贴的看法:
鲜花[0]
臭蛋[0]
__________________________________
明犯我强汉天威者,穷搜天下,万里追杀,覆其巢,断其苗裔,戮其身,追其魂,屠其魄,虽远必诛!
----------------------------------
一尺之槌,日取其半,万世不竭!
----------------------------------
欢迎光临Godbach的博客交流技术问题:
http://blog.chinaunix.net/u/33048/
----------------------------------
YOCSEF“低排放绿色计算"报名中
|
【尚观研发课程8.8折,50000年薪起】
|
IBM嘉年华活动倒计时
|
嵌入式有奖书评,写书评,得大奖
Godbach
(To be 千里马!)
版主-大法师
CU编号: 534931
注册:2007-3-9
最后登录: 2009-07-04
帖子:
8560
精华:
12
可用积分:22755 (巨富豪门)
信誉积分:112
专家积分:114 (本版:10)
空间积分:2
推广积分:17
状态:...保密...
[
个人空间
] [
短信
] [
博客
]
[
推广获积分
]
2楼
发表于 2008-9-4 11:52
可能要修改tail指针,以及skb->len,下午测试一下
您对本贴的看法:
鲜花[0]
臭蛋[0]
__________________________________
明犯我强汉天威者,穷搜天下,万里追杀,覆其巢,断其苗裔,戮其身,追其魂,屠其魄,虽远必诛!
----------------------------------
一尺之槌,日取其半,万世不竭!
----------------------------------
欢迎光临Godbach的博客交流技术问题:
http://blog.chinaunix.net/u/33048/
----------------------------------
YOCSEF“低排放绿色计算"报名中
|
【尚观研发课程8.8折,50000年薪起】
|
IBM嘉年华活动倒计时
|
嵌入式有奖书评,写书评,得大奖
platinum
(何时才能飞)
广告杀手-老法王
人生的转折
CU编号: 26424
注册:2002-11-2
最后登录: 2009-07-04
帖子:
20743
精华:
22
可用积分:30298 (巨富豪门)
信誉积分:105
专家积分:479 (本版:25)
空间积分:0
推广积分:0
状态:...保密...
[
个人空间
] [
短信
] [
博客
]
[
推广获积分
]
3楼
发表于 2008-9-4 12:41
我觉得直接修改原来的包就行,改一下 skb->len 等相应长度参数(IP 头的、TCP 头的),重新计算校验和
IP 的原目的要交换,MAC 的原目的也要交换,skb->data 重新指向 MAC 头,skb->len 要加上 MAC 头的长度以及 payload 变化后的增量
您对本贴的看法:
鲜花[0]
臭蛋[0]
__________________________________
当我们在为生活而疲惫奔波的时候
生活却渐渐离我们远去
find our way, find our style
YOCSEF“低排放绿色计算"报名中
|
【尚观研发课程8.8折,50000年薪起】
|
IBM嘉年华活动倒计时
|
嵌入式有奖书评,写书评,得大奖
Godbach
(To be 千里马!)
版主-大法师
CU编号: 534931
注册:2007-3-9
最后登录: 2009-07-04
帖子:
8560
精华:
12
可用积分:22755 (巨富豪门)
信誉积分:112
专家积分:114 (本版:10)
空间积分:2
推广积分:17
状态:...保密...
[
个人空间
] [
短信
] [
博客
]
[
推广获积分
]
4楼
发表于 2008-9-4 12:52
QUOTE:
原帖由
platinum
于 2008-9-4 12:41 发表
我觉得直接修改原来的包就行,改一下 skb->len 等相应长度参数(IP 头的、TCP 头的),重新计算校验和
IP 的原目的要交换,MAC 的原目的也要交换,skb->data 重新指向 MAC 头,skb->len 要加上 MAC 头的长度以 ...
多谢白金兄指点啊。那payload变化了,是不是tail也要发生变化呢?
您对本贴的看法:
鲜花[0]
臭蛋[0]
__________________________________
明犯我强汉天威者,穷搜天下,万里追杀,覆其巢,断其苗裔,戮其身,追其魂,屠其魄,虽远必诛!
----------------------------------
一尺之槌,日取其半,万世不竭!
----------------------------------
欢迎光临Godbach的博客交流技术问题:
http://blog.chinaunix.net/u/33048/
----------------------------------
YOCSEF“低排放绿色计算"报名中
|
【尚观研发课程8.8折,50000年薪起】
|
IBM嘉年华活动倒计时
|
嵌入式有奖书评,写书评,得大奖
qps104
圣骑士
CU编号: 531581
注册:2007-2-28
最后登录: 2009-07-01
帖子:
143
精华:0
可用积分:185 (白手起家)
信誉积分:100
专家积分:5 (本版:0)
空间积分:0
推广积分:0
状态:
...离线...
[
个人空间
] [
短信
] [
博客
]
[
推广获积分
]
5楼
发表于 2008-9-4 12:57
要是payload比原来得长得话,需要重新alloc_skb吧
您对本贴的看法:
鲜花[0]
臭蛋[0]
YOCSEF“低排放绿色计算"报名中
|
【尚观研发课程8.8折,50000年薪起】
|
IBM嘉年华活动倒计时
|
嵌入式有奖书评,写书评,得大奖
Godbach
(To be 千里马!)
版主-大法师
CU编号: 534931
注册:2007-3-9
最后登录: 2009-07-04
帖子:
8560
精华:
12
可用积分:22755 (巨富豪门)
信誉积分:112
专家积分:114 (本版:10)
空间积分:2
推广积分:17
状态:...保密...
[
个人空间
] [
短信
] [
博客
]
[
推广获积分
]
6楼
发表于 2008-9-4 13:03
QUOTE:
原帖由
qps104
于 2008-9-4 12:57 发表
要是payload比原来得长得话,需要重新alloc_skb吧
skb分配的时候是有固定大小的吧,一般是可以容纳下一个包的。Payload变化的话,估计调整tail指针就可以了
您对本贴的看法:
鲜花[0]
臭蛋[0]
__________________________________
明犯我强汉天威者,穷搜天下,万里追杀,覆其巢,断其苗裔,戮其身,追其魂,屠其魄,虽远必诛!
----------------------------------
一尺之槌,日取其半,万世不竭!
----------------------------------
欢迎光临Godbach的博客交流技术问题:
http://blog.chinaunix.net/u/33048/
----------------------------------
YOCSEF“低排放绿色计算"报名中
|
【尚观研发课程8.8折,50000年薪起】
|
IBM嘉年华活动倒计时
|
嵌入式有奖书评,写书评,得大奖
qps104
圣骑士
CU编号: 531581
注册:2007-2-28
最后登录: 2009-07-01
帖子:
143
精华:0
可用积分:185 (白手起家)
信誉积分:100
专家积分:5 (本版:0)
空间积分:0
推广积分:0
状态:
...离线...
[
个人空间
] [
短信
] [
博客
]
[
推广获积分
]
7楼
发表于 2008-9-4 13:09
回复 #6 Godbach 的帖子
不是哦。你去访问下skb->tail后面得地址机器肯定死掉
您对本贴的看法:
鲜花[0]
臭蛋[0]
YOCSEF“低排放绿色计算"报名中
|
【尚观研发课程8.8折,50000年薪起】
|
IBM嘉年华活动倒计时
|
嵌入式有奖书评,写书评,得大奖
ShadowStar
风云使者
CU编号: 167404
注册:2004-6-27
最后登录: 2009-07-05
帖子:
567
精华:
3
可用积分:781 (稍有积蓄)
信誉积分:100
专家积分:15 (本版:15)
空间积分:0
推广积分:0
来自:沈阳 - 北京
状态:
...离线...
[
个人空间
] [
短信
] [
博客
]
[
推广获积分
]
8楼
发表于 2008-9-4 13:12
看你是在哪个处理流程中做了。
直接修改原始skb,再发送出去的话,例如:
rcv ()
{
send()
return
}
容易引起系统崩溃,因为dev_queue_xmit最后会kfree_skb,所以rcv之后的处理流程就会handle NULL pointer。
另外skb数据空间的大小不是固定,是根据网卡接受的大小分配的,所以skb_put前要检查tailroom
您对本贴的看法:
鲜花[0]
臭蛋[0]
__________________________________
ShadowStar.cublog.cn
我发现智商TMD就是一切!
把程序员的三大美德进行到底!
别太把自己当回事!
YOCSEF“低排放绿色计算"报名中
|
【尚观研发课程8.8折,50000年薪起】
|
IBM嘉年华活动倒计时
|
嵌入式有奖书评,写书评,得大奖
ShadowStar
风云使者
CU编号: 167404
注册:2004-6-27
最后登录: 2009-07-05
帖子:
567
精华:
3
可用积分:781 (稍有积蓄)
信誉积分:100
专家积分:15 (本版:15)
空间积分:0
推广积分:0
来自:沈阳 - 北京
状态:
...离线...
[
个人空间
] [
短信
] [
博客
]
[
推广获积分
]
9楼
发表于 2008-9-4 13:13
QUOTE:
原帖由
qps104
于 2008-9-4 13:09 发表
不是哦。你去访问下skb->tail后面得地址机器肯定死掉
不一定会死,但是要是put到end外面就挂了
tail到end还是有一些空间的
您对本贴的看法:
鲜花[0]
臭蛋[0]
__________________________________
ShadowStar.cublog.cn
我发现智商TMD就是一切!
把程序员的三大美德进行到底!
别太把自己当回事!
YOCSEF“低排放绿色计算"报名中
|
【尚观研发课程8.8折,50000年薪起】
|
IBM嘉年华活动倒计时
|
嵌入式有奖书评,写书评,得大奖
Godbach
(To be 千里马!)
版主-大法师
CU编号: 534931
注册:2007-3-9
最后登录: 2009-07-04
帖子:
8560
精华:
12
可用积分:22755 (巨富豪门)
信誉积分:112
专家积分:114 (本版:10)
空间积分:2
推广积分:17
状态:...保密...
[
个人空间
] [
短信
] [
博客
]
[
推广获积分
]
10楼
发表于 2008-9-4 13:52
QUOTE:
原帖由
ShadowStar
于 2008-9-4 13:12 发表
看你是在哪个处理流程中做了。
直接修改原始skb,再发送出去的话,例如:
rcv ()
{
send()
return
}
容易引起系统崩溃,因为dev_queue_xmit最后会kfree_skb,所以rcv之后的处理流程就会handle NULL po ...
我这里接受数据包之后,修改之后然后发出去,这样就结束了,rcv之后的流程不会处理这个数据包了
您对本贴的看法:
鲜花[0]
臭蛋[0]
__________________________________
明犯我强汉天威者,穷搜天下,万里追杀,覆其巢,断其苗裔,戮其身,追其魂,屠其魄,虽远必诛!
----------------------------------
一尺之槌,日取其半,万世不竭!
----------------------------------
欢迎光临Godbach的博客交流技术问题:
http://blog.chinaunix.net/u/33048/
----------------------------------
YOCSEF“低排放绿色计算"报名中
|
【尚观研发课程8.8折,50000年薪起】
|
IBM嘉年华活动倒计时
|
嵌入式有奖书评,写书评,得大奖
首页
»
CU论坛
»
Linux
»
汇总贴列表
»
内核源码
»
1
2
3
4
5
6
››
请选择您要去的论坛 ←
>新手园地
>系统管理
>网络问题
>硬件支持
>内核问题
>系统互操作专区
>中文支持
>桌面与办公
>影音娱乐
>网络工具
>编程问题
>内核源码
>CPU与编译器
>嵌入式开发
>驱动开发
>数据库应用
>服务器应用
>安全防护
>集群和虚拟机
>开源业界与评论
>贴图娱乐
>红茶馆
>文档专区
>下载共享
>Linux书友会
>Linux人才交流
>Linux站务交流
===============
→ 操作系统技术交流区 ←
>BSD
>Solaris
>SCO UNIX
>HP-UX
>AIX
>IBM AS400应用论坛
>Tru64 UNIX
>IRIX
>Mac OS X
→ 行业解决方案交流区 ←
> 金融行业
> 电信行业
> 互联网行业
> 医卫行业
> 制造行业
> 信息安全
> 教育行业
> 媒体娱乐行业
> 电子政务
> 交通行业
→ 程序设计交流区 ←
>C/C++
>Shell
>Java
>Php
>Perl
>Python
>Web开发
>软件工程
>中间件技术
>GUI编程
>软件配置管理
>VOIP开发技术
→ 网管技术交流区 ←
>网络安全
>网络技术
>Cisco技术
>存储备份之家
>服务器及硬件技术
→ 数据库技术交流区 ←
>MySQL
>PostgreSQL
>Oracle
>Informix
>Sybase
>DB2
→ 应用技术专题交流区 ←
>Web服务器
>Mail服务器
>FTP服务器
>DNS服务器
>Proxy服务器
>LDAP
>VPN
>Lotus
>Samba
→ IT综合交流区 ←
>IT业界新闻与评论
>IT职业生涯
>IT培训与认证
>IT二手大厅
>IT图书与评论
→ IT人的休闲生活交流区 ←
>清茶斋
>运动地带
>快乐数码摄影
>影音文字
>English Forum
>游戏玩家
>旅游天下
>贴图娱乐
>红茶馆
>IT爱车族
→ 站务及频道交流区 ←
>站务交流
>版主会议室
>Linux站务交流
>Linux版主会议室
>博客站务交流区
>下载频道交流区
>CU活动专区
Copyright © 2001-2008 ChinaUnix.net All Rights Reserved 联系我们:
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处
京ICP证041476号
清除 Cookies
-
Linux时代
-
Archiver
-
WAP
-
TOP
Processed in 2.051390 second(s), 5 queries , Gzip enabled