add_sr.cc
来自「在Linux下做的QuadTree的程序」· CC 代码 · 共 58 行
CC
58 行
/* add_sr.cc add a compiled constant source route to a packet. for testing purposes $Id: add_sr.cc,v 1.1.1.1 2000/08/28 18:40:09 jinyang Exp $ */#include <packet.h>#include <ip.h>#include <hdr_sr.h>#include <connector.h>class AddSR : public Connector {public: void recv(Packet*, Handler* callback = 0); AddSR();private: int off_ip_; int off_sr_; int off_ll_; int off_mac_;};static class AddSRClass : public TclClass {public: AddSRClass() : TclClass("Connector/AddSR") {} TclObject* create(int, const char*const*) { return (new AddSR); }} class_addsr;AddSR::AddSR(){ bind("off_sr_", &off_sr_); bind("off_ll_", &off_ll_); bind("off_mac_", &off_mac_); bind("off_ip_", &off_ip_);}voidAddSR::recv(Packet* p, Handler* callback){ hdr_sr *srh = (hdr_sr*)p->access(off_sr_); hdr_ip *iph = (hdr_ip*)p->access(off_ip_); srh->route_request() = 0; srh->num_addrs() = 0; srh->cur_addr() = 0; srh->valid() = 1; srh->append_addr( 1<<8, AF_INET ); srh->append_addr( 2<<8, AF_INET ); srh->append_addr( 3<<8, AF_INET ); printf(" added sr %s\n",srh->dump()); send(p,0);}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?