+++ /dev/null
-diff -Nur old/vmware-any-any-update117d/vmmon-only/Makefile new/vmware-any-any-update117d/vmmon-only/Makefile
---- old/vmware-any-any-update117d/vmmon-only/Makefile 2008-08-30 15:29:13.946349500 +0000
-+++ new/vmware-any-any-update117d/vmmon-only/Makefile 2008-08-30 15:29:23.042918000 +0000
-@@ -14,9 +14,9 @@
- VM_UNAME = $(shell uname -r)
-
- # Header directory for the running kernel
--HEADER_DIR = /lib/modules/$(VM_UNAME)/build/include
-+HEADER_DIR = /usr/src/linux/include
-
--BUILD_DIR = $(HEADER_DIR)/..
-+BUILD_DIR = .
-
- DRIVER := vmmon
-
-@@ -55,9 +55,6 @@
-
- VMCCVER := $(shell $(CC) -dumpversion)
-
--# If there is no version defined, we are in toplevel pass, not yet in kernel makefiles...
--ifeq ($(VERSION),)
--
- ifeq ($(VM_KBUILD), 24)
- DRIVER_KO := $(DRIVER).o
- else
-@@ -113,17 +110,6 @@
-
- include $(SRCROOT)/Makefile.kernel
-
--ifdef TOPDIR
--ifeq ($(VM_KBUILD), 24)
--
--O_TARGET := $(DRIVER).o
--
--obj-y := $($(DRIVER)-y)
--
--include $(TOPDIR)/Rules.make
--endif
--endif
--
- else
-
- include $(SRCROOT)/Makefile.normal
-diff -Nur old/vmware-any-any-update117d/vmnet-only/Makefile new/vmware-any-any-update117d/vmnet-only/Makefile
---- old/vmware-any-any-update117d/vmnet-only/Makefile 2008-08-30 15:30:05.813591000 +0000
-+++ new/vmware-any-any-update117d/vmnet-only/Makefile 2008-08-30 15:30:13.886095500 +0000
-@@ -14,9 +14,9 @@
- VM_UNAME = $(shell uname -r)
-
- # Header directory for the running kernel
--HEADER_DIR = /lib/modules/$(VM_UNAME)/build/include
-+HEADER_DIR = /usr/src/linux/include
-
--BUILD_DIR = $(HEADER_DIR)/..
-+BUILD_DIR = .
-
- DRIVER := vmnet
-
-@@ -55,9 +55,6 @@
-
- VMCCVER := $(shell $(CC) -dumpversion)
-
--# If there is no version defined, we are in toplevel pass, not yet in kernel makefiles...
--ifeq ($(VERSION),)
--
- ifeq ($(VM_KBUILD), 24)
- DRIVER_KO := $(DRIVER).o
- else
+++ /dev/null
-allow unknown-clients;
-default-lease-time 1800; # 30 minutes
-max-lease-time 7200; # 2 hours
-
-subnet 192.168.76.0 netmask 255.255.255.0 {
- range 192.168.76.128 192.168.76.254;
- option broadcast-address 192.168.76.255;
- option domain-name-servers 192.168.76.2;
- option domain-name "localdomain";
- option routers 192.168.76.2;
-}
+++ /dev/null
-# Linux NAT configuration file
-[host]
-# NAT gateway address
-ip = 192.168.76.2
-netmask = 255.255.255.0
-# or ip = 192.168.76.2/24
-
-# enable configuration; disabled by default for security reasons
-#configport = 33445
-
-# VMnet device if not specified on command line
-device = /dev/vmnet8
-
-# Allow PORT/EPRT FTP commands (they need incoming TCP stream...)
-activeFTP = 1
-
-# Allows the source to have any OUI. Turn this one if you change the OUI
-# in the MAC address of your virtual machines.
-#allowAnyOUI = 1
-
-[udp]
-# Timeout in seconds, 0 = no timeout, default = 60; real value might
-# be up to 100% longer
-timeout = 60
-
-[incomingtcp]
-# Use these with care - anyone can enter into your VM through these...
-
-# FTP (both active and passive FTP is always enabled)
-# ftp localhost 8887
-#8887 = 192.168.76.128:21
-
-# WEB (make sure that if you are using named webhosting, names point to
-# your host, not to guest... And if you are forwarding port other
-# than 80 make sure that your server copes with mismatched port
-# number in Host: header)
-# lynx http://localhost:8888
-#8888 = 192.168.76.128:80
-
-# SSH
-# ssh -p 8889 root@localhost
-#8889 = 192.168.76.128:22
-
-[incomingudp]
-# UDP port forwarding example
-#6000 = 192.168.76.128:6001
+++ /dev/null
---- vmware-distrib/bin/vmplayer 2005-03-23 05:54:18.000000000 -0600
-+++ vmware-distrib.new/bin/vmplayer 2005-04-13 09:35:12.000000000 -0500
-@@ -8,162 +8,7 @@
- # the VMware software is installed. --hpreg
- #
-
--# BEGINNING_OF_DB_DOT_SH
--#!/bin/sh
--
--#
--# Manage an installer database
--#
--
--# Add an answer to a database in memory
--db_answer_add() {
-- local dbvar="$1" # IN/OUT
-- local id="$2" # IN
-- local value="$3" # IN
-- local answers
-- local i
--
-- eval "$dbvar"'_answer_'"$id"'="$value"'
--
-- eval 'answers="$'"$dbvar"'_answers"'
-- # There is no double quote around $answers on purpose
-- for i in $answers; do
-- if [ "$i" = "$id" ]; then
-- return
-- fi
-- done
-- answers="$answers"' '"$id"
-- eval "$dbvar"'_answers="$answers"'
--}
--
--# Remove an answer from a database in memory
--db_answer_remove() {
-- local dbvar="$1" # IN/OUT
-- local id="$2" # IN
-- local new_answers
-- local answers
-- local i
--
-- eval 'unset '"$dbvar"'_answer_'"$id"
--
-- new_answers=''
-- eval 'answers="$'"$dbvar"'_answers"'
-- # There is no double quote around $answers on purpose
-- for i in $answers; do
-- if [ "$i" != "$id" ]; then
-- new_answers="$new_answers"' '"$i"
-- fi
-- done
-- eval "$dbvar"'_answers="$new_answers"'
--}
--
--# Load all answers from a database on stdin to memory (<dbvar>_answer_*
--# variables)
--db_load_from_stdin() {
-- local dbvar="$1" # OUT
--
-- eval "$dbvar"'_answers=""'
--
-- # read doesn't support -r on FreeBSD 3.x. For this reason, the following line
-- # is patched to remove the -r in case of FreeBSD tools build. So don't make
-- # changes to it. -- Jeremy Bar
-- while read -r action p1 p2; do
-- if [ "$action" = 'answer' ]; then
-- db_answer_add "$dbvar" "$p1" "$p2"
-- elif [ "$action" = 'remove_answer' ]; then
-- db_answer_remove "$dbvar" "$p1"
-- fi
-- done
--}
--
--# Load all answers from a database on disk to memory (<dbvar>_answer_*
--# variables)
--db_load() {
-- local dbvar="$1" # OUT
-- local dbfile="$2" # IN
--
-- db_load_from_stdin "$dbvar" < "$dbfile"
--}
--
--# Iterate through all answers in a database in memory, calling <func> with
--# id/value pairs and the remaining arguments to this function
--db_iterate() {
-- local dbvar="$1" # IN
-- local func="$2" # IN
-- shift 2
-- local answers
-- local i
-- local value
--
-- eval 'answers="$'"$dbvar"'_answers"'
-- # There is no double quote around $answers on purpose
-- for i in $answers; do
-- eval 'value="$'"$dbvar"'_answer_'"$i"'"'
-- "$func" "$i" "$value" "$@"
-- done
--}
--
--# If it exists in memory, remove an answer from a database (disk and memory)
--db_remove_answer() {
-- local dbvar="$1" # IN/OUT
-- local dbfile="$2" # IN
-- local id="$3" # IN
-- local answers
-- local i
--
-- eval 'answers="$'"$dbvar"'_answers"'
-- # There is no double quote around $answers on purpose
-- for i in $answers; do
-- if [ "$i" = "$id" ]; then
-- echo 'remove_answer '"$id" >> "$dbfile"
-- db_answer_remove "$dbvar" "$id"
-- return
-- fi
-- done
--}
--
--# Add an answer to a database (disk and memory)
--db_add_answer() {
-- local dbvar="$1" # IN/OUT
-- local dbfile="$2" # IN
-- local id="$3" # IN
-- local value="$4" # IN
--
-- db_remove_answer "$dbvar" "$dbfile" "$id"
-- echo 'answer '"$id"' '"$value" >> "$dbfile"
-- db_answer_add "$dbvar" "$id" "$value"
--}
--
--# Add a file to a database on disk
--# 'file' is the file to put in the database (it may not exist on the disk)
--# 'tsfile' is the file to get the timestamp from, '' if no timestamp
--db_add_file() {
-- local dbfile="$1" # IN
-- local file="$2" # IN
-- local tsfile="$3" # IN
-- local date
--
-- if [ "$tsfile" = '' ]; then
-- echo 'file '"$file" >> "$dbfile"
-- else
-- date=`date -r "$tsfile" '+%s' 2> /dev/null`
-- if [ "$date" != '' ]; then
-- date=' '"$date"
-- fi
-- echo 'file '"$file$date" >> "$dbfile"
-- fi
--}
--
--# Add a directory to a database on disk
--db_add_dir() {
-- local dbfile="$1" # IN
-- local dir="$2" # IN
--
-- echo 'directory '"$dir" >> "$dbfile"
--}
--# END_OF_DB_DOT_SH
--
--db_load 'vm_db' '/etc/vmware/locations'
-+. /etc/vmware/locations
-
- if [ "vmware" = "vmware-console" ]; then
- vmware_config_name="vmware-config-console"
+++ /dev/null
-#
-# Configuration file for VMware Workstation networking
-#
-
-# Wanna VMware Workstation networking?
-VM_NETWORKING=yes
-
-# Bridged networking on /dev/vmnet0 - sufficient in most cases
-VNET_0_INTERFACE=eth0
-
-# Host-only networking on /dev/vmnet1 - samba subpackage needed
-#VNET_1_HOSTONLY_HOSTADDR=192.168.23.1
-#VNET_1_HOSTONLY_NETMASK=255.255.255.0
-
-# NAT networking on /dev/vmnet8
-#VNET_8_NAT=yes
-#VNET_8_HOSTONLY_NETMASK=255.255.255.0
-#VNET_8_HOSTONLY_HOSTADDR=192.168.76.2
+++ /dev/null
-diff -Nur old/vmware-any-any-update117d/vmnet-only/bridge.c new/vmware-any-any-update117d/vmnet-only/bridge.c
---- old/vmware-any-any-update117d/vmnet-only/bridge.c 2008-08-30 15:50:06.800648000 +0000
-+++ new/vmware-any-any-update117d/vmnet-only/bridge.c 2008-08-30 16:10:34.153352750 +0000
-@@ -275,7 +275,7 @@
- struct net_device *net) // IN: Network device
- {
- #ifdef VMW_NETDEV_HAS_NET
-- if (dev_net(net) != dev_net(bridge->internalDev)) {
-+ if (net->nd_net != bridge->internalDev->nd_net) {
- return 0;
- }
- #endif
-diff -Nur old/vmware-any-any-update117d/vmnet-only/vmnetInt.h new/vmware-any-any-update117d/vmnet-only/vmnetInt.h
---- old/vmware-any-any-update117d/vmnet-only/vmnetInt.h 2008-08-30 15:50:06.800648000 +0000
-+++ new/vmware-any-any-update117d/vmnet-only/vmnetInt.h 2008-08-30 15:59:47.768956250 +0000
-@@ -63,7 +63,7 @@
- # define dev_lock_list() read_lock(&dev_base_lock)
- # define dev_unlock_list() read_unlock(&dev_base_lock)
- # ifdef VMW_NETDEV_HAS_NET
--# define DEV_GET(x) __dev_get_by_name(dev_net((x)->internalDev), (x)->name)
-+# define DEV_GET(x) __dev_get_by_name((x)->internalDev->nd_net, (x)->name)
- # else
- # define DEV_GET(x) __dev_get_by_name((x)->name)
- # endif
-@@ -89,7 +89,7 @@
-
- #ifdef VMW_NETDEV_HAS_NET
- extern struct proto vmnet_proto;
--# define compat_sk_alloc(_bri, _pri) sk_alloc(dev_net((_bri)->internalDev), \
-+# define compat_sk_alloc(_bri, _pri) sk_alloc((_bri)->internalDev->nd_net, \
- PF_NETLINK, _pri, &vmnet_proto)
- #elif defined(VMW_HAVE_SK_ALLOC_WITH_PROTO)
- extern struct proto vmnet_proto;
+++ /dev/null
-[Desktop Entry]
-Name=VMware Player
-Type=Application
-Comment=VMware Player
-Comment[pl]=VMware Player
-Exec=vmplayer
-Icon=VMware-player
-Terminal=false
-Categories=Utility;Emulator;
-# vi: encoding=utf-8
+++ /dev/null
-#!/bin/sh
-
-#
-# Copyright 1998 VMware, Inc. All rights reserved.
-#
-
-# vmnet: Manages the services needed to run VMware networking
-#
-# description: Manages the services needed to run VMware networking
-#
-# chkconfig: 235 90 8
-#
-# probe: true
-# hide: true
-
-subsys=vmnet
-driver=vmmon
-vnet=vmnet
-bridge=vmnet-bridge
-dhcpd=vmnet-dhcpd
-netifup=vmnet-netifup
-natd=vmnet-natd
-ping=vmware-ping
-smbd=vmware-smbd
-nmbd=vmware-nmbd
-
-# Source config files
-vmware_etc_dir=/etc/vmware
-vmware_locations="$vmware_etc_dir"/locations
-vmnet_cfg="$vmware_etc_dir"/vmnet.conf
-
-for f in $vmware_locations $vmnet_cfg; do
- if [ -r $f ]; then
- . $f
- else
- echo "FATAL: Unable to read $f"
- exit 1
- fi
-done
-
-# System wide functions
-. /etc/rc.d/init.d/functions
-
-# Create /dev/vmnetXX device
-vmware_create_vmnet() {
- local vHubNr="$1" # IN
- local vDevice="/dev/vmnet$vHubNr"
-
- if [ ! -e "$vDevice" ]; then
- mknod -m 600 "$vDevice" c 119 "$vHubNr"
- fi
-}
-
-#
-# Create a temporary directory
-#
-
-# They are a lot of small utility programs to create temporary files in a
-# secure way, but none of them is standard. So I wrote this --hpreg
-make_tmp_dir() {
- local dirname="$1" # OUT
- local prefix="$2" # IN
- local tmp
- local serial
- local loop
-
- tmp="${TMPDIR:-/tmp}"
- # Don't overwrite existing user data
- # -> Create a directory with a name that didn't exist before
- #
- # This may never succeed (if we are racing with a malicious process), but at
- # least it is secure
- serial=0
- loop='yes'
- while [ "$loop" = 'yes' ]; do
- # Check the validity of the temporary directory. We do this in the loop
- # because it can change over time
- if [ ! -d "$tmp" ]; then
- echo 'Error: "'"$tmp"'" is not a directory.'
- echo
- exit 1
- fi
- if [ ! -w "$tmp" -o ! -x "$tmp" ]; then
- echo 'Error: "'"$tmp"'" should be writable and executable.'
- echo
- exit 1
- fi
- # Be secure
- # -> Don't give write access to other users (so that they can not use this
- # directory to launch a symlink attack)
- if mkdir -m 0755 "$tmp"'/'"$prefix$serial" >/dev/null 2>&1; then
- loop='no'
- else
- serial=`expr "$serial" + 1`
- if [ "`expr "$serial" % 200`" = '0' ]; then
- echo 'Warning: The "'"$tmp"'" directory may be under attack.'
- echo
- fi
- fi
- done
- eval "$dirname"'="$tmp"'"'"'/'"'"'"$prefix$serial"'
-}
-
-#
-# Utilities
-#
-
-# Compute the subnet address associated to a couple IP/netmask
-ipv4_subnet() {
- local ip="$1"
- local netmask="$2"
-
- # Split quad-dotted addresses into bytes
- # There is no double quote around the back-quoted expression on purpose
- # There is no double quote around $ip and $netmask on purpose
- set -- `IFS='.'; echo $ip $netmask`
- echo $(($1 & $5)).$(($2 & $6)).$(($3 & $7)).$(($4 & $8))
-}
-
-# Compute the broadcast address associated to a couple IP/netmask
-ipv4_broadcast() {
- local ip="$1"
- local netmask="$2"
-
- # Split quad-dotted addresses into bytes
- # There is no double quote around the back-quoted expression on purpose
- # There is no double quote around $ip and $netmask on purpose
- set -- `IFS='.'; echo $ip $netmask`
- echo $(($1 | (255 - $5))).$(($2 | (255 - $6))).$(($3 | (255 - $7))).$(($4 | (255 - $8)))
-}
-
-# Count the number of running virtual machines by looking at the number of references
-# to the $driver module.
-countVMs() {
- # Beware of module dependancies here. An exact match is important
- /sbin/lsmod | awk 'BEGIN {n = 0;} {if ($1 == "'"$driver"'") n = $3;} END {print n;}'
-}
-
-# Check if there is an IP route for a given subnet via a given interface
-# Return true if there is _NO_ such route
-noRoutePresent() {
- local subnet="$1" # IN
- local intf="$2" # IN
-
- # Beware, there may be several identical routes
- [ "`/sbin/route -n | grep '^'"$subnet"'.*'"$intf"'$'`" = '' ]
-}
-
-
-# Macro definitions
-#
-# Note:
-# . Each daemon must be started from its own directory to avoid busy devices
-# . Each PID file doesn't need to be added to the installer database, because
-# it is going to be automatically removed when it becomes stale (after a
-# reboot). It must go directly under /var/run, or some distributions
-# (RedHat 6.0) won't clean it
-#
-
-# Terminate a process synchronously
-vmware_synchrone_kill() {
- local pid="$1" # IN
- local signal="$2" # IN
- local second
-
- kill -"$signal" "$pid"
- # Wait a bit to see if the dirty job has really been done
- for second in 0 1 2 3 4 5 6 7 8 9 10; do
- if [ ! -d /proc/"$pid" ]; then
- # Success
- return 0
- fi
- sleep 1
- done
- # Timeout
- return 1
-}
-
-# Kill the process associated to a pidfile
-vmware_stop_pidfile() {
- local pidfile="$1" # IN
- local pid
-
- pid=`cat "$pidfile" 2>/dev/null`
- if [ "$pid" = '' ]; then
- # The file probably does not exist or is empty. Success
- return 0
- fi
- # Keep only the first number we find, because some Samba pid files are really
- # trashy: they end with NUL characters
- # There is no double quote around $pid on purpose
- set -- $pid
- pid="$1"
- # First try a nice SIGTERM
- if vmware_synchrone_kill "$pid" 15; then
- return 0
- fi
- # Then send a strong SIGKILL
- if vmware_synchrone_kill "$pid" 9; then
- return 0
- fi
- return 1
-}
-
-# Start the host-only network user service
-vmware_start_hostonly() {
- local vHubNr="$1" # IN
- local vHostIf="$2" # IN
- local ifIp="$3" # IN
- local ifMask="$4" # IN
- local run_dhcpd="$5" # IN
- local run_samba="$6" # IN
- local ifNet
-
- # Do a cursory check to see if the host-only network
- # configuration is still ok. We do this so that mobile
- # hosts don't get setup at install time and then moved to
- # a new locale where the host-only network config is no
- # longer valid.
- #
- # NB: This really needs to be done at power-on time when
- # VM is configured to use host-only networking so that
- # we aren't fooled by dynamic changes in the network.
- #
- # XXX ping takes 10 seconds to timeout if nobody answers
- # that slows boot too much so we do this bit in the
- # background.
- if "$VM_BINDIR"/"$ping" -q "$ifIp"; then
- echo 'Host-only networking disabled because '"$ifIp"
- echo 'appears to be a real, physical, existing address.'
- echo 'Please modify your host-only network configuration.'
- exit 1
- fi
- cd "$VM_BINDIR" && "$VM_BINDIR"/"$netifup" \
- -d /var/run/"$netifup"-"$vHostIf".pid /dev/vmnet"$vHubNr" "$vHostIf"
- [ "$?" -eq 0 ] || exit 1
- # Configure the virtual host ethernet interface and define the private IP
- # network
- #
- # . We provide the broadcast address explicitly because versions of ifconfig
- # prior to 1.39 (1999-03-18) seem to miscompute it
- # . 2.0.x kernels don't install a route when the interface is marked up, but
- # 2.2.x kernel do. Since we want to see any errors from route we don't
- # just discard messages from route, but instead check if the route got
- # installed before manually adding one.
- ifNet=`ipv4_subnet "$ifIp" "$ifMask"`
- if ifconfig "$vHostIf" inet "$ifIp" netmask "$ifMask" \
- broadcast "`ipv4_broadcast "$ifIp" "$ifMask"`" up \
- && noRoutePresent "$ifNet" "$vHostIf"; then
- route add -net "$ifNet" netmask "$ifMask" "$vHostIf"
- fi
- if [ "$run_dhcpd" = 'yes' ]; then
- # Start a DHCP server on a private IP network
- # The daemon already logs its output in the system log, so we can safely
- # trash it
- cd "$VM_BINDIR" && "$VM_BINDIR"/"$dhcpd" \
- -cf "$vmware_etc_dir"/"$vHostIf"/dhcpd/dhcpd.conf \
- -lf "$vmware_etc_dir"/"$vHostIf"/dhcpd/dhcpd.leases \
- -pf /var/run/"$dhcpd"-"$vHostIf".pid "$vHostIf" >/dev/null 2>&1 || exit 1
- fi
- if [ "$run_samba" = 'yes' ]; then
- # Start a SMB name server on a private IP network
- # Disable logging to avoid the uncontrolled creation of unmanaged files
- cd "$VM_BINDIR" && "$VM_BINDIR"/"$nmbd" -D -l /dev/null \
- -s "$vmware_etc_dir"/"$vHostIf"/smb/smb.conf \
- -f /var/run/"$nmbd"-"$vHostIf".pid || exit 1
- # Start a SMB share server on a private IP network
- # Disable logging to avoid the uncontrolled creation of unmanaged files
- cd "$VM_BINDIR" && "$VM_BINDIR"/"$smbd" -D -l /dev/null \
- -s "$vmware_etc_dir"/"$vHostIf"/smb/smb.conf \
- -f /var/run/"$smbd"-"$vHostIf".pid || exit 1
- fi
-}
-
-# Stop the host-only network user service
-vmware_stop_hostonly() {
- local vHostIf="$1" # IN
- local ifIp="$2" # IN
- local ifMask="$3" # IN
- local ifNet
-
- # Terminate the private network
- ifNet=`ipv4_subnet "$ifIp" "$ifMask"`
- noRoutePresent "$ifNet" "$vHostIf" || route del -net "$ifNet" netmask "$ifMask" || exit 1
- # To test if the interface exists, we can not just look at the exitcode
- # because old versions of ifconfig don't exit with 1 when invoked with a
- # non-existing interface
- if [ "`ifconfig "$vHostIf" 2>/dev/null`" != '' ]; then
- ifconfig "$vHostIf" down || exit 1
- fi
- vmware_stop_pidfile /var/run/"$netifup"-"$vHostIf".pid || exit 1
-}
-
-# See how we were called.
-case "$1" in
- start)
- if [ -f /var/lock/subsys/"$subsys" ]; then
- msg_already_running "VMware Workstation networking"
- fi
- # Try to load parport_pc. Failure is allowed as it does not exist
- # on kernels 2.0
- /sbin/modprobe parport_pc >/dev/null 2>&1
- msg_starting 'Virtual machine monitor'
- busy
- /sbin/modprobe $driver
- [ "$?" -eq "0" ] && ok || fail
- if [ "$VM_NETWORKING" = 'yes' ]; then
- msg_starting 'Virtual ethernet'
- busy
- /sbin/modprobe $vnet
- [ "$?" -eq 0 ] && ok || fail
- vHubNr=0
- while [ $vHubNr -lt 9 ]; do
- eval 'interface="$VNET_'"$vHubNr"'_INTERFACE"'
- eval 'hostaddr="$VNET_'"$vHubNr"'_HOSTONLY_HOSTADDR"'
- eval 'netmask="$VNET_'"$vHubNr"'_HOSTONLY_NETMASK"'
- if [ -n "$interface" ]; then
- vmware_create_vmnet "$vHubNr"
- # Connect a physical host ethernet interface to a virtual ethernet hub
- msg_starting 'Bridged networking on /dev/vmnet'"$vHubNr"
- busy
- cd "$VM_BINDIR" && "$VM_BINDIR"/"$bridge" \
- -d /var/run/"$bridge"-"$vHubNr".pid /dev/vmnet"$vHubNr" "$interface"
- [ "$?" -eq 0 ] && ok || fail
- elif [ -n "$hostaddr" -a -n "$netmask" ]; then
- vmware_create_vmnet "$vHubNr"
- eval 'samba="$VNET_'"$vHubNr"'_SAMBA"'
- msg_starting 'Host-only networking on /dev/vmnet'"$vHubNr"
- busy
- vmware_start_hostonly "$vHubNr" 'vmnet'"$vHubNr" "$hostaddr" \
- "$netmask" 'yes' "$samba"
- [ "$?" -eq 0 ] && ok || fail
- eval 'nat="$VNET_'"$vHubNr"'_NAT"'
- if [ "$nat" = 'yes' ]; then
- # Start the NAT network user service
- msg_starting 'NAT networking on /dev/vmnet'"$vHubNr"
- busy
- cd "$VM_BINDIR" && "$VM_BINDIR"/"$natd" \
- -d /var/run/"$natd"-"$vHubNr".pid \
- -m /var/run/"$natd"-"$vHubNr".mac \
- -c "$vmware_etc_dir"/vmnet"$vHubNr"/nat/nat.conf >/dev/null 2>&1
- [ "$?" -eq 0 ] && ok || fail
- fi
- fi
- vHubNr=$(($vHubNr + 1))
- done
- fi
- touch /var/lock/subsys/"$subsys"
- ;;
-
- stop)
- if [ "`countVMs`" -gt 0 ]; then
- echo 'At least one instance of VMware Workstation is still running.'
- echo 'Please stop all running instances of VMware Workstation first.'
- echo
- fi
- if [ ! -f /var/lock/subsys/"$subsys" ]; then
- msg_not_running "VMware Workstation networking"
- fi
- # Try to unload parport_pc. Failure is allowed as it does not exist
- # on kernels 2.0, and some other process could be using it.
- /sbin/modprobe -r parport_pc >/dev/null 2>&1
- if [ "$VM_NETWORKING" = "yes" ]; then
- # NB: must kill off processes using vmnet before
- # unloading module
- vHubNr=0
- while [ $vHubNr -lt 9 ]; do
- eval 'interface="$VNET_'"$vHubNr"'_INTERFACE"'
- eval 'hostaddr="$VNET_'"$vHubNr"'_HOSTONLY_HOSTADDR"'
- eval 'netmask="$VNET_'"$vHubNr"'_HOSTONLY_NETMASK"'
- if [ -n "$interface" ]; then
- # Disconnect a physical host ethernet interface from a virtual ethernet hub
- msg_stopping "Bridged networking on /dev/vmnet$vHubNr"
- busy
- vmware_stop_pidfile /var/run/"$bridge"-"$vHubNr".pid
- [ "$?" -eq 0 ] && ok || fail
- elif [ -n "$hostaddr" -a -n "$netmask" ]; then
- # Stop a DHCP server on a private IP network
- msg_stopping "DHCP server on /dev/vmnet$vHubNr"
- busy
- vmware_stop_pidfile /var/run/"$dhcpd"-"vmnet$vHubNr".pid
- [ "$?" -eq 0 ] && ok || fail
- eval 'samba="$VNET_'"$vHubNr"'_SAMBA"'
- if [ "$samba" = "yes" ]; then
- # Stop a SMB share server on a private IP network
- msg_stopping 'SMB share server on /dev/vmnet'"$vHubNr"
- busy
- vmware_stop_pidfile /var/run/"$smbd"-'vmnet'"$vHubNr".pid
- [ "$?" -eq 0 ] && ok || fail
- # Stop a SMB name server on a private IP network
- msg_stopping 'SMB name server on /dev/vmnet'"$vHubNr"
- busy
- vmware_stop_pidfile /var/run/"$nmbd"-'vmnet'"$vHubNr".pid
- [ "$?" -eq 0 ] && ok || fail
- fi
- eval 'nat="$VNET_'"$vHubNr"'_NAT"'
- if [ "$nat" = "yes" ]; then
- # Stop the NAT network user service
- msg_stopping 'NAT networking on /dev/vmnet'"$vHubNr"
- busy
- vmware_stop_pidfile /var/run/"$natd"-"$vHubNr".pid
- [ "$?" -eq 0 ] && ok || fail
- fi
- msg_stopping 'Host-only networking on /dev/vmnet'"$vHubNr"
- busy
- vmware_stop_hostonly 'vmnet'"$vHubNr" "$hostaddr" "$netmask"
- [ "$?" -eq 0 ] && ok || fail
-
- fi
- vHubNr=$(($vHubNr + 1))
- done
- msg_stopping 'Virtual machine monitor'
- busy
- if /sbin/lsmod | grep -q ^"$driver"; then
- /sbin/rmmod "$driver"
- fi
- [ "$?" -eq "0" ] && ok || fail
- msg_stopping 'Virtual ethernet'
- busy
- if /sbin/lsmod | grep -q ^"$vnet"; then
- /sbin/rmmod "$vnet"
- fi
- [ "$?" -eq "0" ] && ok || fail
- fi
- rm -f /var/lock/subsys/"$subsys"
- ;;
- status)
- if [ "`countVMs`" -gt 0 ]; then
- echo 'At least one instance of VMware Workstation is still running.'
- echo
- fi
- if [ "$VM_NETWORKING" = "yes" ]; then
- status "$bridge"
- status "$dhcpd"
- status "$netifup"
- fi
- if [ "$VM_NETWORKING" = "yes" ]; then
- echo -n "Module $vnet "
- /sbin/modprobe "$vnet" >/dev/null 2>&1 && echo installed || echo "not installed"
- fi
- ;;
- restart)
- "$0" stop && "$0" start
- ;;
- *)
- echo "Usage: `basename "$0"` {start|stop|status|restart}"
- exit 3
-esac
-
-exit 0
-# TODO:
-# - update to 2.0.4 (93057) - fixes CVE-2008-2098 and CVE-2008-2099
-# this requires new/fixed version of vmware-any-any-update to work
-# with current kernels
-#
# Conditional build:
%bcond_without dist_kernel # without distribution kernel
%bcond_without kernel # don't build kernel modules
%bcond_without userspace # don't build userspace utilities
%bcond_with internal_libs # internal libs stuff
%bcond_with verbose # verbose build (V=1)
-#
-%include /usr/lib/rpm/macros.perl
%if %{without kernel}
%undefine with_dist_kernel
%ifarch %{x8664}
%undefine with_userspace
%endif
-#
-%define ver 2.0.3
-%define buildid 80004
-%define urel 117d
-%define ccver %(rpm -q --qf '%{V}' gcc)
-%define _rel 0.14
-#
+
+%define ver 3.0.0
+%define buildid 203739
+%define rel 0.1
+
+# point to some working url
+%define download_url %{nil}
+
Summary: VMware player
Summary(pl.UTF-8): VMware player - wirtualna platforma dla stacji roboczej
Name: VMware-player
Version: %{ver}.%{buildid}
-Release: %{_rel}
+Release: %{rel}
License: custom, non-distributable
Group: Applications/Emulators
-Source0: http://download3.vmware.com/software/vmplayer/%{name}-%{ver}-%{buildid}.i386.tar.gz
-# NoSource0-md5:
+# https://www.vmware.com/go/downloadplayer/
+Source0: %{download_url}VMware-Player-%{ver}-%{buildid}.i386.bundle
+# NoSource0-md5: 1c273da70347a381dc685b5fdf922e7d
NoSource: 0
-Source1: http://download3.vmware.com/software/vmplayer/%{name}-%{ver}-%{buildid}.x86_64.tar.gz
-# NoSource1-md5:
+Source1: %{download_url}VMware-Player-%{ver}-%{buildid}.x86_64.bundle
+# NoSource1-md5: cf8ac6a75e4fd51a8c9c527a594f5ffc
NoSource: 1
-Source2: http://vmkernelnewbies.googlegroups.com/web/vmware-any-any-update%{urel}.tar.gz
-# Source2-md5: 730ef7124e03883fa5e30614b888c9d4
-#Source2: http://rtr.ca/vmware-2.6.24/vmware-any-any-update%{urel}.tgz
-# original any-any: http://knihovny.cvut.cz/ftp/pub/vmware/vmware-any-any-update%{urel}.tar.gz
-Source3: %{name}-vmnet.conf
-Source4: %{name}.png
-Source5: %{name}.desktop
-Source6: %{name}-nat.conf
-Source7: %{name}-dhcpd.conf
-Source8: %{name}.init
-Patch0: %{name}-Makefile.patch
-Patch1: %{name}-run_script.patch
-Patch2: VMware-player-vmnet.patch
-# patch below is included only for showing differences between 115 and 115a and not used for patching
-Patch100: vmware-any-any-update115-to-115a.patch
+Patch0: installer.patch
URL: http://www.vmware.com/
-# http://securitytracker.com/alerts/2008/Oct/1020991.html
-BuildRequires: security(VMSA-2008-0016)
%{?with_dist_kernel:BuildRequires: kernel%{_alt_kernel}-module-build >= 3:2.6.7}
-BuildRequires: libstdc++-devel
-BuildRequires: rpm-perlprov
BuildRequires: rpmbuild(macros) >= 1.268
BuildRequires: sed >= 4.0
Requires: libgnomecanvasmm
Requires: libview >= 0.5.5-2
Requires: openssl >= 0.9.7
-Requires(post,postun): desktop-file-utils
ExclusiveArch: %{ix86} %{x8664}
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
%description networking -l pl.UTF-8
Narzędzia VMware do obsługi sieci.
+%package -n kernel%{_alt_kernel}-misc-vmci
+Summary: VMware Virtual Machine Communication Interface (VMCI)
+Summary(pl.UTF-8): VMCI (Virtual Machine Communication Interface) - interfejs komunikacyjny VMware
+Release: %{rel}@%{_kernel_ver_str}
+Group: Base/Kernel
+Requires(post,postun): /sbin/depmod
+Requires: dev >= 2.9.0-7
+%if %{with dist_kernel}
+%requires_releq_kernel
+Requires(postun): %releq_kernel
+%endif
+
+%description -n kernel%{_alt_kernel}-misc-vmci
+Linux kernel module acting as VMware Virtual Machine Communication
+Interface (VMCI).
+
+%description -n kernel%{_alt_kernel}-misc-vmci -l pl.UTF-8
+Moduł jądra Linuksa będący interfejsem komunikacyjnym VMware (VMCI -
+Virtual Machine Communication Interface).
+
+%package -n kernel%{_alt_kernel}-misc-vmblock
+Summary: Kernel module for VMware Player
+Summary(pl.UTF-8): Moduł jądra dla VMware Player
+Release: %{rel}@%{_kernel_ver_str}
+Group: Base/Kernel
+Requires(post,postun): /sbin/depmod
+Requires: dev >= 2.9.0-7
+%if %{with dist_kernel}
+%requires_releq_kernel
+Requires(postun): %releq_kernel
+%endif
+
+%description -n kernel%{_alt_kernel}-misc-vmblock
+Kernel modules for VMware Player - vmblock.
+
+%description -n kernel%{_alt_kernel}-misc-vmblock -l pl.UTF-8
+Moduły jądra dla VMware Player - vmblock.
+
%package -n kernel%{_alt_kernel}-misc-vmmon
Summary: Kernel module for VMware Player
Summary(pl.UTF-8): Moduł jądra dla VMware Player
-Release: %{_rel}@%{_kernel_ver_str}
+Release: %{rel}@%{_kernel_ver_str}
Group: Base/Kernel
Requires(post,postun): /sbin/depmod
Requires: dev >= 2.9.0-7
%requires_releq_kernel
Requires(postun): %releq_kernel
%endif
-Provides: kernel(vmmon) = %{version}-%{_rel}
%description -n kernel%{_alt_kernel}-misc-vmmon
Kernel modules for VMware Player - vmmon.
%package -n kernel%{_alt_kernel}-misc-vmnet
Summary: Kernel module for VMware Player
Summary(pl.UTF-8): Moduł jądra dla VMware Player
-Release: %{_rel}@%{_kernel_ver_str}
+Release: %{rel}@%{_kernel_ver_str}
Group: Base/Kernel
Requires(post,postun): /sbin/depmod
Requires: dev >= 2.9.0-7
%requires_releq_kernel
Requires(postun): %releq_kernel
%endif
-Provides: kernel(vmnet) = %{version}-%{_rel}
%description -n kernel%{_alt_kernel}-misc-vmnet
Kernel modules for VMware Player - vmnet.
%description -n kernel%{_alt_kernel}-misc-vmnet -l pl.UTF-8
Moduły jądra dla VMware Player - vmnet.
-%prep
-%setup -q -n vmware-player-distrib -a2
-cd vmware-any-any-update%{urel}
-tar xf vmmon.tar
-tar xf vmnet.tar
+%package -n kernel%{_alt_kernel}-misc-vsock
+Summary: VMware Virtual Socket Family support
+Summary(pl.UTF-8): Obsługa Virtual Socket Family - rodziny gniazd wirtualnych VMware
+Release: %{rel}@%{_kernel_ver_str}
+Group: Base/Kernel
+Requires(post,postun): /sbin/depmod
+Requires: dev >= 2.9.0-7
+%if %{with dist_kernel}
+%requires_releq_kernel
+Requires(postun): %releq_kernel
+%endif
+Requires: kernel%{_alt_kernel}-misc-vmci = %{version}-%{rel}@%{_kernel_ver_str}
-%patch2 -p2
+%description -n kernel%{_alt_kernel}-misc-vsock
+Linux kernel module supporting VMware Virtual Socket Family.
-# hack until new any-any-update version available
-sed -i -e 's/#define.*VMMON_VERSION.*/#define VMMON_VERSION (167 << 16 | 0)/g' vmmon-only/include/iocontrols.h
+%description -n kernel%{_alt_kernel}-misc-vsock -l pl.UTF-8
+Moduł jądra Linuksa obsługujący rodzinę gniazd wirtualnych VMware
+(Virtual Socket Family).
-cp -a vmmon-only{,.clean}
-cp -a vmnet-only{,.clean}
-sed -e 's/filter x86_64%/filter x86_64% amd64% ia64%/' \
- -i vmnet-only.clean/Makefile.kernel
-cd -
+%prep
+%setup -qcT
+%ifarch %{ix86}
+export SOURCE=%{SOURCE0}
+%endif
+%ifarch %{x8664}
+export SOURCE=%{SOURCE1}
+%endif
+# extract installer shell blob
+%{__sed} -ne '1,/^exit/{s,$0,$SOURCE,;p}' $SOURCE > install.sh
+%{__sed} -i -e "2iSOURCE=$SOURCE" install.sh
%patch0 -p1
-%patch1 -p1
-
-# will never use these
-rm -f lib/libconf/lib/gtk-2.0/2.10.0/engines/*.a
-rm -f lib/libconf/lib/gtk-2.0/2.10.0/immodules/*.a
-rm -f lib/libconf/lib/gtk-2.0/2.10.0/loaders/*.a
-rm -f lib/libconf/lib/pango/1.5.0/modules/*.a
+chmod a+x install.sh
+
+./install.sh --extract bundles
+
+cd bundles/vmware-player-app/lib/modules
+%{__tar} xf source/vmblock.tar
+%{__tar} xf source/vmci.tar
+%{__tar} xf source/vmmon.tar
+%{__tar} xf source/vmnet.tar
+%{__tar} xf source/vsock.tar
+mv vmmon-only/linux/driver.c{,.dist}
+mv vmnet-only/hub.c{,.dist}
+mv vmnet-only/driver.c{,.dist}
+rm -rf binary # unusable
+cd -
-%{__sed} -i -e 's#/build/.*/libconf/#%{_libdir}/vmware/libconf/#' \
- lib/libconf/etc/gtk-2.0/{gdk-pixbuf.loaders,gtk.immodules} \
- lib/libconf/etc/pango/{pango.modules,pangorc}
+find '(' -name '*~' -o -name '*.orig' ')' -print0 | xargs -0 -r -l512 rm -f
+
+%if 0
+# build our local install.sh
+# grab offsets
+%{__sed} -ne "/^### Offsets ###/,/^### End offsets/{s,\$0,\$SOURCE,;p}" blob.sh > install.sh
+# grab product name
+%{__grep} ^PRODUCT_NAME= blob.sh >> install.sh
+# install set_lengths function
+%{__sed} -ne "/^set_lengths/,/^}/p" blob.sh >> install.sh
+cat <<'EOF' >> install.sh
+set_lengths $SOURCE
+dd if="$SOURCE" ibs=$LAUNCHER_SIZE obs=1024 skip=1 | tar xz
+dd if="$SOURCE" ibs=$SKIP_BYTES obs=1024 skip=1 | tar xz
+EOF
+sh -x install.sh
-# typo?
-%{__sed} -i -e 's#/etc/pango/pango/pangox.aliases#/etc/pango/pangox.aliases#' \
- lib/libconf/etc/pango/pangorc
+sed -e "s,@@VMWARE_INSTALLER@,$(PWD)/install," install/vmware-installer/bootstrap > install/bootstrap
+. install/bootstrap
+%endif
%build
-sed -i 's:vm_db_answer_LIBDIR:VM_LIBDIR:g;s:vm_db_answer_BINDIR:VM_BINDIR:g' bin/vmplayer
+%if %{with kernel}
+cd bundles/vmware-player-app/lib/modules
+
+%build_kernel_modules -C vmblock-only -m vmblock SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version}
+%build_kernel_modules -C vmci-only -m vmci SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version}
+%build_kernel_modules -C vmmon-only -m vmmon SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version} <<'EOF'
+if grep -q "^CONFIG_PREEMPT_RT=y$" o/.config; then
+ sed -e '/pollQueueLock/s/SPIN_LOCK_UNLOCKED/SPIN_LOCK_UNLOCKED(pollQueueLock)/' \
+ -e '/timerLock/s/SPIN_LOCK_UNLOCKED/SPIN_LOCK_UNLOCKED(timerLock)/' \
+ linux/driver.c.dist > linux/driver.c
+else
+ cat linux/driver.c.dist > linux/driver.c
+fi
+EOF
-cd vmware-any-any-update%{urel}
-chmod u+w ../lib/bin/vmware-vmx ../lib/bin-debug/vmware-vmx ../bin/vmnet-bridge
+%build_kernel_modules -C vmnet-only -m vmnet SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version} <<'EOF'
+if grep -q "^CONFIG_PREEMPT_RT=y$" o/.config; then
+ sed -e 's/SPIN_LOCK_UNLOCKED/SPIN_LOCK_UNLOCKED(vnetHubLock)/' \
+ hub.c.dist > hub.c
+ sed -e 's/RW_LOCK_UNLOCKED/RW_LOCK_UNLOCKED(vnetPeerLock)/' \
+ driver.c.dist > driver.c
+else
+ cat hub.c.dist > hub.c
+ cat driver.c.dist > driver.c
+fi
+EOF
-%if %{with kernel}
-rm -rf built
-mkdir built
-
-for mod in vmmon vmnet ; do
- for cfg in %{?with_dist_kernel:dist}%{!?with_dist_kernel:nondist}; do
- if [ ! -r "%{_kernelsrcdir}/config-$cfg" ]; then
- exit 1
- fi
- rm -rf $mod-only
- cp -a $mod-only.clean $mod-only
- cd $mod-only
- install -d o/include/linux
- ln -sf %{_kernelsrcdir}/config-$cfg o/.config
- ln -sf %{_kernelsrcdir}/Module.symvers-$cfg o/Module.symvers
- ln -sf %{_kernelsrcdir}/include/linux/autoconf-$cfg.h o/include/linux/autoconf.h
- if grep -q "^CONFIG_PREEMPT_RT=y$" o/.config; then
- sed -e '/pollQueueLock/s/SPIN_LOCK_UNLOCKED/SPIN_LOCK_UNLOCKED(pollQueueLock)/' \
- -e '/timerLock/s/SPIN_LOCK_UNLOCKED/SPIN_LOCK_UNLOCKED(timerLock)/' \
- -i ../vmmon-only/linux/driver.c
- sed -e 's/SPIN_LOCK_UNLOCKED/SPIN_LOCK_UNLOCKED(vnetHubLock)/' \
- -i ../vmnet-only/hub.c
- sed -e 's/RW_LOCK_UNLOCKED/RW_LOCK_UNLOCKED(vnetPeerLock)/' \
- -i ../vmnet-only/driver.c
- fi
- %if %{with dist_kernel}
- %{__make} -j1 -C %{_kernelsrcdir} O=$PWD/o prepare scripts
- %else
- install -d o/include/config
- touch o/include/config/MARKER
- ln -sf %{_kernelsrcdir}/scripts o/scripts
- %endif
- %{__make} -C %{_kernelsrcdir} modules \
- VMWARE_VER=VME_V5 \
- SRCROOT=$PWD \
- M=$PWD O=$PWD/o \
- VM_KBUILD=26 \
- %{?with_verbose:V=1} \
- VM_CCVER=%{ccver}
- mv -f $mod.ko ../built/$mod-$cfg.ko
- cd -
- done
-done
+cp -a vmci-only/Module.symvers vsock-only
+%build_kernel_modules -C vsock-only -m vsock SRCROOT=$PWD VM_KBUILD=26 VM_CCVER=%{cc_version} -c
%endif
%install
rm -rf $RPM_BUILD_ROOT
-
-%if %{with userspace}
-install -d \
- $RPM_BUILD_ROOT%{_sysconfdir}/vmware \
- $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/{nat,dhcpd} \
- $RPM_BUILD_ROOT%{_bindir} \
- $RPM_BUILD_ROOT%{_libdir}/vmware/{bin,lib,share/pixmaps} \
- $RPM_BUILD_ROOT%{_mandir} \
- $RPM_BUILD_ROOT%{_pixmapsdir} \
- $RPM_BUILD_ROOT%{_iconsdir}/hicolor \
- $RPM_BUILD_ROOT%{_desktopdir} \
- $RPM_BUILD_ROOT/etc/rc.d/init.d \
- $RPM_BUILD_ROOT/var/run/vmware
-%endif
-
%if %{with kernel}
-install -d $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}{,smp}/misc
-
-cd vmware-any-any-update%{urel}/built
-install vmmon* $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/vmmon.ko
-install vmnet* $RPM_BUILD_ROOT/lib/modules/%{_kernel_ver}/misc/vmnet.ko
-cd -
-%endif
-
-%if %{with userspace}
-install %{SOURCE8} $RPM_BUILD_ROOT/etc/rc.d/init.d/vmnet
-install %{SOURCE3} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet.conf
-install %{SOURCE4} $RPM_BUILD_ROOT%{_pixmapsdir}
-install %{SOURCE5} $RPM_BUILD_ROOT%{_desktopdir}
-install %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/nat/nat.conf
-install %{SOURCE7} $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.conf
-
-touch $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.leases
-touch $RPM_BUILD_ROOT%{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.leases~
-
-cp -a lib/share/icons/hicolor/* $RPM_BUILD_ROOT%{_iconsdir}/hicolor
-
-install lib/share/pixmaps/* $RPM_BUILD_ROOT%{_libdir}/vmware/share/pixmaps
-install doc/EULA $RPM_BUILD_ROOT%{_libdir}/vmware/share/EULA.txt
-
-install bin/*-* $RPM_BUILD_ROOT%{_bindir}
-install lib/bin/vmware-vmx $RPM_BUILD_ROOT%{_libdir}/vmware/bin
-install lib/lib/libvmwarebase.so.0/libvmwarebase.so.0 $RPM_BUILD_ROOT%{_libdir}
-install lib/lib/libvmwareui.so.0/libvmwareui.so.0 $RPM_BUILD_ROOT%{_libdir}
-
-cp -r lib/{bin-debug,config,help*,messages,xkeymap} \
- $RPM_BUILD_ROOT%{_libdir}/vmware
-
-cat > $RPM_BUILD_ROOT%{_sysconfdir}/vmware/locations <<EOF
-VM_BINDIR=%{_bindir}
-VM_LIBDIR=%{_libdir}/vmware
-EOF
-
-%if %{with internal_libs}
-install bin/vmplayer $RPM_BUILD_ROOT%{_bindir}
-install lib/bin/vmplayer $RPM_BUILD_ROOT%{_libdir}/vmware/bin
-cp -a lib/lib/* $RPM_BUILD_ROOT%{_libdir}/vmware/lib
-cp -a lib/libconf $RPM_BUILD_ROOT%{_libdir}/vmware
-%else
-install lib/bin/vmplayer $RPM_BUILD_ROOT%{_bindir}
-install -d $RPM_BUILD_ROOT%{_libdir}/vmware/lib/lib{crypto,ssl}.so.0.9.7
-ln -s %{_libdir}/libcrypto.so.0.9.7 $RPM_BUILD_ROOT%{_libdir}/vmware/lib/libcrypto.so.0.9.7/libcrypto.so.0.9.7
-ln -s %{_libdir}/libssl.so.0.9.7 $RPM_BUILD_ROOT%{_libdir}/vmware/lib/libssl.so.0.9.7/libssl.so.0.9.7
-%endif
-
-# remove not needed files
-rm -rf $RPM_BUILD_ROOT%{_bindir}/vmware-{config,uninstall}.pl $RPM_BUILD_ROOT%{_iconsdir}/hicolor/index.theme
+%install_kernel_modules -m bundles/vmware-player-app/lib/modules/vmblock-only/vmblock -d misc
+%install_kernel_modules -m bundles/vmware-player-app/lib/modules/vmci-only/vmci -d misc
+%install_kernel_modules -m bundles/vmware-player-app/lib/modules/vmmon-only/vmmon -d misc
+%install_kernel_modules -m bundles/vmware-player-app/lib/modules/vmnet-only/vmnet -d misc
+%install_kernel_modules -m bundles/vmware-player-app/lib/modules/vsock-only/vsock -d misc
%endif
%clean
rm -rf $RPM_BUILD_ROOT
-%post
-%update_icon_cache hicolor
-%if %{with internal_libs}
-gdk-pixbuf-query-loaders %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0/loaders/*.so \
- > %{_libdir}/vmware/libconf/etc/gtk-2.0/gdk-pixbuf.loaders
-gtk-query-immodules-2.0 %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0/immodules/*.so \
- > %{_libdir}/vmware/libconf/etc/gtk-2.0/gtk.immodules
-pango-querymodules %{_libdir}/vmware/libconf/lib/pango/1.5.0/modules/*.so \
- > %{_libdir}/vmware/libconf/etc/pango/pango.modules
-%endif
+%post -n kernel%{_alt_kernel}-misc-vmblock
+%depmod %{_kernel_ver}
-%postun
-%update_icon_cache hicolor
+%postun -n kernel%{_alt_kernel}-misc-vmblock
+%depmod %{_kernel_ver}
-%post networking
-/sbin/chkconfig --add vmnet
-%service vmnet restart "VMware networking service"
+%post -n kernel%{_alt_kernel}-misc-vmci
+%depmod %{_kernel_ver}
-%preun networking
-if [ "$1" = "0" ]; then
- %service vmnet stop
- /sbin/chkconfig --del vmnet
-fi
+%postun -n kernel%{_alt_kernel}-misc-vmci
+%depmod %{_kernel_ver}
%post -n kernel%{_alt_kernel}-misc-vmmon
%depmod %{_kernel_ver}
%postun -n kernel%{_alt_kernel}-misc-vmnet
%depmod %{_kernel_ver}
-%if %{with userspace}
-%files
-%defattr(644,root,root,755)
-%doc doc/* lib/configurator/vmnet-{dhcpd,nat}.conf
-%dir %{_sysconfdir}/vmware
-%{_sysconfdir}/vmware/locations
-%attr(755,root,root) %{_bindir}/vmplayer
-%attr(755,root,root) %{_bindir}/vmware-acetool
-%attr(755,root,root) %{_bindir}/vm-support
-%attr(755,root,root) %{_libdir}/libvmwarebase.so.*
-%attr(755,root,root) %{_libdir}/libvmwareui.so.*
-%dir %{_libdir}/vmware
-%dir %{_libdir}/vmware/bin
-# warning: SUID !!!
-%attr(4755,root,root) %{_libdir}/vmware/bin/vmware-vmx
-%dir %{_libdir}/vmware/lib
-%{_libdir}/vmware/config
-%if %{with internal_libs}
-%attr(755,root,root) %{_libdir}/vmware/bin/vmplayer
-%attr(755,root,root) %{_libdir}/vmware/lib/lib*
-%attr(755,root,root) %{_libdir}/vmware/lib/wrapper-gtk24.sh
-
-%dir %{_libdir}/vmware/libconf
-%dir %{_libdir}/vmware/libconf/etc
-%{_libdir}/vmware/libconf/etc/fonts
-%{_libdir}/vmware/libconf/etc/gtk-2.0
-%{_libdir}/vmware/libconf/etc/pango
-%dir %{_libdir}/vmware/libconf/lib
-%dir %{_libdir}/vmware/libconf/lib/gtk-2.0
-%dir %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0
-%dir %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0/engines
-%attr(755,root,root) %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0/engines/*.so
-%dir %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0/immodules
-%attr(755,root,root) %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0/immodules/*.so
-%dir %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0/loaders
-%attr(755,root,root) %{_libdir}/vmware/libconf/lib/gtk-2.0/2.10.0/loaders/*.so
-%dir %{_libdir}/vmware/libconf/lib/pango
-%dir %{_libdir}/vmware/libconf/lib/pango/1.5.0
-%dir %{_libdir}/vmware/libconf/lib/pango/1.5.0/modules
-%attr(755,root,root) %{_libdir}/vmware/libconf/lib/pango/1.5.0/modules/*.so
-%else
-# package old openssl (buggy but needed to work)
-%dir %{_libdir}/vmware/lib/libcrypto.so.0.9.7
-%attr(755,root,root) %{_libdir}/vmware/lib/libcrypto.so.0.9.7/libcrypto.so.0.9.7
-%dir %{_libdir}/vmware/lib/libssl.so.0.9.7
-%attr(755,root,root) %{_libdir}/vmware/lib/libssl.so.0.9.7/libssl.so.0.9.7
-%endif
-%dir %{_libdir}/vmware/messages
-%lang(en) %{_libdir}/vmware/messages/en
-%lang(ja) %{_libdir}/vmware/messages/ja
-%{_libdir}/vmware/share
-%{_libdir}/vmware/xkeymap
-%attr(1777,root,root) %dir /var/run/vmware
-%{_iconsdir}/hicolor/*/*/*.png
-%{_iconsdir}/hicolor/*/*/*.svg
-%{_pixmapsdir}/*.png
-%{_desktopdir}/%{name}.desktop
-
-%files debug
-%defattr(644,root,root,755)
-%dir %{_libdir}/vmware/bin-debug
-# warning: SUID !!!
-%attr(4755,root,root) %{_libdir}/vmware/bin-debug/vmware-vmx
+%post -n kernel%{_alt_kernel}-misc-vsock
+%depmod %{_kernel_ver}
-%files help
-%defattr(644,root,root,755)
-%{_libdir}/vmware/help*
+%postun -n kernel%{_alt_kernel}-misc-vsock
+%depmod %{_kernel_ver}
-%files networking
+%if %{with kernel}
+%files -n kernel%{_alt_kernel}-misc-vmblock
%defattr(644,root,root,755)
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vmware/vmnet.conf
-%attr(754,root,root) /etc/rc.d/init.d/vmnet
-%attr(755,root,root) %{_bindir}/vmnet-bridge
-%attr(755,root,root) %{_bindir}/vmnet-detect
-%attr(755,root,root) %{_bindir}/vmnet-dhcpd
-%attr(755,root,root) %{_bindir}/vmnet-natd
-%attr(755,root,root) %{_bindir}/vmnet-netifup
-%attr(755,root,root) %{_bindir}/vmnet-sniffer
-%attr(755,root,root) %{_bindir}/vmware-ping
-%dir %{_sysconfdir}/vmware/vmnet8
-%dir %{_sysconfdir}/vmware/vmnet8/dhcpd
-%dir %{_sysconfdir}/vmware/vmnet8/nat
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.conf
-%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/vmware/vmnet8/nat/nat.conf
-%verify(not md5 mtime size) %{_sysconfdir}/vmware/vmnet8/dhcpd/dhcpd.leases*
+/lib/modules/%{_kernel_ver}/misc/vmblock.ko*
-%endif
+%files -n kernel%{_alt_kernel}-misc-vmci
+%defattr(644,root,root,755)
+/lib/modules/%{_kernel_ver}/misc/vmci.ko*
-%if %{with kernel}
%files -n kernel%{_alt_kernel}-misc-vmmon
%defattr(644,root,root,755)
/lib/modules/%{_kernel_ver}/misc/vmmon.ko*
%defattr(644,root,root,755)
/lib/modules/%{_kernel_ver}/misc/vmnet.ko*
+%files -n kernel%{_alt_kernel}-misc-vsock
+%defattr(644,root,root,755)
+/lib/modules/%{_kernel_ver}/misc/vsock.ko*
%endif
--- /dev/null
+--- VMware-player-3.0.0.203739/install.sh 2009-12-12 18:04:16.883512711 +0200
++++ VMware-player-3.0.0.203739/install.sh 2009-12-12 17:57:25.533346342 +0200
+@@ -18,7 +18,7 @@
+ fi
+
+ # dash flips out of $opts is quoted, so don't.
+- exec /usr/bin/env bash $opts "$SOURCE" "$@"
++ exec /usr/bin/env bash $opts "$0" "$@"
+ echo "Unable to restart with bash shell"
+ exit 1
+ fi
+@@ -85,7 +85,7 @@
+ fi
+ }
+
+-trap on_exit EXIT
++#trap on_exit EXIT
+ trap "" USR1
+
+ # Retrives and sets the various lengths that are extracted from the
+@@ -182,7 +182,7 @@
+ # Returns:
+ # None
+ extract_self() {
+- VMIS_TEMP=`mktemp -d /tmp/vmis.XXXXXX`
++ VMIS_TEMP=$(pwd)
+ local file="$SOURCE"
+ local filter=""
+ local bootstrapper="$PREPAYLOAD"/bootstrapper-gtk
+@@ -213,7 +213,7 @@
+ }
+
+ extract_prepayload() {
+- PREPAYLOAD=`mktemp -d /tmp/vmis.XXXXXX`
++ PREPAYLOAD=$(pwd)
+ local file="$SOURCE"
+
+ if [ ! -d "$PREPAYLOAD" ]; then
+@@ -568,6 +568,7 @@
+ esac
+ fi
+
++ if [ ! -d install ]; then
+ if ! set_lengths "$SOURCE"; then
+ echo "Unable to extract lengths from bundle."
+ exit 1
+@@ -575,6 +576,9 @@
+
+ extract_prepayload
+ extract_self
++ else
++ VMIS_TEMP=$(pwd)
++ fi
+
+ install "$VMIS_TEMP" "$help" "$fullpath" "$extract" "$@"
+ }
+++ /dev/null
-diff -Nru vmware-any-any-update115/vmmon-only/include/iocontrols_compat.h vmware-any-any-update115a/vmmon-only/include/iocontrols_compat.h
---- vmware-any-any-update115/vmmon-only/include/iocontrols_compat.h 2007-07-23 11:59:47.000000000 +0200
-+++ vmware-any-any-update115a/vmmon-only/include/iocontrols_compat.h 2007-12-01 16:55:10.000000000 +0100
-@@ -15,7 +15,7 @@
- #define VMMON_VERSION_V5 (116 << 16 | 0)
- #define VMMON_VERSION_V55 (137 << 16 | 0)
- #define VMMON_VERSION_S1B1 (138 << 16 | 0)
--#define VMMON_VERSION_V6 (161 << 16 | 0)
-+#define VMMON_VERSION_V6 (167 << 16 | 0)
-
- /*
- * Limit structure for CREATE_VM
-diff -Nru vmware-any-any-update115/vmmon-only/include/vcpuset.h vmware-any-any-update115a/vmmon-only/include/vcpuset.h
---- vmware-any-any-update115/vmmon-only/include/vcpuset.h 2007-07-22 13:21:17.000000000 +0200
-+++ vmware-any-any-update115a/vmmon-only/include/vcpuset.h 2007-12-01 16:52:11.000000000 +0100
-@@ -71,7 +71,7 @@
- #define ffs(x) ffs_x86_64(x)
-
- #elif defined MODULE
-- #include "asm/bitops.h"
-+ #include "linux/bitops.h"
- #elif defined __APPLE__ && defined KERNEL
- /*
- * XXXMACOS An ugly hack to resolve redefinition of PAGE_ defines
-Files vmware-any-any-update115/vmmon.tar and vmware-any-any-update115a/vmmon.tar differ