tuntaposx 20111101
Closes Homebrew/homebrew#16311. Signed-off-by: Adam Vandenberg <flangy@gmail.com>
This commit is contained in:
parent
acba703654
commit
2b4bb62988
1 changed files with 47 additions and 0 deletions
47
Formula/tuntap.rb
Normal file
47
Formula/tuntap.rb
Normal file
|
@ -0,0 +1,47 @@
|
|||
require 'formula'
|
||||
|
||||
def kext_prefix
|
||||
prefix/'Library/Extensions'
|
||||
end
|
||||
|
||||
class Tuntap < Formula
|
||||
homepage 'http://tuntaposx.sourceforge.net/'
|
||||
url 'git://git.code.sf.net/p/tuntaposx/code', :tag => 'release_20111101'
|
||||
version '20111101'
|
||||
|
||||
def install
|
||||
ENV.j1 # to avoid race conditions (can't open: ../tuntap.o)
|
||||
cd 'tuntap' do
|
||||
system "make"
|
||||
kext_prefix.install "tun.kext", "tap.kext"
|
||||
prefix.install "startup_item/tap", "startup_item/tun"
|
||||
end
|
||||
end
|
||||
|
||||
def caveats
|
||||
message = <<-EOS.undent
|
||||
In order for TUN/TAP network devices to work, the tun/tap kernel extensions
|
||||
must be installed by the root user:
|
||||
|
||||
sudo cp -pR #{kext_prefix}/tap.kext /Library/Extensions/
|
||||
sudo cp -pR #{kext_prefix}/tun.kext /Library/Extensions/
|
||||
sudo chown -R root:wheel /Library/Extensions/tap.kext
|
||||
sudo chown -R root:wheel /Library/Extensions/tun.kext
|
||||
sudo touch /Library/Extensions/
|
||||
|
||||
To load the extensions at startup, you have to install those scripts too:
|
||||
|
||||
sudo cp -pR #{prefix}/tap /Library/StartupItems/
|
||||
sudo cp -pR #{prefix}/tun /Library/StartupItems/
|
||||
|
||||
If upgrading from a previous version of tuntap, the old kernel extension
|
||||
will need to be unloaded before performing the steps listed above. First,
|
||||
check that no tunnel is being activated, disconnect them all and then unload
|
||||
the kernel extension:
|
||||
|
||||
sudo kextunload -b foo.tun
|
||||
sudo kextunload -b foo.tap
|
||||
|
||||
EOS
|
||||
end
|
||||
end
|
Loading…
Reference in a new issue