diff options
author | mjw@wray-m-3.hpl.hp.com <mjw@wray-m-3.hpl.hp.com> | 2005-02-10 17:13:35 +0000 |
---|---|---|
committer | mjw@wray-m-3.hpl.hp.com <mjw@wray-m-3.hpl.hp.com> | 2005-02-10 17:13:35 +0000 |
commit | 4db4e4f09f85c3905b01c37ad0dc4f1d59ffe2bb (patch) | |
tree | aa40e548aa4d577c4a358dce969e3516e2e67199 | |
parent | 6be18e86c3d59af8af7dd6edf995797b09ffe3ef (diff) | |
download | xen-4db4e4f09f85c3905b01c37ad0dc4f1d59ffe2bb.tar.gz xen-4db4e4f09f85c3905b01c37ad0dc4f1d59ffe2bb.tar.bz2 xen-4db4e4f09f85c3905b01c37ad0dc4f1d59ffe2bb.zip |
bitkeeper revision 1.1159.258.1 (420b963fGDqQqmlp_DO3u-T_klF82g)
Fixes to make the vnet module compile under 2.6.10.
Thanks to Brian Bruce for spotting the problem and
suggesting fixes.
Signed-off-by: Mike Wray <mike.wray@hp.com>
-rw-r--r-- | .rootkeys | 1 | ||||
-rw-r--r-- | tools/vnet/00INSTALL | 31 | ||||
-rw-r--r-- | tools/vnet/Makefile | 6 | ||||
-rw-r--r-- | tools/vnet/vnet-module/if_varp.h | 2 | ||||
-rw-r--r-- | tools/vnet/vnet-module/varp.c | 14 |
5 files changed, 43 insertions, 11 deletions
@@ -555,6 +555,7 @@ 40fcefb3yMSrZvApO9ToIi-iQwnchA tools/sv/images/xen.png 41013a83z27rKvWIxAfUBMVZ1eDCDg tools/sv/inc/script.js 40fcefb3zGC9XNBkSwTEobCoq8YClA tools/sv/inc/style.css +420b963dK3yGNtqxRM8npGZtrCQd1g tools/vnet/00INSTALL 41a21888_WlknVWjSxb32Fo13_ujsw tools/vnet/00README 41a21888bOiOJc7blzRbe4MNJoaYTw tools/vnet/Makefile 41a21888mg2k5HeiVjlQYEtJBZT4Qg tools/vnet/doc/vnet-module.txt diff --git a/tools/vnet/00INSTALL b/tools/vnet/00INSTALL new file mode 100644 index 0000000000..1c76986d83 --- /dev/null +++ b/tools/vnet/00INSTALL @@ -0,0 +1,31 @@ + +To compile and install run "make install"; if it fails or you need to reinstall +run "make clean" first or the build will fail, at least that is what I have +found under 2.6.10. + +Other important items: +1) You will need to have your xen0 kernel compiled with HMAC_SUPPORT + 2.6.x = (MAIN MENU: Cryptographic Options -> HMAC Support) + BEFORE running "make install". + +2) You will want at least some of the other alogorithms listed under + "Cryptographic Options" for the kernel compiled as modules. + +3) You will want the networking IPsec/VLAN options compiled in as modules + 2.6.x = (MAIN MENU: Device Drivers -> Networking Support -> + Networking Options -> + IP: AH transformation + IP: ESP transformation + IP: IPComp transformation + IP: tunnel transformation + + IPsec user configuration interface + + 802.1Q VLAN Support + +4) The module (vnet_module) will not properly load from the command line + with a "modprobe vnet_module". Use network-vnet to properly configure + your system and load the module for you. + +Please refer to the additional documentation found in tools/vnet/doc for +proper syntax and config file parameters. diff --git a/tools/vnet/Makefile b/tools/vnet/Makefile index 63939dff9d..76d2abae05 100644 --- a/tools/vnet/Makefile +++ b/tools/vnet/Makefile @@ -20,10 +20,10 @@ gc: gc.tar.gz tar xfz gc.tar.gz ln -sf gc?.? gc -gc/Makefile: - (cd gc && ./configure --prefix=`pwd`/install) +gc/.configure-makefile: + (cd gc && ./configure --prefix=`pwd`/install && touch .configure-makefile) -gc-install: gc gc/Makefile +gc-install: gc gc/.configure-makefile make -C gc make -C gc install diff --git a/tools/vnet/vnet-module/if_varp.h b/tools/vnet/vnet-module/if_varp.h index 49058471db..a9a7438a7e 100644 --- a/tools/vnet/vnet-module/if_varp.h +++ b/tools/vnet/vnet-module/if_varp.h @@ -36,7 +36,7 @@ typedef struct VnetMsgHdr { } __attribute__((packed)) VnetMsgHdr; typedef struct VarpHdr { - VnetMsgHdr; + VnetMsgHdr hdr; uint32_t vnet; Vmac vmac; uint32_t addr; diff --git a/tools/vnet/vnet-module/varp.c b/tools/vnet/vnet-module/varp.c index 3b1507e045..1e44a915b7 100644 --- a/tools/vnet/vnet-module/varp.c +++ b/tools/vnet/vnet-module/varp.c @@ -368,8 +368,8 @@ int varp_send(u16 opcode, struct net_device *dev, struct sk_buff *skbin, // Varp header. varph = (void*)skb_put(skbout, varp_n); *varph = (VarpHdr){}; - varph->id = htons(VARP_ID); - varph->opcode = htons(opcode); + varph->hdr.id = htons(VARP_ID); + varph->hdr.opcode = htons(opcode); varph->vnet = htonl(vnet); varph->vmac = *vmac; varph->addr = saddr; @@ -1076,9 +1076,9 @@ int varp_handle_message(struct sk_buff *skb){ goto exit; } mine = 1; - if(varph->id != htons(VARP_ID)){ + if(varph->hdr.id != htons(VARP_ID)){ // It's not varp at all - ignore it. - wprintf("> Unknown id: %d \n", ntohs(varph->id)); + wprintf("> Unknown id: %d \n", ntohs(varph->hdr.id)); goto exit; } if(1){ @@ -1086,13 +1086,13 @@ int varp_handle_message(struct sk_buff *skb){ NIPQUAD(skb->nh.iph->saddr), NIPQUAD(skb->nh.iph->daddr)); dprintf("> sport=%u dport=%u\n", ntohs(skb->h.uh->source), ntohs(skb->h.uh->dest)); dprintf("> opcode=%d vnet=%u vmac=" MACFMT " addr=" IPFMT "\n", - ntohs(varph->opcode), + ntohs(varph->hdr.opcode), ntohl(varph->vnet), MAC6TUPLE(varph->vmac.mac), NIPQUAD(varph->addr)); varp_dprint(); } - switch(ntohs(varph->opcode)){ + switch(ntohs(varph->hdr.opcode)){ case VARP_OP_REQUEST: err = varp_handle_request(skb, varph); break; @@ -1100,7 +1100,7 @@ int varp_handle_message(struct sk_buff *skb){ err = varp_handle_announce(skb, varph); break; default: - wprintf("> Unknown opcode: %d \n", ntohs(varph->opcode)); + wprintf("> Unknown opcode: %d \n", ntohs(varph->hdr.opcode)); break; } exit: |