作者carlcarl (carl)
看板LinuxDev
標題[問題] skb->h.raw=skb->nh.raw=skb->data的作用
時間Fri Sep 18 16:01:02 2009
請問一下
我在我ap的接收封包地方作修改
在netif_receive_skb函式中的標題(文章標題)這行上下方分別插入一段程式碼
192.168.1.1是我的ap .8是我的電腦
之前output 格式:一個是在這行之前 一個是在正確的位置
http://0rz.tw/fyuij
之後output 格式:一個是在這行之後 另一個是正確的位置
http://0rz.tw/tCOLx
這行只是單純的改指標位置 為什麼放那行之前的跟正確的 ip會不一樣呢?
而且明明是ap接收封包的位置 為什麼在那行之前 desination ip會顯示是我的電腦0.0||
經過那行之後就正常了...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.123.102.215
※ 編輯: carlcarl 來自: 140.123.102.215 (09/18 16:18)
1F:→ kaeluno1:這只是簡單的給值(或說是指位址), a = b = c; 意思跟b=c 09/18 17:39
2F:→ kaeluno1:; a=b;是一樣的意思,一般raw指標一開始是沒有初始化的, 09/18 17:40
3F:→ kaeluno1:所以可能是亂指一通的,所以你這樣印資料會有機會造成系統 09/18 17:41
4F:→ kaeluno1:當機,使用上請小心. 09/18 17:42
5F:推 kaichan:我沒記錯的話,kernel有的地方會去檢查這三個位置是不是 09/18 17:47
6F:→ kaichan:應該說兩個 raw nh 這兩個是不是在 data 的範圍內 09/18 17:48
7F:→ kaichan:不是在 data 到 tail(or end?) 會有錯誤訊息 09/18 17:50
8F:→ kaichan:當封包流過某些區塊 有人讀懂了 就會去更新 09/18 17:50
9F:→ carlcarl:喔喔 謝謝各位大大的回應0.0 09/22 00:47