📄 todo
字号:
Bugs to fix:- Killing the server while the client is still connected causes a kernel panic on the machine running the server.- Killing the server while the client is NOT connected causes a kernel panic on the machine running the server. Seems to panic at sched.c:557 which indicates interrupt called during scheduling which means probably not correct locks implemented in DCCP kernel I would guess- Assuming we're using version 1 of the draft DCCP specification, initial sequence number needs to be randomly set. Not 100% sure this is being done currently.- Doubts regarding the for loop that deals with an ASK option where a CCID change is requested in function generic_option_parse. It does not appear to appropriately handle multiple CCID suggestions correctly. A proposed solution can be found in source code so it is just a matter of implementing and testing it.- DCCP Prefer options only allow a single preferred value for a feature. Multiple preferences should be supported.- Acks are not credited under CCID 2 - the function calls are commented out. Seems easy to fix, I'm not sure if there is a bigger underlying problem yet that caused someone to comment them out initially.- dccp_add_option doesn't update tp->opt_a_sz correctly. It should be "+ optlen + 2" but according to someone who worked on this before me adding +2 creates a DOS attack. It really should be +2 though!Changes to make:- Migrate to kernel 2.6.x (underway)- Move to latest version of specs- Change c name from dcp.c to dccp.c (done in development tree)- Change symbol CONFIG_NET_DCP to CONFIG_NET_DCCP (done in development tree)- Put include files in correct place for dccp headers- Make work as part of kernel as well as a module (done under previous release but not tested)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -