summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Auty <ikelos@gentoo.org>2007-07-28 17:43:56 +0000
committerMike Auty <ikelos@gentoo.org>2007-07-28 17:43:56 +0000
commit4154414882bdb78cc6db17d34330e6a4d1a296fa (patch)
tree1ce01d3d356c740cc930ad3c5d953720b2cebadc /app-emulation/vmware-modules
parentUpstream has modified thier site (noted by Gentoo bug 186881) and made CLI ve... (diff)
downloadhistorical-4154414882bdb78cc6db17d34330e6a4d1a296fa.tar.gz
historical-4154414882bdb78cc6db17d34330e6a4d1a296fa.tar.bz2
historical-4154414882bdb78cc6db17d34330e6a4d1a296fa.zip
Redigest for vmware-any-any-update112.
Package-Manager: portage-2.1.3_rc9
Diffstat (limited to 'app-emulation/vmware-modules')
-rw-r--r--app-emulation/vmware-modules/ChangeLog6
-rw-r--r--app-emulation/vmware-modules/files/1.0.0.16-kernel-2.6.22.patch249
-rw-r--r--app-emulation/vmware-modules/files/digest-vmware-modules-1.0.0.11-r16
-rw-r--r--app-emulation/vmware-modules/files/digest-vmware-modules-1.0.0.13-r16
-rw-r--r--app-emulation/vmware-modules/files/digest-vmware-modules-1.0.0.15-r16
-rw-r--r--app-emulation/vmware-modules/vmware-modules-1.0.0.16.ebuild11
6 files changed, 272 insertions, 12 deletions
diff --git a/app-emulation/vmware-modules/ChangeLog b/app-emulation/vmware-modules/ChangeLog
index edef208d0b19..6a778827f1ee 100644
--- a/app-emulation/vmware-modules/ChangeLog
+++ b/app-emulation/vmware-modules/ChangeLog
@@ -1,6 +1,10 @@
# ChangeLog for app-emulation/vmware-modules
# Copyright 1999-2007 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-modules/ChangeLog,v 1.21 2007/07/12 23:44:54 wolf31o2 Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-modules/ChangeLog,v 1.22 2007/07/28 17:37:39 ikelos Exp $
+
+ 28 Jul 2007; Mike Auty <ikelos@gentoo.org>
+ +files/1.0.0.16-kernel-2.6.22.patch, vmware-modules-1.0.0.16.ebuild:
+ Redigest for vmware-any-any-update112.
12 Jul 2007; Chris Gianelloni <wolf31o2@gentoo.org>
-vmware-modules-1.0.0.11.ebuild, vmware-modules-1.0.0.11-r1.ebuild,
diff --git a/app-emulation/vmware-modules/files/1.0.0.16-kernel-2.6.22.patch b/app-emulation/vmware-modules/files/1.0.0.16-kernel-2.6.22.patch
new file mode 100644
index 000000000000..57c644b192fc
--- /dev/null
+++ b/app-emulation/vmware-modules/files/1.0.0.16-kernel-2.6.22.patch
@@ -0,0 +1,249 @@
+diff -u -r vmnet-only.old/bridge.c vmnet-only/bridge.c
+--- vmnet-only.old/bridge.c 2007-06-19 19:08:25.000000000 +0200
++++ vmnet-only/bridge.c 2007-06-19 19:07:47.000000000 +0200
+@@ -1083,12 +1083,21 @@
+ VNetBridgeComputeHeaderPos(struct sk_buff *skb) // IN: buffer to examine
+ {
+ /* Maybe some kernel gets it right... */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
++ if (skb_transport_header(skb) != skb_network_header(skb)) {
++#else
+ if (skb->h.raw != skb->nh.raw) {
++#endif
+ return;
+ }
++
+ switch (be16_to_cpu(skb->protocol)) {
+ case ETH_P_IP:
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
++ skb->transport_header = skb->network_header + (skb_network_header(skb)[0] & 0x0F) * 4;
++#else
+ skb->h.raw = skb->nh.raw + (skb->nh.raw[0] & 0x0F) * 4;
++#endif
+ return;
+ default:
+ LOG(3, (KERN_DEBUG "Unknown EII protocol %04X: csum at %d\n",
+@@ -1146,19 +1155,32 @@
+ if (((struct ethhdr *)skb->mac.raw)->h_proto != htons(ETH_P_IP)) {
+ return ERR_PTR(-EPFNOSUPPORT);
+ }
+-
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
++ if (((struct iphdr *)skb_network_header(skb))->protocol != IPPROTO_TCP) {
++#else
+ if (skb->nh.iph->protocol != IPPROTO_TCP) {
++#endif
+ return ERR_PTR(-EPROTONOSUPPORT);
+ }
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
++ macHdrLen = skb->network_header - skb->mac_header;
++ ipHdrLen = ((struct iphdr *)skb_network_header(skb))->ihl << 2;
++ tcpHdrLen = ((struct tcphdr *)skb_transport_header(skb))->doff << 2;
++#else
+ macHdrLen = skb->nh.raw - skb->mac.raw;
+ ipHdrLen = skb->nh.iph->ihl << 2;
+ tcpHdrLen = skb->h.th->doff << 2;
++#endif
+ allHdrLen = macHdrLen + ipHdrLen + tcpHdrLen;
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
++ ipID = ntohs(((struct iphdr *)skb_network_header(skb))->id);
++ seqNo = ntohl(((struct tcphdr *)skb_transport_header(skb))->seq);
++#else
+ ipID = ntohs(skb->nh.iph->id);
+ seqNo = ntohl(skb->h.th->seq);
+-
++#endif
+ /* Host TCP stack populated this (MSS) for the host NIC driver */
+ bytesPerPacket = skb_shinfo(skb)->tso_size;
+
+@@ -1194,10 +1216,15 @@
+ memcpy(skb_put(newSkb, allHdrLen), skb->data, allHdrLen);
+
+ /* Fix up pointers to different layers */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
++ skb_reset_mac_header(newSkb);
++ skb_set_network_header(newSkb, macHdrLen);
++ skb_set_transport_header(newSkb, macHdrLen + ipHdrLen);
++#else
+ newSkb->mac.raw = newSkb->data;
+ newSkb->nh.raw = newSkb->data + macHdrLen;
+ newSkb->h.raw = newSkb->nh.raw + ipHdrLen;
+-
++#endif
+ /* Payload copy */
+ skb_copy_bits(skb, curByteOffset, newSkb->tail, payloadSize);
+ skb_put(newSkb, payloadSize);
+@@ -1206,6 +1233,27 @@
+ bytesLeft -= payloadSize;
+
+ /* Fix up IP hdr */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
++ ((struct iphdr *)skb_network_header(newSkb))->tot_len = htons(payloadSize + tcpHdrLen + ipHdrLen);
++ ((struct iphdr *)skb_network_header(newSkb))->id = htons(ipID);
++ ((struct iphdr *)skb_network_header(newSkb))->check = 0;
++ /* Recompute new IP checksum */
++ ((struct iphdr *)skb_network_header(newSkb))->check =
++ ip_fast_csum((uint8 *)((struct iphdr *)skb_network_header(newSkb)), ((struct iphdr *)skb_network_header(newSkb))->ihl);
++
++ /* Fix up TCP hdr */
++ ((struct tcphdr *)skb_transport_header(newSkb))->seq = htonl(seqNo);
++ /* Clear FIN/PSH if not last packet */
++ if (bytesLeft > 0) {
++ ((struct tcphdr *)skb_transport_header(newSkb))->fin = 0;
++ ((struct tcphdr *)skb_transport_header(newSkb))->psh = 0;
++ }
++ /* Recompute partial TCP checksum */
++ ((struct tcphdr *)skb_transport_header(newSkb))->check =
++ ~csum_tcpudp_magic(((struct iphdr *)skb_network_header(newSkb))->saddr,
++ ((struct iphdr *)skb_network_header(newSkb))->daddr,
++ payloadSize+tcpHdrLen, IPPROTO_TCP, 0);
++#else
+ newSkb->nh.iph->tot_len = htons(payloadSize + tcpHdrLen + ipHdrLen);
+ newSkb->nh.iph->id = htons(ipID);
+ newSkb->nh.iph->check = 0;
+@@ -1225,6 +1273,7 @@
+ ~csum_tcpudp_magic(newSkb->nh.iph->saddr,
+ newSkb->nh.iph->daddr,
+ payloadSize+tcpHdrLen, IPPROTO_TCP, 0);
++#endif
+
+ /* Offset of field */
+ newSkb->csum = offsetof(struct tcphdr, check);
+@@ -1370,8 +1419,13 @@
+ # endif
+
+ if (bridge->smac) {
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
++ if (VNetCallSMACFunc(bridge->smac, &skb, skb_mac_header(skb),
++ SMAC_CheckPacketFromHost) !=
++#else
+ if (VNetCallSMACFunc(bridge->smac, &skb, skb->mac.raw,
+ SMAC_CheckPacketFromHost) !=
++#endif
+ PacketStatusForwardPacket) {
+ LOG(4, (KERN_NOTICE "bridge-%s: packet dropped .\n",
+ bridge->name));
+@@ -1392,7 +1446,11 @@
+ #endif
+ #endif
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
++ skb_push(skb, skb->data - skb_mac_header(skb));
++#else
+ skb_push(skb, skb->data - skb->mac.raw);
++#endif
+ LOG(3, (KERN_DEBUG "bridge-%s: receive %d\n",
+ bridge->name, (int) skb->len));
+
+diff -u -r vmnet-only.old/filter.c vmnet-only/filter.c
+--- vmnet-only.old/filter.c 2007-06-19 19:08:29.000000000 +0200
++++ vmnet-only/filter.c 2007-06-19 19:07:47.000000000 +0200
+@@ -229,9 +229,22 @@
+ /* When the host receives, hooknum is NF_IP_LOCAL_IN. */
+ transmit = (hooknum == NF_IP_POST_ROUTING);
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
++ ip = (struct iphdr *) skb_network_header(skb);
++#else
+ ip = skb->nh.iph;
++#endif
+ packetHeader = (uint8 *)ip;
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
++ if (transmit) {
++ /* skb all set up for us. */
++ packet = skb_transport_header(skb);
++ } else {
++ /* skb hasn't had a chance to be processed by TCP yet. */
++ packet = skb_network_header(skb) + (ip->ihl << 2);
++ }
++#else
+ if (transmit) {
+ /* skb all set up for us. */
+ packet = skb->h.raw;
+@@ -239,7 +252,7 @@
+ /* skb hasn't had a chance to be processed by TCP yet. */
+ packet = skb->nh.raw + (ip->ihl << 2);
+ }
+-
++#endif
+ HostFilterPrint(("PacketFilter: IP ver %d ihl %d tos %d len %d id %d\n"
+ " offset %d ttl %d proto %d xsum %d\n"
+ " src 0x%08x dest 0x%08x %s\n",
+@@ -259,13 +272,22 @@
+ * know why, but in such cases, this calculation will lead to a negative
+ * packetLength, and the packet to be dropped.
+ */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
++ packetLength = skb->len - (skb->network_header - skb->mac_header) - (ip->ihl << 2);
++#else
+ packetLength = skb->len - (skb->nh.raw - skb->mac.raw) - (ip->ihl << 2);
++#endif
+ }
+
+ if (packetLength < 0) {
+ HostFilterPrint(("PacketFilter: ill formed packet for IPv4\n"));
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
++ HostFilterPrint(("skb: len %d h.raw %p nh.raw %p mac.raw %p, packetLength %d\n",
++ skb->len, skb_transport_header(skb), skb_network_header(skb), skb_mac_header(skb), packetLength));
++#else
+ HostFilterPrint(("skb: len %d h.raw %p nh.raw %p mac.raw %p, packetLength %d\n",
+ skb->len, skb->h.raw, skb->nh.raw, skb->mac.raw, packetLength));
++#endif
+ verdict = NF_DROP;
+ DropPacket(VNET_FILTER_ACTION_DRP_SHORT, packetHeader, packet, 0);
+ goto out_unlock;
+diff -u -r vmnet-only.old/userif.c vmnet-only/userif.c
+--- vmnet-only.old/userif.c 2007-06-19 19:08:34.000000000 +0200
++++ vmnet-only/userif.c 2007-06-19 19:07:47.000000000 +0200
+@@ -627,13 +627,21 @@
+ */
+ if (skb->pkt_type == PACKET_OUTGOING && /* Packet must be outgoing */
+ skb->ip_summed == VM_CHECKSUM_PARTIAL && /* Without checksum */
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
++ skb->transport_header != skb->network_header && /* We must know where header is */
++#else
+ skb->h.raw != skb->nh.raw && /* We must know where header is */
++#endif
+ skb->len == count) { /* No truncation may occur */
+ size_t skl;
+ int csum;
+ u_int16_t csum16;
+
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
++ skl = skb_transport_header(skb) - skb->data;
++#else
+ skl = skb->h.raw - skb->data;
++#endif
+ if (VNetCopyDatagram(skb, buf, skl)) {
+ return -EFAULT;
+ }
+diff -u -r vmnet-only.old/vnetInt.h vmnet-only/vnetInt.h
+--- vmnet-only.old/vnetInt.h 2007-06-19 19:08:41.000000000 +0200
++++ vmnet-only/vnetInt.h 2007-06-19 19:07:47.000000000 +0200
+@@ -22,6 +22,15 @@
+ skb_datarefp(clone) == skb_datarefp(skb) \
+ )
+ #endif
++#if LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 22)
++#define DEV_QUEUE_XMIT(skb, dev, pri) ( \
++ (skb)->dev = (dev), \
++ (skb)->priority = (pri), \
++ skb_reset_mac_header(skb), \
++ skb_set_network_header(skb, sizeof (struct ethhdr)), \
++ dev_queue_xmit(skb) \
++ )
++#else
+ #define DEV_QUEUE_XMIT(skb, dev, pri) ( \
+ (skb)->dev = (dev), \
+ (skb)->priority = (pri), \
+@@ -29,6 +38,7 @@
+ (skb)->nh.raw = (skb)->data + sizeof (struct ethhdr), \
+ dev_queue_xmit(skb) \
+ )
++#endif
+ #ifdef KERNEL_2_3_15
+ # define dev_lock_list() read_lock(&dev_base_lock)
+ # define dev_unlock_list() read_unlock(&dev_base_lock)
diff --git a/app-emulation/vmware-modules/files/digest-vmware-modules-1.0.0.11-r1 b/app-emulation/vmware-modules/files/digest-vmware-modules-1.0.0.11-r1
index bd7acd854d89..54a6da4f9fc8 100644
--- a/app-emulation/vmware-modules/files/digest-vmware-modules-1.0.0.11-r1
+++ b/app-emulation/vmware-modules/files/digest-vmware-modules-1.0.0.11-r1
@@ -1,3 +1,3 @@
-MD5 2b65f2c3867e45a7b0674591f2ca8015 vmware-any-any-update109.tar.gz 295773
-RMD160 823b961d7b8f8a97af02f0bb2ed775fa5840ec54 vmware-any-any-update109.tar.gz 295773
-SHA256 392dd7d4fd990efcbd664f982d71e8ad8ba1d08425ab37e640a1bee0909b67a8 vmware-any-any-update109.tar.gz 295773
+MD5 fc25f970aa2797938b54f3d2a7ec2d73 vmware-any-any-update112.tar.gz 469362
+RMD160 380bd15513583055cf0810c16ae11642454fafd3 vmware-any-any-update112.tar.gz 469362
+SHA256 f6da5636812cdb72cc8036da2f23df1abe6dbe7714c029f89ad3f042b092abb2 vmware-any-any-update112.tar.gz 469362
diff --git a/app-emulation/vmware-modules/files/digest-vmware-modules-1.0.0.13-r1 b/app-emulation/vmware-modules/files/digest-vmware-modules-1.0.0.13-r1
index bd7acd854d89..54a6da4f9fc8 100644
--- a/app-emulation/vmware-modules/files/digest-vmware-modules-1.0.0.13-r1
+++ b/app-emulation/vmware-modules/files/digest-vmware-modules-1.0.0.13-r1
@@ -1,3 +1,3 @@
-MD5 2b65f2c3867e45a7b0674591f2ca8015 vmware-any-any-update109.tar.gz 295773
-RMD160 823b961d7b8f8a97af02f0bb2ed775fa5840ec54 vmware-any-any-update109.tar.gz 295773
-SHA256 392dd7d4fd990efcbd664f982d71e8ad8ba1d08425ab37e640a1bee0909b67a8 vmware-any-any-update109.tar.gz 295773
+MD5 fc25f970aa2797938b54f3d2a7ec2d73 vmware-any-any-update112.tar.gz 469362
+RMD160 380bd15513583055cf0810c16ae11642454fafd3 vmware-any-any-update112.tar.gz 469362
+SHA256 f6da5636812cdb72cc8036da2f23df1abe6dbe7714c029f89ad3f042b092abb2 vmware-any-any-update112.tar.gz 469362
diff --git a/app-emulation/vmware-modules/files/digest-vmware-modules-1.0.0.15-r1 b/app-emulation/vmware-modules/files/digest-vmware-modules-1.0.0.15-r1
index bd7acd854d89..54a6da4f9fc8 100644
--- a/app-emulation/vmware-modules/files/digest-vmware-modules-1.0.0.15-r1
+++ b/app-emulation/vmware-modules/files/digest-vmware-modules-1.0.0.15-r1
@@ -1,3 +1,3 @@
-MD5 2b65f2c3867e45a7b0674591f2ca8015 vmware-any-any-update109.tar.gz 295773
-RMD160 823b961d7b8f8a97af02f0bb2ed775fa5840ec54 vmware-any-any-update109.tar.gz 295773
-SHA256 392dd7d4fd990efcbd664f982d71e8ad8ba1d08425ab37e640a1bee0909b67a8 vmware-any-any-update109.tar.gz 295773
+MD5 fc25f970aa2797938b54f3d2a7ec2d73 vmware-any-any-update112.tar.gz 469362
+RMD160 380bd15513583055cf0810c16ae11642454fafd3 vmware-any-any-update112.tar.gz 469362
+SHA256 f6da5636812cdb72cc8036da2f23df1abe6dbe7714c029f89ad3f042b092abb2 vmware-any-any-update112.tar.gz 469362
diff --git a/app-emulation/vmware-modules/vmware-modules-1.0.0.16.ebuild b/app-emulation/vmware-modules/vmware-modules-1.0.0.16.ebuild
index df5cb5664c4d..a1df5d7e6b0d 100644
--- a/app-emulation/vmware-modules/vmware-modules-1.0.0.16.ebuild
+++ b/app-emulation/vmware-modules/vmware-modules-1.0.0.16.ebuild
@@ -1,13 +1,20 @@
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
-# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-modules/vmware-modules-1.0.0.16.ebuild,v 1.2 2007/07/12 06:39:56 mr_bones_ Exp $
+# $Header: /var/cvsroot/gentoo-x86/app-emulation/vmware-modules/vmware-modules-1.0.0.16.ebuild,v 1.3 2007/07/28 17:37:39 ikelos Exp $
KEYWORDS="-* ~amd64 ~x86"
VMWARE_VER="VME_V6" # THIS VALUE IS JUST A PLACE HOLDER
-inherit vmware-mod
+inherit eutils vmware-mod
VMWARE_MODULE_LIST="vmmon vmnet vmblock"
SRC_URI="x86? ( mirror://vmware/software/vmplayer/VMware-player-2.0.0-45731.i386.tar.gz )
amd64? ( mirror://vmware/software/vmplayer/VMware-player-2.0.0-45731.x86_64.tar.gz )"
VMWARE_MOD_DIR="vmware-player-distrib/lib/modules/source/"
+
+src_unpack() {
+ vmware-mod_src_unpack
+ cd ${WORKDIR}
+ epatch ${FILESDIR}/${PV}-kernel-2.6.22.patch
+}
+