This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "IPFire 2.x development tree".
The branch, master has been updated via 39017f76e77fb77fd47c17cc89da69f3b3f0e946 (commit) via b0dcbdeae448d3fc852c9ee9a4e5e6b9ab75fd34 (commit) via 3529923589dbf8824543920f27fc901fcbab67c4 (commit) via 1092a072fe30ed11535b0f2b2e29b8b0b9fdf541 (commit) via d06da205068f4261fd6d5864ec4eb38c6fcee034 (commit) via 1854dfab2a7eae43135ccd11037e51c8585877d0 (commit) via 107d282894cbec55ed91126fc9a7314c26ff883b (commit) via 1074ce9044bd51e021a7a0ffa5c720e8d5e278c8 (commit) via e716d1983629fcedf6a79bdb571a28fe1acf1d86 (commit) via 994bca2bc9c28f3eb97fdc7a3618f4c2045dfdc0 (commit) via b5c30aea896de76accf63a06952809c957419658 (commit) via 18837a6a35f7b4d08aa12432f493f777c8713adb (commit) via 8ba4babb91510aa5473929fc9aa28a4e271301cd (commit) via ea1fa596326e2817d23e2282e7c75a45e4afcbdf (commit) via 39b14828cabf647dd505a7f5da956c7bb1f98f9e (commit) via b278daf39894ca17e31f76c7f20e641bee419f66 (commit) via 28162d3293a0b33237fda408a79cfe685dd6693a (commit) via c75f5126071dec23b877875feb8beb2c6c59de46 (commit) via 7c0fce586f18ab3df70de1138f85b5bfc72e1a6e (commit) via 32e754c1b2572ff4d4312c83d0fc72bd791a11af (commit) via 2d20dff23384811c321511e88963c060b2ba4109 (commit) via d4f2fb979aa347d6b819e3d6476162b4ba29f086 (commit) via 7c1d9faf271a1aa8289a8ed16e896d7ed6c519b5 (commit) via 6dd8a471e4c9227221b85babd826ef216bf1b932 (commit) via 9c7da0c6d9adc6020a4815a90f0bb5930d57a97b (commit) via a86240b11ac5d0577e28ce091784402547bbb46b (commit) via 3ea9703e69f3453b147b6b02e8258775d30ee6e9 (commit) via bb4cfcc1bf35790fdbb6c56019ba23a3367465ed (commit) via 5d2c8f5da1d3f0e31ce9c3c274c5e23a8c4d13cb (commit) via e57d2133a3581a78b80412852dfaf68ebcffadc7 (commit) via 4e9d6128997f2b9431b8e5d0543554589029f482 (commit) via 80337f489444572abcc300aaab6c9bfbf721c19d (commit) via 44f8687ba29b06b012a01c36abe51ffdba27287d (commit) via 035f1702efd0626ec0bb2c6e165600c0bb98ef0c (commit) via d175e0b9d30ae78d59460a6891545589826dc628 (commit) via f68b4b661428552dc580ff92714557e74aac765d (commit) via 96fc97868b97435776d87a32ff72589a26677476 (commit) via ec372b7b519dbc85d2713c3d611d55cf87615490 (commit) via 2b56ee99a882897d0ec0c27e0a871556a5b40038 (commit) via b57ca7b660025db8fd40aca9f103228cb2d9e727 (commit) via 7667a59b28cbda3932574ae198011f40ed19fcc5 (commit) via cd7ed8c2e1d2e8fa2087ea9b1374f3a188fd0bfe (commit) via c4fe5fb3aba7f16e015c982f755ff4e6d0f8435f (commit) via 2878d79fde4c34c980f0be1c1b8a36ac867a2dfd (commit) via 65cacf80892b6785b091d56dde56facef5a62a89 (commit) via 9358fb2a8bb468d21c2893c85cd88f1a709c316e (commit) via bd391c18529817c2c94c162756779ea7aeb8277d (commit) via 97ee06c8733fee9cb5fee0181377a36b099cae66 (commit) via 3534ad509882635cb30b28ed28ac8274e14445b2 (commit) via 897d5a7e728f28e25863d12e1e3ed254a30a16bc (commit) via 7c5334e5a563f5d36e1a4c45d26672ab36fba0da (commit) via f9d4d1f7be02ca48d390a5c92b506b0e9ea7233b (commit) via 3693372e08d945a38e900aa9186724f7c9bd655f (commit) via 42e0012dfd9a372b4244af38e1da48e388c7675c (commit) via aee8d1413941782f833d1baa0ac50ec5787cfeac (commit) via 9ccc03bf9dd0ed64ad4bc8e1728c35dae59c55bf (commit) via d4c35e45f81c5e1ad48108b469062eb94cb1657f (commit) via d1bd615e9f10000bcf307e984a78a1ba384231cd (commit) via 6e2ba31bff62dc8eda9450139961cfb3c668240f (commit) via d96c89eb0619c4f4b10ec7724e55f10f84defd2a (commit) via 86525dfc52009003a0976fb8df135ba0808ae121 (commit) via a211938628898c1c9fb590d800884c11e751a89c (commit) via 5861450ef888402d3258f38861ce8f9a7a14c8e7 (commit) via 1c6e776c151eb8d6631f2aa30c5ed22700e9e4a8 (commit) via a830bb67d0896b8b52df5c5963b3961bc37225d3 (commit) via cf174695b3161e94753c3e19eeed100b5dcddd2f (commit) via ea452c11ebe45e586031835591175926889322dd (commit) via a717a7a998a2686b83d86ae02d8b8c8d72d955f9 (commit) via 3f8c9dc5481e0f756a6d4e6a12b8808f6ea1ac19 (commit) via 1fcde2b6d1a3133071670d01a1463ae2d7dd1705 (commit) via 965018f4ff4e032f7ac8734b3a591ad3fafc4a07 (commit) via c7a2cfc817ff9f8524048bffacacded2a24b970b (commit) via b297f5173ba06aef477d8a7bdc7e49cdc4c4f399 (commit) via f99f4293e7ccb913105be165ddf25ea90bf676d4 (commit) via 2444cc97804bbb9874fd2145f596c9d92d540b81 (commit) via 9d85ac3b9362cd97ece5303dea1f95052626848a (commit) via 5520be2f215bcf904d413a77242a0209829ada36 (commit) via 18fe7748e785649097b480ba522ed8835a4e36c1 (commit) via fb27520e252020b1ced0d449a9fa5d7f72f36e70 (commit) via 1e17b47ebca5c17d45668ce23b40e976e81f72cc (commit) via b0ea0466e7164b5394a88b9e785b96a89df33489 (commit) via 29873e9fbb30b8804f2b10671a02e8ee3a18a7d0 (commit) via f97d5ed3524d5016b203c3cac7d4b5e8adb41fb0 (commit) via 599d475a53aa6050014fd1f347f2ace43d955dde (commit) via 64f0c3543d8419a708a2a6c2c50620d147213bfe (commit) via 531f08359c015e39fa51dd9b15ed6abedbc408e6 (commit) via 8c4f3d176b15855e3da914569f669bfd70ff9253 (commit) via 2f58be7548d3eaa772983253f03d077a6242e17e (commit) via 81a789d9315219cca58160ea2dbd005287ae4bd3 (commit) via cdc2be25f1b63a906f2209ae9d7ac4bdd4b14feb (commit) via c52603e13916f3d835b20c83df718c6f0319ca08 (commit) via 86f2526ac684724b2c2c7bab3bb0f1f5550cced3 (commit) via ce9abb6627a085706077c1a11da1569fc3c7f244 (commit) via cffed7aa4b730c3d961b6c135d9d7d9f3964b97c (commit) via 7c6248e1b578bc51a4dad9b8d0f562c2081fabba (commit) via 7b57b6f44151e64ac223524e13fc4b46d78ed1c3 (commit) via 504d7a75581d39ef8fbff8a5da33f1efabc8b7f3 (commit) via 923ad92ac18cf39f93ca909faa3bac0505c09462 (commit) via 4f495b1f235540017027fa1b1ba38adecb11f00b (commit) via 2a931aa1cd04752e60cfeb77e7b14158f38712e7 (commit) via c894a342345ca6b55edc75f0ced6ab7ffa7b7a42 (commit) via 91a0a2217ac1591584c27eb8ce056e977f2b6a80 (commit) via 3717a205a61b582ba5426da008a548bf98085742 (commit) via e1b8a853237eb16a3cfc1a98ddd9b3ef2bdfe095 (commit) via a5b0d8bf9eba230f06f2b09810cc04e0a39c58ae (commit) via daf9669080f7b03530bdebcfee822697c89242c5 (commit) via aba9ac599fe3ba8657a2a35519ee0e8266def38b (commit) via 1129c37a95009f8f4ee3222a09c12c3f9d374d9d (commit) via 85cbc0a08f8f0125602244b91beb1b8e45a36e3f (commit) via 264c0195fbd8a897d37c81d5d74e6502ab7212a8 (commit) via ec238128df8a41644501c9620c03103e93c89afd (commit) via 7180ae3897fecf7366f1e465f90048cd8174ca78 (commit) via 4912df2ff60c3bf0d8dff3093bac58c892801c6b (commit) via e8bae96337cc79c86388f805bfc637d67cd0c362 (commit) via 641baa86e04b6c5e8d6275f62c2b933585087b5a (commit) via b26fa79a08060254fb88e10cd6b2e62059ab1925 (commit) via 3e077ef34538d75bfc1f34e7aa1609ed32af52e2 (commit) via 74459c0aded2cceae19e1bff2ce9a899cf0168c0 (commit) via bfd77eaf70f5112da41c9ae379c130fc8bceed76 (commit) via 7d653d51f8ed7aa6198aa724d6e68750642b588f (commit) via 0f5490855a4259e7a3770edb95c2af4ceeaef427 (commit) via d4c8b6bec26d2b45112e129f99921558058c4b18 (commit) via 80ca8bd0f52b61accecc4d66296ec7d7648ee990 (commit) via 858d8d9092dae3839e9129448d8a51937aebc909 (commit) via b751ad81814bd71d9ddf32607c992dbbddfd417c (commit) via 5532265c3ca1c01cd0a2d3b2a893b5fbac606faa (commit) via 57ba1e9023b0f1f3499cc888f66827a81574bb41 (commit) via a3323b6fde7a475aba2d4491fd0df98a0dcfaf89 (commit) via 117e37e35699860267699b5662516964b59e3eb2 (commit) via 4b492e272b065ae89b17fbf63d2244b0d1d1660e (commit) via a5e8b4b8943c18b715a166c5acafba9b16e9068b (commit) via ea2b3bf4d5033ff99a89d3a5361663837d88aff8 (commit) via 54c5f690106865fd43584eeec4f5b7108c938755 (commit) via 96eddd7ef1606a0785c99be3141738184067da83 (commit) via 4b4b895946d5366ebf091e7d6c3237512cc44063 (commit) via 0d181206ca614936a3f8715e78baaf4850c6127b (commit) via e2e4ed017c1e4eea4ebc14ec6196a6891ae550a7 (commit) via 38ad04851347da66b36d2120254d7c93bf03f26f (commit) via ed37f707f9b2809464c23f8a951b08d94b1444b1 (commit) via 2bcff894ac444f5b8d5d6ab7d8c243974526d332 (commit) via 39877197d6f99832c9732edcf72a11fbddf43a30 (commit) via 0708113765903d21a5479e5462c6383e0812caf3 (commit) via 1d43a0fb89f66c94a4e96f005ddd694c1a402385 (commit) via a806976e3618736e9054043eae2eb8e65e2bc626 (commit) via ad6b3bd660bf8ecce28c4a289dc0d4b367b4376f (commit) via 00269c4c8c235aaaa86ebea41e1b42d27b880c97 (commit) via 002819372f64daf13f5ea20367e4477fa3783328 (commit) via 1afed8d21d28aa498beef8fb29932754259eb556 (commit) via ee11332d40ab1482cf9a89f6aaf6cb49d56c9726 (commit) via 5c5fd846ac363475256679ad8b0ac94502d82686 (commit) via 3ced8695afbc62b95b52d53be4ca64086a700e39 (commit) via 39d4fe16c51fc484058626cbb57a34f1a68f179d (commit) via 53803a28683e68cc2f59d676ad4ff733a9483e53 (commit) via 35f4e9668ec7c043f04b8167380eebde0a913e8e (commit) via 2df9fd224399f2a07257bfa54b047f9e50dc98db (commit) via a409c362c6da97487151fd8e8c19ca10d64eae1e (commit) via d823e491307129c91edb2857c5368de4eaf08d15 (commit) via 1eaa29b151b6b923041e612f7f0c588b44dbdbeb (commit) via 0df2024f29c9e955dd0bfe4df84afce757d40e26 (commit) via 63ca66d438520e9c613922e4f419ed50eaf1bc6c (commit) via 156337976b33ca58a94b6a4fbb03bae7f1b9b38b (commit) via 1fa96194abe35c08d77ba713877db96f31dee72e (commit) via e32571f0316a01ea940145287a5588640e3a3c2c (commit) via ddb6262fe588a487f61c8565b399f480b46932ce (commit) via 20730a6feee96496d4933fc2cba54e0c87b7ef84 (commit) via 86ec950263487aeebbb73c77f3840738904f419f (commit) via 162d2e2fc78b65b48fa84b7399a5a647b5c6534b (commit) via 2311154f58a3e71b87ee6ad67a59fafd8f2aa058 (commit) via f793992b717349a28425642b3b61bc752fc53949 (commit) via cc03d52ee45e30af94e909f2bab4b4a838369cb6 (commit) via 02d7d49c91b18b9f2086578fae8d26afdab8c8bb (commit) via a0c4de46fa00a83ad5fde5c3c654b296fa012fde (commit) via e1aa5a9bece1ac86808bbc26e54e133a3d7d61e6 (commit) via 9eca0c864505f02d794d00d46c53aa91524371b4 (commit) via c8796dfba88eb17832cfc60f96c92e626d7cabf7 (commit) via 65f0333066db08ccaf9d0cf647f23ec5279e8ebe (commit) via 62b923f9dfbf0c86ac49405c884d0b1167c71b5f (commit) via bc481fef281da3512ae10fd1f8810244c0586c74 (commit) via 2e5cba5c3f7f11019df1380237baddf1759557ea (commit) via 52bc0ab96f2cb0b2fce4fd348f2b5102a33d9bf7 (commit) via e601770587377e3913cf39be8f2c58eafc217321 (commit) via 6925b8ef5815cab2d1ea290c8413fd42d0c55b7b (commit) via 3c5139b61345b45719f4f07c2402b4a4f336c461 (commit) via a947a7a6474ca88db006652fe7a0d37433af4fd3 (commit) via de02755c2bf93dac51ac0623244efca718aac06d (commit) via 0c345920dd97a4f7cf8b246ef8044cbd7a04a8eb (commit) via 7124bb3468cfd230c32a752b1844c1a7fdec04d8 (commit) via 5943bf3ecc42ce8c8b1f95b92f38f093f4115607 (commit) via d4e634955c76cc787b661890df3dabfbf39b39f0 (commit) via 081f097387e30b25f694197d460e31571b0cd386 (commit) via ebc354b84632f51581191d542e6571e30b731601 (commit) via 66befe59522b9b4721f4318cc69063304c1da448 (commit) via 0b776fba15e1724b290722d8f6b84ef54afe996d (commit) via 130b6bb3d57a98c49baaaf6b6e63409b3cf776da (commit) via adc8e4beb77be2439d046bf99dddf1879dcebb51 (commit) via a99de963c9f272ec8850002a734dca4aa1f77dae (commit) via eed2260c8af577e0abf4558fe655f81261f93c6e (commit) via 713a08524620fd24fbebdf1691508d12ad23fc72 (commit) via 889caec5d9ab2fb518fa2bcd126b1db60ef3d16b (commit) via 2775d49b7048df84e7a4c25ac0fc59ec55d8c59a (commit) via 152b57c8fc231cdae8e2334e9e9906c4e6bc554b (commit) via dfca89d77de16bbad9f0a008fefd8dc6d29c3909 (commit) via b635757a46fbf3ce9931e1744484ce678b17e20f (commit) via afbb5d0a18de2096aa63936912b94de96633b39d (commit) via b5e9f17b665341a8f11ab85b7978904246908a63 (commit) via 09e923afefd4cdf1279bb6d62c3a3c46fd9cda0e (commit) via 7f8e1a3dac33e70f088fa2691cc02fa8c9d154f1 (commit) via 0c8b5bf924443cb62ea19ff56201e6288826d264 (commit) via e865603286978e87a7611cf4471d4844f8ef73e4 (commit) via 9f0b9436d83a7a97dbeb26060325567eb61fc627 (commit) via a727dcf7279d8d65548c957879d813de1714344b (commit) from 6d7da25360676a96fefbbf6d81886b1e456c4b01 (commit)
Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below.
- Log ----------------------------------------------------------------- commit 39017f76e77fb77fd47c17cc89da69f3b3f0e946 Author: Arne Fitzenreiter arne_f@ipfire.org Date: Sun Sep 11 16:10:00 2011 +0200
fix branch in make.sh.
-----------------------------------------------------------------------
Summary of changes: config/etc/modprobe.d/cfg80211 | 2 +- config/menu/30-network.menu | 6 + config/rootfiles/common/apache2 | 1 + config/rootfiles/common/binutils | 5 +- config/rootfiles/common/configroot | 1 + config/rootfiles/common/gcc | 864 ++++++++++------ config/rootfiles/common/groff | 1019 ++++++++++--------- config/rootfiles/common/initscripts | 1 + config/rootfiles/common/misc-progs | 1 + config/rootfiles/common/openvpn | 5 +- config/rootfiles/common/strongswan | 191 ++-- config/rootfiles/common/usb_modeswitch | 4 +- config/rootfiles/common/usb_modeswitch_data | 347 ++++--- config/rootfiles/core/53/exclude | 7 + config/rootfiles/core/53/filelists/compat-wireless | 359 +++++++ config/rootfiles/core/53/filelists/files | 26 + config/rootfiles/core/53/filelists/gcc | 1 + config/rootfiles/core/53/filelists/glibc | 1 + config/rootfiles/core/53/filelists/gmp | 1 + config/rootfiles/core/53/filelists/openvpn | 1 + .../{oldcore/38 => core/53}/filelists/strongswan | 0 .../34 => core/53}/filelists/usb_modeswitch | 0 .../44 => core/53}/filelists/usb_modeswitch_data | 0 config/rootfiles/core/53/update.sh | 64 +- config/rootfiles/packages/java | 822 --------------- config/rootfiles/packages/libsatsolver | 52 - config/rootfiles/packages/libsolv | 47 + config/rootfiles/packages/python-satsolver | 2 - config/rootfiles/packages/qemu | 20 +- doc/language_issues.de | 7 + doc/language_issues.en | 7 + doc/language_issues.es | 9 + doc/language_issues.fr | 11 +- doc/language_issues.pl | 9 + doc/language_issues.ru | 16 + doc/language_missings | 29 +- html/cgi-bin/extrahd.cgi | 54 +- html/cgi-bin/index.cgi | 23 +- html/cgi-bin/outgoinggrp.cgi | 4 + html/cgi-bin/ovpnmain.cgi | 1094 ++++++++++++++++++-- html/cgi-bin/pakfire.cgi | 13 - html/cgi-bin/{hosts.cgi => routing.cgi} | 180 ++-- html/cgi-bin/vpnmain.cgi | 42 +- langs/de/cgi-bin/de.pl | 13 + langs/en/cgi-bin/en.pl | 13 + langs/es/cgi-bin/es.pl | 11 + langs/fr/cgi-bin/fr.pl | 13 +- langs/pl/cgi-bin/pl.pl | 2 + lfs/bash | 2 + lfs/binutils | 22 +- lfs/ccache | 4 +- lfs/cleanup-toolchain | 24 +- lfs/compat-wireless | 4 +- lfs/configroot | 2 +- lfs/coreutils | 10 +- lfs/gcc | 79 +-- lfs/glibc | 4 +- lfs/groff | 13 +- lfs/iproute2 | 4 + lfs/java | 83 -- lfs/kvm-kmod | 6 +- lfs/{libsatsolver => libsolv} | 22 +- lfs/ncurses | 2 + lfs/openvpn | 9 +- lfs/perl | 1 + lfs/python-satsolver | 102 -- lfs/qemu | 13 +- lfs/strongswan | 6 +- lfs/usb_modeswitch | 7 +- lfs/usb_modeswitch_data | 8 +- lfs/xen-image | 4 - make.sh | 23 +- src/initscripts/init.d/network | 1 + src/initscripts/init.d/networking/red | 2 +- src/initscripts/init.d/networking/red.down/10-ovpn | 1 + src/initscripts/init.d/networking/red.up/50-ovpn | 1 + src/initscripts/init.d/static-routes | 67 ++ src/misc-progs/Makefile | 4 +- src/misc-progs/ipsecctrl.c | 53 +- src/misc-progs/openvpnctrl.c | 326 +++++- src/misc-progs/rebuildroutes.c | 17 + src/pakfire/pakfire.conf | 4 +- src/patches/binutils-2.18-configure-1.patch | 19 + ....patch => ccache-3.1.6-no_compiler_mtime.patch} | 0 .../gcc-4.1.2-fix_linker_version_detection.patch | 12 + ...4.0.4-specs-1.patch => gcc-4.1.2-specs-1.patch} | 197 ++-- ...b_remove_pvclock_scale_delta_redefinition.patch | 12 + .../libsatsolver-Build-only-libraries.patch | 26 - ...er-scripts-that-do-only-export-the-needed.patch | 439 -------- ...e-libsatsolver-ext-a-versioned-shared-lib.patch | 94 -- .../qemu-0.15.0_missing_definitions_hack.patch | 40 + src/scripts/backupiso | 4 +- src/scripts/vpn-watch | 17 +- 93 files changed, 3968 insertions(+), 3222 deletions(-) create mode 100644 config/rootfiles/core/53/filelists/compat-wireless create mode 120000 config/rootfiles/core/53/filelists/gcc create mode 120000 config/rootfiles/core/53/filelists/glibc create mode 120000 config/rootfiles/core/53/filelists/gmp create mode 120000 config/rootfiles/core/53/filelists/openvpn copy config/rootfiles/{oldcore/38 => core/53}/filelists/strongswan (100%) copy config/rootfiles/{oldcore/34 => core/53}/filelists/usb_modeswitch (100%) copy config/rootfiles/{oldcore/44 => core/53}/filelists/usb_modeswitch_data (100%) delete mode 100644 config/rootfiles/packages/java delete mode 100644 config/rootfiles/packages/libsatsolver create mode 100644 config/rootfiles/packages/libsolv delete mode 100644 config/rootfiles/packages/python-satsolver copy html/cgi-bin/{hosts.cgi => routing.cgi} (72%) delete mode 100644 lfs/java rename lfs/{libsatsolver => libsolv} (84%) delete mode 100644 lfs/python-satsolver create mode 100644 src/initscripts/init.d/static-routes create mode 100644 src/misc-progs/rebuildroutes.c create mode 100644 src/patches/binutils-2.18-configure-1.patch rename src/patches/{ccache-3.1-no_compiler_mtime.patch => ccache-3.1.6-no_compiler_mtime.patch} (100%) create mode 100644 src/patches/gcc-4.1.2-fix_linker_version_detection.patch copy src/patches/{gcc-4.0.4-specs-1.patch => gcc-4.1.2-specs-1.patch} (57%) create mode 100644 src/patches/kvm-kmod-3.0b_remove_pvclock_scale_delta_redefinition.patch delete mode 100644 src/patches/libsatsolver-Build-only-libraries.patch delete mode 100644 src/patches/libsatsolver-Create-linker-scripts-that-do-only-export-the-needed.patch delete mode 100644 src/patches/libsatsolver-Make-libsatsolver-ext-a-versioned-shared-lib.patch create mode 100644 src/patches/qemu-0.15.0_missing_definitions_hack.patch
Difference in files: diff --git a/config/etc/modprobe.d/cfg80211 b/config/etc/modprobe.d/cfg80211 index 3339ea8..9e04ea6 100644 --- a/config/etc/modprobe.d/cfg80211 +++ b/config/etc/modprobe.d/cfg80211 @@ -1,2 +1,2 @@ -options cfg80211 ieee80211_regdom=EU +#options cfg80211 ieee80211_regdom=DE blacklist ieee80211 diff --git a/config/menu/30-network.menu b/config/menu/30-network.menu index abc6bc6..f4645b8 100644 --- a/config/menu/30-network.menu +++ b/config/menu/30-network.menu @@ -35,6 +35,12 @@ 'title' => "$Lang::tr{'edit hosts'}", 'enabled' => 1, }; + $subnetwork->{'51.routes'} = { + 'caption' => $Lang::tr{'static routes'}, + 'uri' => '/cgi-bin/routing.cgi', + 'title' => "$Lang::tr{'static routes'}", + 'enabled' => 1, + }; $subnetwork->{'60.upload'} = { 'caption' => $Lang::tr{'upload'}, 'uri' => '/cgi-bin/upload.cgi', diff --git a/config/rootfiles/common/apache2 b/config/rootfiles/common/apache2 index 970598e..2eab3b5 100644 --- a/config/rootfiles/common/apache2 +++ b/config/rootfiles/common/apache2 @@ -1404,6 +1404,7 @@ srv/web/ipfire/cgi-bin/pppsetup.cgi srv/web/ipfire/cgi-bin/proxy.cgi srv/web/ipfire/cgi-bin/qos.cgi srv/web/ipfire/cgi-bin/remote.cgi +srv/web/ipfire/cgi-bin/routing.cgi srv/web/ipfire/cgi-bin/services.cgi srv/web/ipfire/cgi-bin/speed.cgi srv/web/ipfire/cgi-bin/system.cgi diff --git a/config/rootfiles/common/binutils b/config/rootfiles/common/binutils index b4a1e49..0cd5af9 100644 --- a/config/rootfiles/common/binutils +++ b/config/rootfiles/common/binutils @@ -44,12 +44,12 @@ #usr/lib/ldscripts/i386linux.xn #usr/lib/ldscripts/i386linux.xr #usr/lib/ldscripts/i386linux.xu -#usr/lib/libbfd-2.17.so +#usr/lib/libbfd-2.18.so #usr/lib/libbfd.a #usr/lib/libbfd.la #usr/lib/libbfd.so #usr/lib/libiberty.a -#usr/lib/libopcodes-2.17.so +#usr/lib/libopcodes-2.18.so #usr/lib/libopcodes.a #usr/lib/libopcodes.la #usr/lib/libopcodes.so @@ -71,4 +71,5 @@ #usr/man/man1/size.1 #usr/man/man1/strings.1 #usr/man/man1/strip.1 +#usr/man/man1/windmc.1 #usr/man/man1/windres.1 diff --git a/config/rootfiles/common/configroot b/config/rootfiles/common/configroot index 5ac578a..8fdd7ac 100644 --- a/config/rootfiles/common/configroot +++ b/config/rootfiles/common/configroot @@ -67,6 +67,7 @@ var/ipfire/mac var/ipfire/main #var/ipfire/main/disable_nf_sip #var/ipfire/main/hosts +#var/ipfire/main/routing #var/ipfire/main/settings #var/ipfire/menu.d var/ipfire/menu.d/00-menu.main diff --git a/config/rootfiles/common/gcc b/config/rootfiles/common/gcc index da0c39d..cde9e4f 100644 --- a/config/rootfiles/common/gcc +++ b/config/rootfiles/common/gcc @@ -9,256 +9,491 @@ #usr/bin/i586-pc-linux-gnu-c++ #usr/bin/i586-pc-linux-gnu-g++ #usr/bin/i586-pc-linux-gnu-gcc -#usr/bin/i586-pc-linux-gnu-gcc-4.0.4 +#usr/bin/i586-pc-linux-gnu-gcc-4.1.2 #usr/include/c++ -#usr/include/c++/4.0.4 -#usr/include/c++/4.0.4/algorithm -#usr/include/c++/4.0.4/backward -#usr/include/c++/4.0.4/backward/algo.h -#usr/include/c++/4.0.4/backward/algobase.h -#usr/include/c++/4.0.4/backward/alloc.h -#usr/include/c++/4.0.4/backward/backward_warning.h -#usr/include/c++/4.0.4/backward/bvector.h -#usr/include/c++/4.0.4/backward/complex.h -#usr/include/c++/4.0.4/backward/defalloc.h -#usr/include/c++/4.0.4/backward/deque.h -#usr/include/c++/4.0.4/backward/fstream.h -#usr/include/c++/4.0.4/backward/function.h -#usr/include/c++/4.0.4/backward/hash_map.h -#usr/include/c++/4.0.4/backward/hash_set.h -#usr/include/c++/4.0.4/backward/hashtable.h -#usr/include/c++/4.0.4/backward/heap.h -#usr/include/c++/4.0.4/backward/iomanip.h -#usr/include/c++/4.0.4/backward/iostream.h -#usr/include/c++/4.0.4/backward/istream.h -#usr/include/c++/4.0.4/backward/iterator.h -#usr/include/c++/4.0.4/backward/list.h -#usr/include/c++/4.0.4/backward/map.h -#usr/include/c++/4.0.4/backward/multimap.h -#usr/include/c++/4.0.4/backward/multiset.h -#usr/include/c++/4.0.4/backward/new.h -#usr/include/c++/4.0.4/backward/ostream.h -#usr/include/c++/4.0.4/backward/pair.h -#usr/include/c++/4.0.4/backward/queue.h -#usr/include/c++/4.0.4/backward/rope.h -#usr/include/c++/4.0.4/backward/set.h -#usr/include/c++/4.0.4/backward/slist.h -#usr/include/c++/4.0.4/backward/stack.h -#usr/include/c++/4.0.4/backward/stream.h -#usr/include/c++/4.0.4/backward/streambuf.h -#usr/include/c++/4.0.4/backward/strstream -#usr/include/c++/4.0.4/backward/tempbuf.h -#usr/include/c++/4.0.4/backward/tree.h -#usr/include/c++/4.0.4/backward/vector.h -#usr/include/c++/4.0.4/bits -#usr/include/c++/4.0.4/bits/allocator.h -#usr/include/c++/4.0.4/bits/atomicity.h -#usr/include/c++/4.0.4/bits/basic_ios.h -#usr/include/c++/4.0.4/bits/basic_ios.tcc -#usr/include/c++/4.0.4/bits/basic_string.h -#usr/include/c++/4.0.4/bits/basic_string.tcc -#usr/include/c++/4.0.4/bits/boost_concept_check.h -#usr/include/c++/4.0.4/bits/char_traits.h -#usr/include/c++/4.0.4/bits/cmath.tcc -#usr/include/c++/4.0.4/bits/codecvt.h -#usr/include/c++/4.0.4/bits/concept_check.h -#usr/include/c++/4.0.4/bits/concurrence.h -#usr/include/c++/4.0.4/bits/cpp_type_traits.h -#usr/include/c++/4.0.4/bits/deque.tcc -#usr/include/c++/4.0.4/bits/fstream.tcc -#usr/include/c++/4.0.4/bits/functexcept.h -#usr/include/c++/4.0.4/bits/gslice.h -#usr/include/c++/4.0.4/bits/gslice_array.h -#usr/include/c++/4.0.4/bits/indirect_array.h -#usr/include/c++/4.0.4/bits/ios_base.h -#usr/include/c++/4.0.4/bits/istream.tcc -#usr/include/c++/4.0.4/bits/list.tcc -#usr/include/c++/4.0.4/bits/locale_classes.h -#usr/include/c++/4.0.4/bits/locale_facets.h -#usr/include/c++/4.0.4/bits/locale_facets.tcc -#usr/include/c++/4.0.4/bits/localefwd.h -#usr/include/c++/4.0.4/bits/mask_array.h -#usr/include/c++/4.0.4/bits/ostream.tcc -#usr/include/c++/4.0.4/bits/postypes.h -#usr/include/c++/4.0.4/bits/slice_array.h -#usr/include/c++/4.0.4/bits/sstream.tcc -#usr/include/c++/4.0.4/bits/stl_algo.h -#usr/include/c++/4.0.4/bits/stl_algobase.h -#usr/include/c++/4.0.4/bits/stl_bvector.h -#usr/include/c++/4.0.4/bits/stl_construct.h -#usr/include/c++/4.0.4/bits/stl_deque.h -#usr/include/c++/4.0.4/bits/stl_function.h -#usr/include/c++/4.0.4/bits/stl_heap.h -#usr/include/c++/4.0.4/bits/stl_iterator.h -#usr/include/c++/4.0.4/bits/stl_iterator_base_funcs.h -#usr/include/c++/4.0.4/bits/stl_iterator_base_types.h -#usr/include/c++/4.0.4/bits/stl_list.h -#usr/include/c++/4.0.4/bits/stl_map.h -#usr/include/c++/4.0.4/bits/stl_multimap.h -#usr/include/c++/4.0.4/bits/stl_multiset.h -#usr/include/c++/4.0.4/bits/stl_numeric.h -#usr/include/c++/4.0.4/bits/stl_pair.h -#usr/include/c++/4.0.4/bits/stl_queue.h -#usr/include/c++/4.0.4/bits/stl_raw_storage_iter.h -#usr/include/c++/4.0.4/bits/stl_relops.h -#usr/include/c++/4.0.4/bits/stl_set.h -#usr/include/c++/4.0.4/bits/stl_stack.h -#usr/include/c++/4.0.4/bits/stl_tempbuf.h -#usr/include/c++/4.0.4/bits/stl_tree.h -#usr/include/c++/4.0.4/bits/stl_uninitialized.h -#usr/include/c++/4.0.4/bits/stl_vector.h -#usr/include/c++/4.0.4/bits/stream_iterator.h -#usr/include/c++/4.0.4/bits/streambuf.tcc -#usr/include/c++/4.0.4/bits/streambuf_iterator.h -#usr/include/c++/4.0.4/bits/stringfwd.h -#usr/include/c++/4.0.4/bits/valarray_after.h -#usr/include/c++/4.0.4/bits/valarray_array.h -#usr/include/c++/4.0.4/bits/valarray_array.tcc -#usr/include/c++/4.0.4/bits/valarray_before.h -#usr/include/c++/4.0.4/bits/vector.tcc -#usr/include/c++/4.0.4/bitset -#usr/include/c++/4.0.4/cassert -#usr/include/c++/4.0.4/cctype -#usr/include/c++/4.0.4/cerrno -#usr/include/c++/4.0.4/cfloat -#usr/include/c++/4.0.4/ciso646 -#usr/include/c++/4.0.4/climits -#usr/include/c++/4.0.4/clocale -#usr/include/c++/4.0.4/cmath -#usr/include/c++/4.0.4/complex -#usr/include/c++/4.0.4/csetjmp -#usr/include/c++/4.0.4/csignal -#usr/include/c++/4.0.4/cstdarg -#usr/include/c++/4.0.4/cstddef -#usr/include/c++/4.0.4/cstdio -#usr/include/c++/4.0.4/cstdlib -#usr/include/c++/4.0.4/cstring -#usr/include/c++/4.0.4/ctime -#usr/include/c++/4.0.4/cwchar -#usr/include/c++/4.0.4/cwctype -#usr/include/c++/4.0.4/cxxabi.h -#usr/include/c++/4.0.4/debug -#usr/include/c++/4.0.4/debug/bitset -#usr/include/c++/4.0.4/debug/debug.h -#usr/include/c++/4.0.4/debug/deque -#usr/include/c++/4.0.4/debug/formatter.h -#usr/include/c++/4.0.4/debug/hash_map -#usr/include/c++/4.0.4/debug/hash_map.h -#usr/include/c++/4.0.4/debug/hash_multimap.h -#usr/include/c++/4.0.4/debug/hash_multiset.h -#usr/include/c++/4.0.4/debug/hash_set -#usr/include/c++/4.0.4/debug/hash_set.h -#usr/include/c++/4.0.4/debug/list -#usr/include/c++/4.0.4/debug/map -#usr/include/c++/4.0.4/debug/map.h -#usr/include/c++/4.0.4/debug/multimap.h -#usr/include/c++/4.0.4/debug/multiset.h -#usr/include/c++/4.0.4/debug/safe_base.h -#usr/include/c++/4.0.4/debug/safe_iterator.h -#usr/include/c++/4.0.4/debug/safe_iterator.tcc -#usr/include/c++/4.0.4/debug/safe_sequence.h -#usr/include/c++/4.0.4/debug/set -#usr/include/c++/4.0.4/debug/set.h -#usr/include/c++/4.0.4/debug/string -#usr/include/c++/4.0.4/debug/vector -#usr/include/c++/4.0.4/deque -#usr/include/c++/4.0.4/exception -#usr/include/c++/4.0.4/exception_defines.h -#usr/include/c++/4.0.4/ext -#usr/include/c++/4.0.4/ext/algorithm -#usr/include/c++/4.0.4/ext/array_allocator.h -#usr/include/c++/4.0.4/ext/bitmap_allocator.h -#usr/include/c++/4.0.4/ext/codecvt_specializations.h -#usr/include/c++/4.0.4/ext/debug_allocator.h -#usr/include/c++/4.0.4/ext/functional -#usr/include/c++/4.0.4/ext/hash_fun.h -#usr/include/c++/4.0.4/ext/hash_map -#usr/include/c++/4.0.4/ext/hash_set -#usr/include/c++/4.0.4/ext/hashtable.h -#usr/include/c++/4.0.4/ext/iterator -#usr/include/c++/4.0.4/ext/malloc_allocator.h -#usr/include/c++/4.0.4/ext/memory -#usr/include/c++/4.0.4/ext/mt_allocator.h -#usr/include/c++/4.0.4/ext/new_allocator.h -#usr/include/c++/4.0.4/ext/numeric -#usr/include/c++/4.0.4/ext/pod_char_traits.h -#usr/include/c++/4.0.4/ext/pool_allocator.h -#usr/include/c++/4.0.4/ext/rb_tree -#usr/include/c++/4.0.4/ext/rope -#usr/include/c++/4.0.4/ext/ropeimpl.h -#usr/include/c++/4.0.4/ext/slist -#usr/include/c++/4.0.4/ext/stdio_filebuf.h -#usr/include/c++/4.0.4/ext/stdio_sync_filebuf.h -#usr/include/c++/4.0.4/fstream -#usr/include/c++/4.0.4/functional -#usr/include/c++/4.0.4/i586-pc-linux-gnu -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/atomic_word.h -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/basic_file.h -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/c++allocator.h -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/c++config.h -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/c++io.h -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/c++locale.h -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/ctype_base.h -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/ctype_inline.h -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/ctype_noninline.h -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/cxxabi_tweaks.h -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/gthr-default.h -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/gthr-posix.h -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/gthr-single.h -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/gthr-tpf.h -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/gthr.h -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/messages_members.h -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/os_defines.h -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/stdc++.h.gch -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/stdc++.h.gch/O0g.gch -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/stdc++.h.gch/O2g.gch -#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/time_members.h -#usr/include/c++/4.0.4/iomanip -#usr/include/c++/4.0.4/ios -#usr/include/c++/4.0.4/iosfwd -#usr/include/c++/4.0.4/iostream -#usr/include/c++/4.0.4/istream -#usr/include/c++/4.0.4/iterator -#usr/include/c++/4.0.4/limits -#usr/include/c++/4.0.4/list -#usr/include/c++/4.0.4/locale -#usr/include/c++/4.0.4/map -#usr/include/c++/4.0.4/memory -#usr/include/c++/4.0.4/new -#usr/include/c++/4.0.4/numeric -#usr/include/c++/4.0.4/ostream -#usr/include/c++/4.0.4/queue -#usr/include/c++/4.0.4/set -#usr/include/c++/4.0.4/sstream -#usr/include/c++/4.0.4/stack -#usr/include/c++/4.0.4/stdexcept -#usr/include/c++/4.0.4/streambuf -#usr/include/c++/4.0.4/string -#usr/include/c++/4.0.4/tr1 -#usr/include/c++/4.0.4/tr1/array -#usr/include/c++/4.0.4/tr1/bind_iterate.h -#usr/include/c++/4.0.4/tr1/bind_repeat.h -#usr/include/c++/4.0.4/tr1/boost_shared_ptr.h -#usr/include/c++/4.0.4/tr1/functional -#usr/include/c++/4.0.4/tr1/functional_iterate.h -#usr/include/c++/4.0.4/tr1/hashtable -#usr/include/c++/4.0.4/tr1/memory -#usr/include/c++/4.0.4/tr1/mu_iterate.h -#usr/include/c++/4.0.4/tr1/ref_fwd.h -#usr/include/c++/4.0.4/tr1/ref_wrap_iterate.h -#usr/include/c++/4.0.4/tr1/repeat.h -#usr/include/c++/4.0.4/tr1/tuple -#usr/include/c++/4.0.4/tr1/tuple_iterate.h -#usr/include/c++/4.0.4/tr1/type_traits -#usr/include/c++/4.0.4/tr1/type_traits_fwd.h -#usr/include/c++/4.0.4/tr1/unordered_map -#usr/include/c++/4.0.4/tr1/unordered_set -#usr/include/c++/4.0.4/tr1/utility -#usr/include/c++/4.0.4/typeinfo -#usr/include/c++/4.0.4/utility -#usr/include/c++/4.0.4/valarray -#usr/include/c++/4.0.4/vector +#usr/include/c++/4.1.2 +#usr/include/c++/4.1.2/algorithm +#usr/include/c++/4.1.2/backward +#usr/include/c++/4.1.2/backward/algo.h +#usr/include/c++/4.1.2/backward/algobase.h +#usr/include/c++/4.1.2/backward/alloc.h +#usr/include/c++/4.1.2/backward/backward_warning.h +#usr/include/c++/4.1.2/backward/bvector.h +#usr/include/c++/4.1.2/backward/complex.h +#usr/include/c++/4.1.2/backward/defalloc.h +#usr/include/c++/4.1.2/backward/deque.h +#usr/include/c++/4.1.2/backward/fstream.h +#usr/include/c++/4.1.2/backward/function.h +#usr/include/c++/4.1.2/backward/hash_map.h +#usr/include/c++/4.1.2/backward/hash_set.h +#usr/include/c++/4.1.2/backward/hashtable.h +#usr/include/c++/4.1.2/backward/heap.h +#usr/include/c++/4.1.2/backward/iomanip.h +#usr/include/c++/4.1.2/backward/iostream.h +#usr/include/c++/4.1.2/backward/istream.h +#usr/include/c++/4.1.2/backward/iterator.h +#usr/include/c++/4.1.2/backward/list.h +#usr/include/c++/4.1.2/backward/map.h +#usr/include/c++/4.1.2/backward/multimap.h +#usr/include/c++/4.1.2/backward/multiset.h +#usr/include/c++/4.1.2/backward/new.h +#usr/include/c++/4.1.2/backward/ostream.h +#usr/include/c++/4.1.2/backward/pair.h +#usr/include/c++/4.1.2/backward/queue.h +#usr/include/c++/4.1.2/backward/rope.h +#usr/include/c++/4.1.2/backward/set.h +#usr/include/c++/4.1.2/backward/slist.h +#usr/include/c++/4.1.2/backward/stack.h +#usr/include/c++/4.1.2/backward/stream.h +#usr/include/c++/4.1.2/backward/streambuf.h +#usr/include/c++/4.1.2/backward/strstream +#usr/include/c++/4.1.2/backward/tempbuf.h +#usr/include/c++/4.1.2/backward/tree.h +#usr/include/c++/4.1.2/backward/vector.h +#usr/include/c++/4.1.2/bits +#usr/include/c++/4.1.2/bits/allocator.h +#usr/include/c++/4.1.2/bits/atomicity.h +#usr/include/c++/4.1.2/bits/basic_ios.h +#usr/include/c++/4.1.2/bits/basic_ios.tcc +#usr/include/c++/4.1.2/bits/basic_string.h +#usr/include/c++/4.1.2/bits/basic_string.tcc +#usr/include/c++/4.1.2/bits/boost_concept_check.h +#usr/include/c++/4.1.2/bits/char_traits.h +#usr/include/c++/4.1.2/bits/cmath.tcc +#usr/include/c++/4.1.2/bits/codecvt.h +#usr/include/c++/4.1.2/bits/concept_check.h +#usr/include/c++/4.1.2/bits/concurrence.h +#usr/include/c++/4.1.2/bits/cpp_type_traits.h +#usr/include/c++/4.1.2/bits/deque.tcc +#usr/include/c++/4.1.2/bits/fstream.tcc +#usr/include/c++/4.1.2/bits/functexcept.h +#usr/include/c++/4.1.2/bits/gslice.h +#usr/include/c++/4.1.2/bits/gslice_array.h +#usr/include/c++/4.1.2/bits/indirect_array.h +#usr/include/c++/4.1.2/bits/ios_base.h +#usr/include/c++/4.1.2/bits/istream.tcc +#usr/include/c++/4.1.2/bits/list.tcc +#usr/include/c++/4.1.2/bits/locale_classes.h +#usr/include/c++/4.1.2/bits/locale_facets.h +#usr/include/c++/4.1.2/bits/locale_facets.tcc +#usr/include/c++/4.1.2/bits/localefwd.h +#usr/include/c++/4.1.2/bits/mask_array.h +#usr/include/c++/4.1.2/bits/ostream.tcc +#usr/include/c++/4.1.2/bits/postypes.h +#usr/include/c++/4.1.2/bits/slice_array.h +#usr/include/c++/4.1.2/bits/sstream.tcc +#usr/include/c++/4.1.2/bits/stl_algo.h +#usr/include/c++/4.1.2/bits/stl_algobase.h +#usr/include/c++/4.1.2/bits/stl_bvector.h +#usr/include/c++/4.1.2/bits/stl_construct.h +#usr/include/c++/4.1.2/bits/stl_deque.h +#usr/include/c++/4.1.2/bits/stl_function.h +#usr/include/c++/4.1.2/bits/stl_heap.h +#usr/include/c++/4.1.2/bits/stl_iterator.h +#usr/include/c++/4.1.2/bits/stl_iterator_base_funcs.h +#usr/include/c++/4.1.2/bits/stl_iterator_base_types.h +#usr/include/c++/4.1.2/bits/stl_list.h +#usr/include/c++/4.1.2/bits/stl_map.h +#usr/include/c++/4.1.2/bits/stl_multimap.h +#usr/include/c++/4.1.2/bits/stl_multiset.h +#usr/include/c++/4.1.2/bits/stl_numeric.h +#usr/include/c++/4.1.2/bits/stl_pair.h +#usr/include/c++/4.1.2/bits/stl_queue.h +#usr/include/c++/4.1.2/bits/stl_raw_storage_iter.h +#usr/include/c++/4.1.2/bits/stl_relops.h +#usr/include/c++/4.1.2/bits/stl_set.h +#usr/include/c++/4.1.2/bits/stl_stack.h +#usr/include/c++/4.1.2/bits/stl_tempbuf.h +#usr/include/c++/4.1.2/bits/stl_tree.h +#usr/include/c++/4.1.2/bits/stl_uninitialized.h +#usr/include/c++/4.1.2/bits/stl_vector.h +#usr/include/c++/4.1.2/bits/stream_iterator.h +#usr/include/c++/4.1.2/bits/streambuf.tcc +#usr/include/c++/4.1.2/bits/streambuf_iterator.h +#usr/include/c++/4.1.2/bits/stringfwd.h +#usr/include/c++/4.1.2/bits/valarray_after.h +#usr/include/c++/4.1.2/bits/valarray_array.h +#usr/include/c++/4.1.2/bits/valarray_array.tcc +#usr/include/c++/4.1.2/bits/valarray_before.h +#usr/include/c++/4.1.2/bits/vector.tcc +#usr/include/c++/4.1.2/bitset +#usr/include/c++/4.1.2/cassert +#usr/include/c++/4.1.2/cctype +#usr/include/c++/4.1.2/cerrno +#usr/include/c++/4.1.2/cfloat +#usr/include/c++/4.1.2/ciso646 +#usr/include/c++/4.1.2/climits +#usr/include/c++/4.1.2/clocale +#usr/include/c++/4.1.2/cmath +#usr/include/c++/4.1.2/complex +#usr/include/c++/4.1.2/csetjmp +#usr/include/c++/4.1.2/csignal +#usr/include/c++/4.1.2/cstdarg +#usr/include/c++/4.1.2/cstddef +#usr/include/c++/4.1.2/cstdio +#usr/include/c++/4.1.2/cstdlib +#usr/include/c++/4.1.2/cstring +#usr/include/c++/4.1.2/ctime +#usr/include/c++/4.1.2/cwchar +#usr/include/c++/4.1.2/cwctype +#usr/include/c++/4.1.2/cxxabi.h +#usr/include/c++/4.1.2/debug +#usr/include/c++/4.1.2/debug/bitset +#usr/include/c++/4.1.2/debug/debug.h +#usr/include/c++/4.1.2/debug/deque +#usr/include/c++/4.1.2/debug/formatter.h +#usr/include/c++/4.1.2/debug/functions.h +#usr/include/c++/4.1.2/debug/hash_map +#usr/include/c++/4.1.2/debug/hash_map.h +#usr/include/c++/4.1.2/debug/hash_multimap.h +#usr/include/c++/4.1.2/debug/hash_multiset.h +#usr/include/c++/4.1.2/debug/hash_set +#usr/include/c++/4.1.2/debug/hash_set.h +#usr/include/c++/4.1.2/debug/list +#usr/include/c++/4.1.2/debug/macros.h +#usr/include/c++/4.1.2/debug/map +#usr/include/c++/4.1.2/debug/map.h +#usr/include/c++/4.1.2/debug/multimap.h +#usr/include/c++/4.1.2/debug/multiset.h +#usr/include/c++/4.1.2/debug/safe_base.h +#usr/include/c++/4.1.2/debug/safe_iterator.h +#usr/include/c++/4.1.2/debug/safe_iterator.tcc +#usr/include/c++/4.1.2/debug/safe_sequence.h +#usr/include/c++/4.1.2/debug/set +#usr/include/c++/4.1.2/debug/set.h +#usr/include/c++/4.1.2/debug/string +#usr/include/c++/4.1.2/debug/vector +#usr/include/c++/4.1.2/deque +#usr/include/c++/4.1.2/exception +#usr/include/c++/4.1.2/exception_defines.h +#usr/include/c++/4.1.2/ext +#usr/include/c++/4.1.2/ext/algorithm +#usr/include/c++/4.1.2/ext/array_allocator.h +#usr/include/c++/4.1.2/ext/bitmap_allocator.h +#usr/include/c++/4.1.2/ext/codecvt_specializations.h +#usr/include/c++/4.1.2/ext/debug_allocator.h +#usr/include/c++/4.1.2/ext/functional +#usr/include/c++/4.1.2/ext/hash_fun.h +#usr/include/c++/4.1.2/ext/hash_map +#usr/include/c++/4.1.2/ext/hash_set +#usr/include/c++/4.1.2/ext/hashtable.h +#usr/include/c++/4.1.2/ext/iterator +#usr/include/c++/4.1.2/ext/malloc_allocator.h +#usr/include/c++/4.1.2/ext/memory +#usr/include/c++/4.1.2/ext/mt_allocator.h +#usr/include/c++/4.1.2/ext/new_allocator.h +#usr/include/c++/4.1.2/ext/numeric +#usr/include/c++/4.1.2/ext/pb_assoc +#usr/include/c++/4.1.2/ext/pb_assoc/assoc_cntnr.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/data_type.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail +#usr/include/c++/4.1.2/ext/pb_assoc/detail/assoc_cntnr_base.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/constructor_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/constructors_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/d_extract_key.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/d_find_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/d_insert_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/erase_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/extract_key.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/info_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/insert_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/iterators_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_hash_assoc_cntnr +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_hash_assoc_cntnr/constructor_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_hash_assoc_cntnr/constructors_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_hash_assoc_cntnr/resize_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/constructor_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/constructors_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/erase_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/node_iteration_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/policy_access_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/r_erase_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/r_range_iteration_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/range_iteration_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/split_join_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_ +#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/bin_search_tree_.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/cond_dtor_entry_dealtor.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/cond_key_dtor_entry_dealtor.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/debug_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/erase_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/find_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/find_iterators.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/info_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/insert_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/iterators_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/node_iterators.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/r_erase_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/rotate_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/split_join_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_hash_assoc_cntnr +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_hash_assoc_cntnr/constructor_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_ +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/cc_ht_map_.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/cmp_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/cond_key_dtor_entry_dealtor.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/constructor_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/constructor_destructor_no_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/constructor_destructor_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/debug_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/debug_no_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/debug_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/entry_list_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/erase_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/erase_no_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/erase_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/find_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/find_no_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/find_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/info_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/insert_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/insert_no_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/insert_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/iterators_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/policy_access_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/resize_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/resize_no_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/resize_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/size_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/standard_policies.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/cond_dealtor.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/constructors_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/ds_trait_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/eq_fn +#usr/include/c++/4.1.2/ext/pb_assoc/detail/eq_fn/eq_by_less.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/eq_fn/hash_eq_fn.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_hash_assoc_cntnr +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_hash_assoc_cntnr/constructor_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_ +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/constructor_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/constructor_destructor_no_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/constructor_destructor_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/debug_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/debug_no_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/debug_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/erase_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/erase_no_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/erase_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/find_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/find_no_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/find_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/gp_ht_map_.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/info_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/insert_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/insert_no_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/insert_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/iterator_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/policy_access_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/resize_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/resize_no_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/resize_store_hash_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn +#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/direct_mask_range_hashing_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/direct_mod_range_hashing_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/linear_probe_fn_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/mask_based_range_hashing.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/mod_based_range_hashing.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/probe_fn_base.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/quadratic_probe_fn_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/ranged_hash_fn.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/ranged_probe_fn.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_types_traits.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_assoc_cntnr +#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_assoc_cntnr/constructor_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_assoc_cntnr/policy_access_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_ +#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/constructor_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/debug_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/erase_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/find_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/info_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/insert_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/iterators_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/lu_map_.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/policy_access_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_policy +#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_policy/counter_lu_metadata_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_policy/counter_lu_policy_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_policy/mtf_lu_policy_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/map_debug_base.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/mapping_level_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/ms_category_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/ms_trait_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/order_statistics_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_ +#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/cond_dtor.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/debug_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/erase_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/find_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/info_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/insert_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/iterators_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/node_iterators.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/ov_tree_map_.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/split_join_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_ +#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/debug_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/erase_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/find_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/info_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/insert_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/node.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/rb_tree_.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/split_join_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/resize_policy +#usr/include/c++/4.1.2/ext/pb_assoc/detail/resize_policy/cc_hash_max_collision_resize_trigger_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/resize_policy/hash_exponential_size_policy_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/resize_policy/hash_prime_size_policy_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/resize_policy/hash_standard_resize_policy_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/resize_policy/ht_prime_size_policy_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/resize_policy/size_base.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_ +#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/constructors_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/debug_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/erase_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/find_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/info_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/insert_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/node.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/splay_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/splay_tree_.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/split_join_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/standard_policies.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/standard_sizes.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/tree_assoc_cntnr +#usr/include/c++/4.1.2/ext/pb_assoc/detail/tree_assoc_cntnr/constructor_destructor_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/tree_policy +#usr/include/c++/4.1.2/ext/pb_assoc/detail/tree_policy/null_node_updator_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/tree_policy/order_statistics_imp.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/type_utils.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist +#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist/typelist_append.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist/typelist_apply.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist/typelist_at_index.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist/typelist_contains.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist/typelist_filter.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist/typelist_transform.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist/typelist_typelist_append.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/types_traits.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/unordered_iterator +#usr/include/c++/4.1.2/ext/pb_assoc/detail/unordered_iterator/const_find_iterator.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/unordered_iterator/const_iterator.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/unordered_iterator/find_iterator.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/unordered_iterator/iterator.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter +#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/constructor_destructor_and_related.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/erase_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/erase_if_pred.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/find_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/info_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/insert_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/invalidation_guarantee_selector.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/it_value_type_traits.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/iterator.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/iterator_fn_imps.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/ref_pair.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/value_type_adapter.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/value_type_traits.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/ds_trait.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/exception.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/hash_policy.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/lu_policy.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/ms_trait.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/tree_policy.hpp +#usr/include/c++/4.1.2/ext/pb_assoc/trivial_iterator_def.hpp +#usr/include/c++/4.1.2/ext/pod_char_traits.h +#usr/include/c++/4.1.2/ext/pool_allocator.h +#usr/include/c++/4.1.2/ext/rb_tree +#usr/include/c++/4.1.2/ext/rc_string_base.h +#usr/include/c++/4.1.2/ext/rope +#usr/include/c++/4.1.2/ext/ropeimpl.h +#usr/include/c++/4.1.2/ext/slist +#usr/include/c++/4.1.2/ext/sso_string_base.h +#usr/include/c++/4.1.2/ext/stdio_filebuf.h +#usr/include/c++/4.1.2/ext/stdio_sync_filebuf.h +#usr/include/c++/4.1.2/ext/typelist.h +#usr/include/c++/4.1.2/ext/vstring.h +#usr/include/c++/4.1.2/ext/vstring.tcc +#usr/include/c++/4.1.2/ext/vstring_fwd.h +#usr/include/c++/4.1.2/ext/vstring_util.h +#usr/include/c++/4.1.2/fstream +#usr/include/c++/4.1.2/functional +#usr/include/c++/4.1.2/i586-pc-linux-gnu +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/atomic_word.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/basic_file.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/c++allocator.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/c++config.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/c++io.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/c++locale.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/cpu_defines.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/ctype_base.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/ctype_inline.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/ctype_noninline.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/cxxabi_tweaks.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/gthr-default.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/gthr-posix.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/gthr-single.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/gthr-tpf.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/gthr.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/messages_members.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/os_defines.h +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/stdc++.h.gch +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/stdc++.h.gch/O0g.gch +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/stdc++.h.gch/O2g.gch +#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/time_members.h +#usr/include/c++/4.1.2/iomanip +#usr/include/c++/4.1.2/ios +#usr/include/c++/4.1.2/iosfwd +#usr/include/c++/4.1.2/iostream +#usr/include/c++/4.1.2/istream +#usr/include/c++/4.1.2/iterator +#usr/include/c++/4.1.2/limits +#usr/include/c++/4.1.2/list +#usr/include/c++/4.1.2/locale +#usr/include/c++/4.1.2/map +#usr/include/c++/4.1.2/memory +#usr/include/c++/4.1.2/new +#usr/include/c++/4.1.2/numeric +#usr/include/c++/4.1.2/ostream +#usr/include/c++/4.1.2/queue +#usr/include/c++/4.1.2/set +#usr/include/c++/4.1.2/sstream +#usr/include/c++/4.1.2/stack +#usr/include/c++/4.1.2/stdexcept +#usr/include/c++/4.1.2/streambuf +#usr/include/c++/4.1.2/string +#usr/include/c++/4.1.2/tr1 +#usr/include/c++/4.1.2/tr1/array +#usr/include/c++/4.1.2/tr1/bind_iterate.h +#usr/include/c++/4.1.2/tr1/bind_repeat.h +#usr/include/c++/4.1.2/tr1/boost_shared_ptr.h +#usr/include/c++/4.1.2/tr1/functional +#usr/include/c++/4.1.2/tr1/functional_iterate.h +#usr/include/c++/4.1.2/tr1/hashtable +#usr/include/c++/4.1.2/tr1/memory +#usr/include/c++/4.1.2/tr1/mu_iterate.h +#usr/include/c++/4.1.2/tr1/ref_fwd.h +#usr/include/c++/4.1.2/tr1/ref_wrap_iterate.h +#usr/include/c++/4.1.2/tr1/repeat.h +#usr/include/c++/4.1.2/tr1/tuple +#usr/include/c++/4.1.2/tr1/tuple_iterate.h +#usr/include/c++/4.1.2/tr1/type_traits +#usr/include/c++/4.1.2/tr1/type_traits_fwd.h +#usr/include/c++/4.1.2/tr1/unordered_map +#usr/include/c++/4.1.2/tr1/unordered_set +#usr/include/c++/4.1.2/tr1/utility +#usr/include/c++/4.1.2/typeinfo +#usr/include/c++/4.1.2/utility +#usr/include/c++/4.1.2/valarray +#usr/include/c++/4.1.2/vector #usr/include/mf-runtime.h #usr/info/cpp.info #usr/info/cppinternals.info @@ -267,73 +502,86 @@ #usr/info/gccint.info #usr/lib/gcc #usr/lib/gcc/i586-pc-linux-gnu -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4 -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/cc1 -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/cc1plus -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/collect2 -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/crtbegin.o -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/crtbeginS.o -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/crtbeginT.o -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/crtend.o -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/crtendS.o -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/README -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/emmintrin.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/float.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/iso646.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/limits.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/mm3dnow.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/mm_malloc.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/mmintrin.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/pmmintrin.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/stdarg.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/stdbool.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/stddef.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/syslimits.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/unwind.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/varargs.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/xmmintrin.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/fixinc.sh -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/fixincl -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/gsyslimits.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/README -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/emmintrin.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/float.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/iso646.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/limits.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/mm3dnow.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/mm_malloc.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/mmintrin.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/pmmintrin.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/stdarg.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/stdbool.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/stddef.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/unwind.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/varargs.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/xmmintrin.h -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/macro_list -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/mkheaders -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/mkheaders.conf -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/libgcc.a -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/libgcc_eh.a -#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/libgcov.a +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2 +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/cc1 +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/cc1plus +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/collect2 +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/crtbegin.o +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/crtbeginS.o +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/crtbeginT.o +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/crtend.o +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/crtendS.o +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/crtfastmath.o +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/README +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/emmintrin.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/float.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/iso646.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/limits.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/mm3dnow.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/mm_malloc.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/mmintrin.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/pmmintrin.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/ssp +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/ssp/ssp.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/ssp/stdio.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/ssp/string.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/ssp/unistd.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/stdarg.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/stdbool.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/stddef.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/syslimits.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/unwind.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/varargs.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/xmmintrin.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/fixinc.sh +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/fixincl +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/gsyslimits.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/README +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/emmintrin.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/float.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/iso646.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/limits.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/mm3dnow.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/mm_malloc.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/mmintrin.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/pmmintrin.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/stdarg.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/stdbool.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/stddef.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/unwind.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/varargs.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/xmmintrin.h +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/macro_list +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/mkheaders +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/mkheaders.conf +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/libgcc.a +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/libgcc_eh.a +#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/libgcov.a #usr/lib/libmudflap.a #usr/lib/libmudflap.la -#usr/lib/libmudflap.so -#usr/lib/libmudflap.so.0 -#usr/lib/libmudflap.so.0.0.0 +usr/lib/libmudflap.so +usr/lib/libmudflap.so.0 +usr/lib/libmudflap.so.0.0.0 #usr/lib/libmudflapth.a #usr/lib/libmudflapth.la -#usr/lib/libmudflapth.so -#usr/lib/libmudflapth.so.0 -#usr/lib/libmudflapth.so.0.0.0 +usr/lib/libmudflapth.so +usr/lib/libmudflapth.so.0 +usr/lib/libmudflapth.so.0.0.0 +#usr/lib/libssp.a +#usr/lib/libssp.la +usr/lib/libssp.so +usr/lib/libssp.so.0 +usr/lib/libssp.so.0.0.0 +#usr/lib/libssp_nonshared.a +#usr/lib/libssp_nonshared.la #usr/lib/libstdc++.a #usr/lib/libstdc++.la usr/lib/libstdc++.so usr/lib/libstdc++.so.6 -usr/lib/libstdc++.so.6.0.7 +usr/lib/libstdc++.so.6.0.8 #usr/lib/libsupc++.a #usr/lib/libsupc++.la #usr/man/man1/cpp.1 diff --git a/config/rootfiles/common/groff b/config/rootfiles/common/groff index 345de37..c27e594 100644 --- a/config/rootfiles/common/groff +++ b/config/rootfiles/common/groff @@ -1,8 +1,11 @@ #usr/bin/addftinfo #usr/bin/afmtodit +#usr/bin/chem #usr/bin/eqn #usr/bin/eqn2graph +#usr/bin/gdiffmk #usr/bin/geqn +#usr/bin/grap2graph #usr/bin/grn #usr/bin/grodvi #usr/bin/groff @@ -20,488 +23,566 @@ #usr/bin/mmroff #usr/bin/neqn #usr/bin/nroff +#usr/bin/pdfroff #usr/bin/pfbtops #usr/bin/pic #usr/bin/pic2graph #usr/bin/post-grohtml #usr/bin/pre-grohtml +#usr/bin/preconv #usr/bin/refer +#usr/bin/roff2dvi +#usr/bin/roff2html +#usr/bin/roff2pdf +#usr/bin/roff2ps +#usr/bin/roff2text +#usr/bin/roff2x #usr/bin/soelim #usr/bin/tbl #usr/bin/tfmtodit #usr/bin/troff -#usr/info/groff -#usr/info/groff-1 -#usr/info/groff-10 -#usr/info/groff-11 -#usr/info/groff-2 -#usr/info/groff-3 -#usr/info/groff-4 -#usr/info/groff-5 -#usr/info/groff-6 -#usr/info/groff-7 -#usr/info/groff-8 -#usr/info/groff-9 #usr/lib/groff +#usr/lib/groff/groffer +#usr/lib/groff/groffer/func.pl +#usr/lib/groff/groffer/man.pl +#usr/lib/groff/groffer/perl_test.pl +#usr/lib/groff/groffer/split_env.sh +#usr/lib/groff/groffer/version.sh #usr/lib/groff/site-tmac -#usr/man/man1/addftinfo.1 -#usr/man/man1/afmtodit.1 -#usr/man/man1/eqn.1 -#usr/man/man1/eqn2graph.1 -#usr/man/man1/grn.1 -#usr/man/man1/grodvi.1 -#usr/man/man1/groff.1 -#usr/man/man1/groffer.1 -#usr/man/man1/grog.1 -#usr/man/man1/grohtml.1 -#usr/man/man1/grolbp.1 -#usr/man/man1/grolj4.1 -#usr/man/man1/grops.1 -#usr/man/man1/grotty.1 -#usr/man/man1/hpftodit.1 -#usr/man/man1/indxbib.1 -#usr/man/man1/lkbib.1 -#usr/man/man1/lookbib.1 -#usr/man/man1/mmroff.1 -#usr/man/man1/neqn.1 -#usr/man/man1/nroff.1 -#usr/man/man1/pfbtops.1 -#usr/man/man1/pic.1 -#usr/man/man1/pic2graph.1 -#usr/man/man1/refer.1 -#usr/man/man1/soelim.1 -#usr/man/man1/tbl.1 -#usr/man/man1/tfmtodit.1 -#usr/man/man1/troff.1 -#usr/man/man5/groff_font.5 -#usr/man/man5/groff_out.5 -#usr/man/man5/groff_tmac.5 -#usr/man/man7/ditroff.7 -#usr/man/man7/groff.7 -#usr/man/man7/groff_char.7 -#usr/man/man7/groff_diff.7 -#usr/man/man7/groff_man.7 -#usr/man/man7/groff_mdoc.7 -#usr/man/man7/groff_me.7 -#usr/man/man7/groff_mm.7 -#usr/man/man7/groff_mmse.7 -#usr/man/man7/groff_mom.7 -#usr/man/man7/groff_ms.7 -#usr/man/man7/groff_trace.7 -#usr/man/man7/groff_www.7 -#usr/man/man7/roff.7 -#usr/share/doc/groff -#usr/share/doc/groff/1.18.1 -#usr/share/doc/groff/1.18.1/examples -#usr/share/doc/groff/1.18.1/examples/README.mom -#usr/share/doc/groff/1.18.1/examples/elvis_syntax -#usr/share/doc/groff/1.18.1/examples/grnexmpl.g -#usr/share/doc/groff/1.18.1/examples/grnexmpl.me -#usr/share/doc/groff/1.18.1/examples/grnexmpl.ps -#usr/share/doc/groff/1.18.1/examples/letter.mom -#usr/share/doc/groff/1.18.1/examples/letter.ps -#usr/share/doc/groff/1.18.1/examples/macros.mom -#usr/share/doc/groff/1.18.1/examples/macros.ps -#usr/share/doc/groff/1.18.1/examples/penguin.ps -#usr/share/doc/groff/1.18.1/examples/typeset.mom -#usr/share/doc/groff/1.18.1/examples/typeset.ps -#usr/share/doc/groff/1.18.1/examples/typewrite.mom -#usr/share/doc/groff/1.18.1/examples/typewrite.ps -#usr/share/doc/groff/1.18.1/examples/webpage.ms -#usr/share/doc/groff/1.18.1/examples/webpage.ps -#usr/share/doc/groff/1.18.1/html -#usr/share/doc/groff/1.18.1/html/momdoc -#usr/share/doc/groff/1.18.1/html/momdoc/appendices.html -#usr/share/doc/groff/1.18.1/html/momdoc/cover.html -#usr/share/doc/groff/1.18.1/html/momdoc/definitions.html -#usr/share/doc/groff/1.18.1/html/momdoc/docelement.html -#usr/share/doc/groff/1.18.1/html/momdoc/docprocessing.html -#usr/share/doc/groff/1.18.1/html/momdoc/goodies.html -#usr/share/doc/groff/1.18.1/html/momdoc/headfootpage.html -#usr/share/doc/groff/1.18.1/html/momdoc/inlines.html -#usr/share/doc/groff/1.18.1/html/momdoc/intro.html -#usr/share/doc/groff/1.18.1/html/momdoc/letters.html -#usr/share/doc/groff/1.18.1/html/momdoc/rectoverso.html -#usr/share/doc/groff/1.18.1/html/momdoc/reserved.html -#usr/share/doc/groff/1.18.1/html/momdoc/toc.html -#usr/share/doc/groff/1.18.1/html/momdoc/typemacdoc.html -#usr/share/doc/groff/1.18.1/html/momdoc/typesetting.html -#usr/share/doc/groff/1.18.1/html/momdoc/using.html -#usr/share/doc/groff/1.18.1/meintro.me -#usr/share/doc/groff/1.18.1/meintro.ps -#usr/share/doc/groff/1.18.1/meref.me -#usr/share/doc/groff/1.18.1/meref.ps -#usr/share/doc/groff/1.18.1/pic.ms -#usr/share/doc/groff/1.18.1/pic.ps +#usr/share/doc/groff-1.21 +#usr/share/doc/groff-1.21/examples +#usr/share/doc/groff-1.21/examples/chem +#usr/share/doc/groff-1.21/examples/chem/122 +#usr/share/doc/groff-1.21/examples/chem/122/README +#usr/share/doc/groff-1.21/examples/chem/122/ch2a_ethyl.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch2b_benzene.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch2c_benzene_right.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4a_stick.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4b_methyl_acetate.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4c_colon.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4d_HCl.H2O.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4e_CaSO4.2H2O.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4f_C.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4g_BP.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4h_methacrylate.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4i_cyclo.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4j_ring4.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4k_ring3.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4l_vertex.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4m_double.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4n_triple.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4o_aromatic.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4p_cholestanol.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4q_rings.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4r_spiro.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4s_heteroatoms.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4t_polycyclic.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4u_nicotine.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4v_histidine.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4w_lsd.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4x_anisole.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4y_reserpine.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4z1_eqn_glutamic.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch4z2_text.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch5a_size.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch6a_pic.chem +#usr/share/doc/groff-1.21/examples/chem/122/ch6b_dna.chem +#usr/share/doc/groff-1.21/examples/chem/122/chAa_polymer.chem +#usr/share/doc/groff-1.21/examples/chem/122/chAb_vinyl_chloro.chem +#usr/share/doc/groff-1.21/examples/chem/122/chAc_morphine.chem +#usr/share/doc/groff-1.21/examples/chem/122/chAd_chlorophyll.chem +#usr/share/doc/groff-1.21/examples/chem/122/chAe_chair.chem +#usr/share/doc/groff-1.21/examples/chem/122/chAf_arrow.chem +#usr/share/doc/groff-1.21/examples/chem/122/chAg_circle.chem +#usr/share/doc/groff-1.21/examples/chem/122/chAh_brackets.chem +#usr/share/doc/groff-1.21/examples/chem/122/chAi_poly_vinyl_chloride.chem +#usr/share/doc/groff-1.21/examples/chem/122/chBa_jump.chem +#usr/share/doc/groff-1.21/examples/chem/122/chBb_bonds.chem +#usr/share/doc/groff-1.21/examples/chem/122/chBc_rings.chem +#usr/share/doc/groff-1.21/examples/chem/README +#usr/share/doc/groff-1.21/examples/chem/atp.chem +#usr/share/doc/groff-1.21/examples/chem/cholesterin.chem +#usr/share/doc/groff-1.21/examples/chem/ethamivan.chem +#usr/share/doc/groff-1.21/examples/chem/lsd.chem +#usr/share/doc/groff-1.21/examples/chem/morphine.chem +#usr/share/doc/groff-1.21/examples/chem/penicillin.chem +#usr/share/doc/groff-1.21/examples/chem/reserpine.chem +#usr/share/doc/groff-1.21/examples/gnu.eps +#usr/share/doc/groff-1.21/examples/grnexmpl.g +#usr/share/doc/groff-1.21/examples/grnexmpl.me +#usr/share/doc/groff-1.21/examples/grnexmpl.ps +#usr/share/doc/groff-1.21/examples/groff.css +#usr/share/doc/groff-1.21/examples/hdtbl +#usr/share/doc/groff-1.21/examples/hdtbl/chess_board.ps +#usr/share/doc/groff-1.21/examples/hdtbl/chess_board.roff +#usr/share/doc/groff-1.21/examples/hdtbl/col_rowspan_colors.ps +#usr/share/doc/groff-1.21/examples/hdtbl/col_rowspan_colors.roff +#usr/share/doc/groff-1.21/examples/hdtbl/color_boxes.ps +#usr/share/doc/groff-1.21/examples/hdtbl/color_boxes.roff +#usr/share/doc/groff-1.21/examples/hdtbl/color_nested_tables.ps +#usr/share/doc/groff-1.21/examples/hdtbl/color_nested_tables.roff +#usr/share/doc/groff-1.21/examples/hdtbl/color_table_cells.ps +#usr/share/doc/groff-1.21/examples/hdtbl/color_table_cells.roff +#usr/share/doc/groff-1.21/examples/hdtbl/color_transitions.ps +#usr/share/doc/groff-1.21/examples/hdtbl/color_transitions.roff +#usr/share/doc/groff-1.21/examples/hdtbl/common.roff +#usr/share/doc/groff-1.21/examples/hdtbl/fonts_n.ps +#usr/share/doc/groff-1.21/examples/hdtbl/fonts_n.roff +#usr/share/doc/groff-1.21/examples/hdtbl/fonts_x.ps +#usr/share/doc/groff-1.21/examples/hdtbl/fonts_x.roff +#usr/share/doc/groff-1.21/examples/hdtbl/gnu.eps +#usr/share/doc/groff-1.21/examples/hdtbl/mixed_pickles.ps +#usr/share/doc/groff-1.21/examples/hdtbl/mixed_pickles.roff +#usr/share/doc/groff-1.21/examples/hdtbl/rainbow.ps +#usr/share/doc/groff-1.21/examples/hdtbl/rainbow.roff +#usr/share/doc/groff-1.21/examples/hdtbl/short_reference.ps +#usr/share/doc/groff-1.21/examples/hdtbl/short_reference.roff +#usr/share/doc/groff-1.21/examples/mom +#usr/share/doc/groff-1.21/examples/mom/README.txt +#usr/share/doc/groff-1.21/examples/mom/elvis_syntax +#usr/share/doc/groff-1.21/examples/mom/elvis_syntax.new +#usr/share/doc/groff-1.21/examples/mom/letter.mom +#usr/share/doc/groff-1.21/examples/mom/letter.ps +#usr/share/doc/groff-1.21/examples/mom/penguin.ps +#usr/share/doc/groff-1.21/examples/mom/sample_docs.mom +#usr/share/doc/groff-1.21/examples/mom/sample_docs.ps +#usr/share/doc/groff-1.21/examples/mom/typesetting.mom +#usr/share/doc/groff-1.21/examples/mom/typesetting.ps +#usr/share/doc/groff-1.21/examples/webpage.ms +#usr/share/doc/groff-1.21/examples/webpage.ps +#usr/share/doc/groff-1.21/html +#usr/share/doc/groff-1.21/html/mom +#usr/share/doc/groff-1.21/html/mom/appendices.html +#usr/share/doc/groff-1.21/html/mom/color.html +#usr/share/doc/groff-1.21/html/mom/cover.html +#usr/share/doc/groff-1.21/html/mom/definitions.html +#usr/share/doc/groff-1.21/html/mom/docelement.html +#usr/share/doc/groff-1.21/html/mom/docprocessing.html +#usr/share/doc/groff-1.21/html/mom/goodies.html +#usr/share/doc/groff-1.21/html/mom/graphical.html +#usr/share/doc/groff-1.21/html/mom/headfootpage.html +#usr/share/doc/groff-1.21/html/mom/images.html +#usr/share/doc/groff-1.21/html/mom/inlines.html +#usr/share/doc/groff-1.21/html/mom/intro.html +#usr/share/doc/groff-1.21/html/mom/letters.html +#usr/share/doc/groff-1.21/html/mom/macrolist.html +#usr/share/doc/groff-1.21/html/mom/rectoverso.html +#usr/share/doc/groff-1.21/html/mom/refer.html +#usr/share/doc/groff-1.21/html/mom/reserved.html +#usr/share/doc/groff-1.21/html/mom/stylesheet.css +#usr/share/doc/groff-1.21/html/mom/tables-of-contents.html +#usr/share/doc/groff-1.21/html/mom/toc.html +#usr/share/doc/groff-1.21/html/mom/typesetting.html +#usr/share/doc/groff-1.21/html/mom/using.html +#usr/share/doc/groff-1.21/meintro.me +#usr/share/doc/groff-1.21/meintro.ps +#usr/share/doc/groff-1.21/meref.me +#usr/share/doc/groff-1.21/meref.ps +#usr/share/doc/groff-1.21/pic.ms +#usr/share/doc/groff-1.21/pic.ps #usr/share/groff -#usr/share/groff/1.18.1 -#usr/share/groff/1.18.1/eign -#usr/share/groff/1.18.1/font -#usr/share/groff/1.18.1/font/devX100 -#usr/share/groff/1.18.1/font/devX100-12 -#usr/share/groff/1.18.1/font/devX100-12/CB -#usr/share/groff/1.18.1/font/devX100-12/CBI -#usr/share/groff/1.18.1/font/devX100-12/CI -#usr/share/groff/1.18.1/font/devX100-12/CR -#usr/share/groff/1.18.1/font/devX100-12/DESC -#usr/share/groff/1.18.1/font/devX100-12/G -#usr/share/groff/1.18.1/font/devX100-12/HB -#usr/share/groff/1.18.1/font/devX100-12/HBI -#usr/share/groff/1.18.1/font/devX100-12/HI -#usr/share/groff/1.18.1/font/devX100-12/HR -#usr/share/groff/1.18.1/font/devX100-12/M -#usr/share/groff/1.18.1/font/devX100-12/NB -#usr/share/groff/1.18.1/font/devX100-12/NBI -#usr/share/groff/1.18.1/font/devX100-12/NI -#usr/share/groff/1.18.1/font/devX100-12/NR -#usr/share/groff/1.18.1/font/devX100-12/S -#usr/share/groff/1.18.1/font/devX100-12/TB -#usr/share/groff/1.18.1/font/devX100-12/TBI -#usr/share/groff/1.18.1/font/devX100-12/TI -#usr/share/groff/1.18.1/font/devX100-12/TR -#usr/share/groff/1.18.1/font/devX100/CB -#usr/share/groff/1.18.1/font/devX100/CBI -#usr/share/groff/1.18.1/font/devX100/CI -#usr/share/groff/1.18.1/font/devX100/CR -#usr/share/groff/1.18.1/font/devX100/DESC -#usr/share/groff/1.18.1/font/devX100/G -#usr/share/groff/1.18.1/font/devX100/HB -#usr/share/groff/1.18.1/font/devX100/HBI -#usr/share/groff/1.18.1/font/devX100/HI -#usr/share/groff/1.18.1/font/devX100/HR -#usr/share/groff/1.18.1/font/devX100/M -#usr/share/groff/1.18.1/font/devX100/NB -#usr/share/groff/1.18.1/font/devX100/NBI -#usr/share/groff/1.18.1/font/devX100/NI -#usr/share/groff/1.18.1/font/devX100/NR -#usr/share/groff/1.18.1/font/devX100/S -#usr/share/groff/1.18.1/font/devX100/TB -#usr/share/groff/1.18.1/font/devX100/TBI -#usr/share/groff/1.18.1/font/devX100/TI -#usr/share/groff/1.18.1/font/devX100/TR -#usr/share/groff/1.18.1/font/devX75 -#usr/share/groff/1.18.1/font/devX75-12 -#usr/share/groff/1.18.1/font/devX75-12/CB -#usr/share/groff/1.18.1/font/devX75-12/CBI -#usr/share/groff/1.18.1/font/devX75-12/CI -#usr/share/groff/1.18.1/font/devX75-12/CR -#usr/share/groff/1.18.1/font/devX75-12/DESC -#usr/share/groff/1.18.1/font/devX75-12/G -#usr/share/groff/1.18.1/font/devX75-12/HB -#usr/share/groff/1.18.1/font/devX75-12/HBI -#usr/share/groff/1.18.1/font/devX75-12/HI -#usr/share/groff/1.18.1/font/devX75-12/HR -#usr/share/groff/1.18.1/font/devX75-12/M -#usr/share/groff/1.18.1/font/devX75-12/NB -#usr/share/groff/1.18.1/font/devX75-12/NBI -#usr/share/groff/1.18.1/font/devX75-12/NI -#usr/share/groff/1.18.1/font/devX75-12/NR -#usr/share/groff/1.18.1/font/devX75-12/S -#usr/share/groff/1.18.1/font/devX75-12/TB -#usr/share/groff/1.18.1/font/devX75-12/TBI -#usr/share/groff/1.18.1/font/devX75-12/TI -#usr/share/groff/1.18.1/font/devX75-12/TR -#usr/share/groff/1.18.1/font/devX75/CB -#usr/share/groff/1.18.1/font/devX75/CBI -#usr/share/groff/1.18.1/font/devX75/CI -#usr/share/groff/1.18.1/font/devX75/CR -#usr/share/groff/1.18.1/font/devX75/DESC -#usr/share/groff/1.18.1/font/devX75/G -#usr/share/groff/1.18.1/font/devX75/HB -#usr/share/groff/1.18.1/font/devX75/HBI -#usr/share/groff/1.18.1/font/devX75/HI -#usr/share/groff/1.18.1/font/devX75/HR -#usr/share/groff/1.18.1/font/devX75/M -#usr/share/groff/1.18.1/font/devX75/NB -#usr/share/groff/1.18.1/font/devX75/NBI -#usr/share/groff/1.18.1/font/devX75/NI -#usr/share/groff/1.18.1/font/devX75/NR -#usr/share/groff/1.18.1/font/devX75/S -#usr/share/groff/1.18.1/font/devX75/TB -#usr/share/groff/1.18.1/font/devX75/TBI -#usr/share/groff/1.18.1/font/devX75/TI -#usr/share/groff/1.18.1/font/devX75/TR -#usr/share/groff/1.18.1/font/devascii -#usr/share/groff/1.18.1/font/devascii/B -#usr/share/groff/1.18.1/font/devascii/BI -#usr/share/groff/1.18.1/font/devascii/DESC -#usr/share/groff/1.18.1/font/devascii/I -#usr/share/groff/1.18.1/font/devascii/R -#usr/share/groff/1.18.1/font/devascii8 -#usr/share/groff/1.18.1/font/devascii8/B -#usr/share/groff/1.18.1/font/devascii8/BI -#usr/share/groff/1.18.1/font/devascii8/DESC -#usr/share/groff/1.18.1/font/devascii8/I -#usr/share/groff/1.18.1/font/devascii8/R -#usr/share/groff/1.18.1/font/devdvi -#usr/share/groff/1.18.1/font/devdvi/CW -#usr/share/groff/1.18.1/font/devdvi/CWEC -#usr/share/groff/1.18.1/font/devdvi/CWI -#usr/share/groff/1.18.1/font/devdvi/CWIEC -#usr/share/groff/1.18.1/font/devdvi/CWITC -#usr/share/groff/1.18.1/font/devdvi/CWTC -#usr/share/groff/1.18.1/font/devdvi/DESC -#usr/share/groff/1.18.1/font/devdvi/EX -#usr/share/groff/1.18.1/font/devdvi/G -#usr/share/groff/1.18.1/font/devdvi/HB -#usr/share/groff/1.18.1/font/devdvi/HBEC -#usr/share/groff/1.18.1/font/devdvi/HBI -#usr/share/groff/1.18.1/font/devdvi/HBIEC -#usr/share/groff/1.18.1/font/devdvi/HBITC -#usr/share/groff/1.18.1/font/devdvi/HBTC -#usr/share/groff/1.18.1/font/devdvi/HI -#usr/share/groff/1.18.1/font/devdvi/HIEC -#usr/share/groff/1.18.1/font/devdvi/HITC -#usr/share/groff/1.18.1/font/devdvi/HR -#usr/share/groff/1.18.1/font/devdvi/HREC -#usr/share/groff/1.18.1/font/devdvi/HRTC -#usr/share/groff/1.18.1/font/devdvi/M -#usr/share/groff/1.18.1/font/devdvi/MI -#usr/share/groff/1.18.1/font/devdvi/S -#usr/share/groff/1.18.1/font/devdvi/SA -#usr/share/groff/1.18.1/font/devdvi/SB -#usr/share/groff/1.18.1/font/devdvi/TB -#usr/share/groff/1.18.1/font/devdvi/TBEC -#usr/share/groff/1.18.1/font/devdvi/TBI -#usr/share/groff/1.18.1/font/devdvi/TBIEC -#usr/share/groff/1.18.1/font/devdvi/TBITC -#usr/share/groff/1.18.1/font/devdvi/TBTC -#usr/share/groff/1.18.1/font/devdvi/TI -#usr/share/groff/1.18.1/font/devdvi/TIEC -#usr/share/groff/1.18.1/font/devdvi/TITC -#usr/share/groff/1.18.1/font/devdvi/TR -#usr/share/groff/1.18.1/font/devdvi/TREC -#usr/share/groff/1.18.1/font/devdvi/TRTC -#usr/share/groff/1.18.1/font/devdvi/generate -#usr/share/groff/1.18.1/font/devdvi/generate/CompileFonts -#usr/share/groff/1.18.1/font/devdvi/generate/Makefile -#usr/share/groff/1.18.1/font/devdvi/generate/ec.map -#usr/share/groff/1.18.1/font/devdvi/generate/msam.map -#usr/share/groff/1.18.1/font/devdvi/generate/msbm.map -#usr/share/groff/1.18.1/font/devdvi/generate/tc.map -#usr/share/groff/1.18.1/font/devdvi/generate/texb.map -#usr/share/groff/1.18.1/font/devdvi/generate/texex.map -#usr/share/groff/1.18.1/font/devdvi/generate/texi.map -#usr/share/groff/1.18.1/font/devdvi/generate/texmi.map -#usr/share/groff/1.18.1/font/devdvi/generate/texr.map -#usr/share/groff/1.18.1/font/devdvi/generate/texsy.map -#usr/share/groff/1.18.1/font/devdvi/generate/textt.map -#usr/share/groff/1.18.1/font/devhtml -#usr/share/groff/1.18.1/font/devhtml/B -#usr/share/groff/1.18.1/font/devhtml/BI -#usr/share/groff/1.18.1/font/devhtml/CB -#usr/share/groff/1.18.1/font/devhtml/CBI -#usr/share/groff/1.18.1/font/devhtml/CI -#usr/share/groff/1.18.1/font/devhtml/CR -#usr/share/groff/1.18.1/font/devhtml/DESC -#usr/share/groff/1.18.1/font/devhtml/G -#usr/share/groff/1.18.1/font/devhtml/I -#usr/share/groff/1.18.1/font/devhtml/M -#usr/share/groff/1.18.1/font/devhtml/R -#usr/share/groff/1.18.1/font/devhtml/S -#usr/share/groff/1.18.1/font/devlatin1 -#usr/share/groff/1.18.1/font/devlatin1/B -#usr/share/groff/1.18.1/font/devlatin1/BI -#usr/share/groff/1.18.1/font/devlatin1/DESC -#usr/share/groff/1.18.1/font/devlatin1/I -#usr/share/groff/1.18.1/font/devlatin1/R -#usr/share/groff/1.18.1/font/devlbp -#usr/share/groff/1.18.1/font/devlbp/CB -#usr/share/groff/1.18.1/font/devlbp/CI -#usr/share/groff/1.18.1/font/devlbp/CR -#usr/share/groff/1.18.1/font/devlbp/DESC -#usr/share/groff/1.18.1/font/devlbp/EB -#usr/share/groff/1.18.1/font/devlbp/EI -#usr/share/groff/1.18.1/font/devlbp/ER -#usr/share/groff/1.18.1/font/devlbp/HB -#usr/share/groff/1.18.1/font/devlbp/HBI -#usr/share/groff/1.18.1/font/devlbp/HI -#usr/share/groff/1.18.1/font/devlbp/HNB -#usr/share/groff/1.18.1/font/devlbp/HNBI -#usr/share/groff/1.18.1/font/devlbp/HNI -#usr/share/groff/1.18.1/font/devlbp/HNR -#usr/share/groff/1.18.1/font/devlbp/HR -#usr/share/groff/1.18.1/font/devlbp/TB -#usr/share/groff/1.18.1/font/devlbp/TBI -#usr/share/groff/1.18.1/font/devlbp/TI -#usr/share/groff/1.18.1/font/devlbp/TR -#usr/share/groff/1.18.1/font/devlj4 -#usr/share/groff/1.18.1/font/devlj4/ALBB -#usr/share/groff/1.18.1/font/devlj4/ALBR -#usr/share/groff/1.18.1/font/devlj4/AOB -#usr/share/groff/1.18.1/font/devlj4/AOI -#usr/share/groff/1.18.1/font/devlj4/AOR -#usr/share/groff/1.18.1/font/devlj4/CB -#usr/share/groff/1.18.1/font/devlj4/CBI -#usr/share/groff/1.18.1/font/devlj4/CI -#usr/share/groff/1.18.1/font/devlj4/CLARENDON -#usr/share/groff/1.18.1/font/devlj4/CORONET -#usr/share/groff/1.18.1/font/devlj4/CR -#usr/share/groff/1.18.1/font/devlj4/DESC -#usr/share/groff/1.18.1/font/devlj4/GB -#usr/share/groff/1.18.1/font/devlj4/GBI -#usr/share/groff/1.18.1/font/devlj4/GI -#usr/share/groff/1.18.1/font/devlj4/GR -#usr/share/groff/1.18.1/font/devlj4/LGB -#usr/share/groff/1.18.1/font/devlj4/LGI -#usr/share/groff/1.18.1/font/devlj4/LGR -#usr/share/groff/1.18.1/font/devlj4/MARIGOLD -#usr/share/groff/1.18.1/font/devlj4/OB -#usr/share/groff/1.18.1/font/devlj4/OBI -#usr/share/groff/1.18.1/font/devlj4/OI -#usr/share/groff/1.18.1/font/devlj4/OR -#usr/share/groff/1.18.1/font/devlj4/S -#usr/share/groff/1.18.1/font/devlj4/TB -#usr/share/groff/1.18.1/font/devlj4/TBI -#usr/share/groff/1.18.1/font/devlj4/TI -#usr/share/groff/1.18.1/font/devlj4/TR -#usr/share/groff/1.18.1/font/devlj4/UB -#usr/share/groff/1.18.1/font/devlj4/UBI -#usr/share/groff/1.18.1/font/devlj4/UCB -#usr/share/groff/1.18.1/font/devlj4/UCBI -#usr/share/groff/1.18.1/font/devlj4/UCI -#usr/share/groff/1.18.1/font/devlj4/UCR -#usr/share/groff/1.18.1/font/devlj4/UI -#usr/share/groff/1.18.1/font/devlj4/UR -#usr/share/groff/1.18.1/font/devlj4/generate -#usr/share/groff/1.18.1/font/devlj4/generate/Makefile -#usr/share/groff/1.18.1/font/devlj4/generate/special.map -#usr/share/groff/1.18.1/font/devlj4/generate/text.map -#usr/share/groff/1.18.1/font/devnippon -#usr/share/groff/1.18.1/font/devnippon/B -#usr/share/groff/1.18.1/font/devnippon/BI -#usr/share/groff/1.18.1/font/devnippon/DESC -#usr/share/groff/1.18.1/font/devnippon/G -#usr/share/groff/1.18.1/font/devnippon/I -#usr/share/groff/1.18.1/font/devnippon/M -#usr/share/groff/1.18.1/font/devnippon/R -#usr/share/groff/1.18.1/font/devps -#usr/share/groff/1.18.1/font/devps/AB -#usr/share/groff/1.18.1/font/devps/ABI -#usr/share/groff/1.18.1/font/devps/AI -#usr/share/groff/1.18.1/font/devps/AR -#usr/share/groff/1.18.1/font/devps/BMB -#usr/share/groff/1.18.1/font/devps/BMBI -#usr/share/groff/1.18.1/font/devps/BMI -#usr/share/groff/1.18.1/font/devps/BMR -#usr/share/groff/1.18.1/font/devps/CB -#usr/share/groff/1.18.1/font/devps/CBI -#usr/share/groff/1.18.1/font/devps/CI -#usr/share/groff/1.18.1/font/devps/CR -#usr/share/groff/1.18.1/font/devps/DESC -#usr/share/groff/1.18.1/font/devps/G -#usr/share/groff/1.18.1/font/devps/HB -#usr/share/groff/1.18.1/font/devps/HBI -#usr/share/groff/1.18.1/font/devps/HI -#usr/share/groff/1.18.1/font/devps/HNB -#usr/share/groff/1.18.1/font/devps/HNBI -#usr/share/groff/1.18.1/font/devps/HNI -#usr/share/groff/1.18.1/font/devps/HNR -#usr/share/groff/1.18.1/font/devps/HR -#usr/share/groff/1.18.1/font/devps/M -#usr/share/groff/1.18.1/font/devps/NB -#usr/share/groff/1.18.1/font/devps/NBI -#usr/share/groff/1.18.1/font/devps/NI -#usr/share/groff/1.18.1/font/devps/NR -#usr/share/groff/1.18.1/font/devps/PB -#usr/share/groff/1.18.1/font/devps/PBI -#usr/share/groff/1.18.1/font/devps/PI -#usr/share/groff/1.18.1/font/devps/PR -#usr/share/groff/1.18.1/font/devps/S -#usr/share/groff/1.18.1/font/devps/SS -#usr/share/groff/1.18.1/font/devps/TB -#usr/share/groff/1.18.1/font/devps/TBI -#usr/share/groff/1.18.1/font/devps/TI -#usr/share/groff/1.18.1/font/devps/TR -#usr/share/groff/1.18.1/font/devps/ZCMI -#usr/share/groff/1.18.1/font/devps/ZD -#usr/share/groff/1.18.1/font/devps/ZDR -#usr/share/groff/1.18.1/font/devps/download -#usr/share/groff/1.18.1/font/devps/generate -#usr/share/groff/1.18.1/font/devps/generate/Makefile -#usr/share/groff/1.18.1/font/devps/generate/afmname -#usr/share/groff/1.18.1/font/devps/generate/dingbats.map -#usr/share/groff/1.18.1/font/devps/generate/dingbats.rmap -#usr/share/groff/1.18.1/font/devps/generate/lgreekmap -#usr/share/groff/1.18.1/font/devps/generate/symbol.sed -#usr/share/groff/1.18.1/font/devps/generate/symbolchars -#usr/share/groff/1.18.1/font/devps/generate/symbolsl.afm -#usr/share/groff/1.18.1/font/devps/generate/textmap -#usr/share/groff/1.18.1/font/devps/prologue -#usr/share/groff/1.18.1/font/devps/symbolsl.pfa -#usr/share/groff/1.18.1/font/devps/text.enc -#usr/share/groff/1.18.1/font/devps/zapfdr.pfa -#usr/share/groff/1.18.1/font/devutf8 -#usr/share/groff/1.18.1/font/devutf8/B -#usr/share/groff/1.18.1/font/devutf8/BI -#usr/share/groff/1.18.1/font/devutf8/DESC -#usr/share/groff/1.18.1/font/devutf8/G -#usr/share/groff/1.18.1/font/devutf8/I -#usr/share/groff/1.18.1/font/devutf8/M -#usr/share/groff/1.18.1/font/devutf8/R -#usr/share/groff/1.18.1/tmac -#usr/share/groff/1.18.1/tmac/X.tmac -#usr/share/groff/1.18.1/tmac/Xps.tmac -#usr/share/groff/1.18.1/tmac/a4.tmac -#usr/share/groff/1.18.1/tmac/an-old.tmac -#usr/share/groff/1.18.1/tmac/an.tmac -#usr/share/groff/1.18.1/tmac/andoc.tmac -#usr/share/groff/1.18.1/tmac/andocj.tmac -#usr/share/groff/1.18.1/tmac/big5.tmac -#usr/share/groff/1.18.1/tmac/cp1047.tmac -#usr/share/groff/1.18.1/tmac/doc-old.tmac -#usr/share/groff/1.18.1/tmac/doc.tmac -#usr/share/groff/1.18.1/tmac/docj.tmac -#usr/share/groff/1.18.1/tmac/dvi.tmac -#usr/share/groff/1.18.1/tmac/e.tmac -#usr/share/groff/1.18.1/tmac/ec.tmac -#usr/share/groff/1.18.1/tmac/eqnrc -#usr/share/groff/1.18.1/tmac/euc-jp.tmac -#usr/share/groff/1.18.1/tmac/gb.tmac -#usr/share/groff/1.18.1/tmac/html.tmac -#usr/share/groff/1.18.1/tmac/hyphen.us -#usr/share/groff/1.18.1/tmac/latin1.tmac -#usr/share/groff/1.18.1/tmac/lbp.tmac -#usr/share/groff/1.18.1/tmac/lj4.tmac -#usr/share/groff/1.18.1/tmac/m.tmac -#usr/share/groff/1.18.1/tmac/man.tmac -#usr/share/groff/1.18.1/tmac/mandoc.tmac -#usr/share/groff/1.18.1/tmac/mdoc -#usr/share/groff/1.18.1/tmac/mdoc.tmac -#usr/share/groff/1.18.1/tmac/mdoc/doc-common -#usr/share/groff/1.18.1/tmac/mdoc/doc-ditroff -#usr/share/groff/1.18.1/tmac/mdoc/doc-nroff -#usr/share/groff/1.18.1/tmac/mdoc/doc-syms -#usr/share/groff/1.18.1/tmac/mdoc/docj-ditroff -#usr/share/groff/1.18.1/tmac/mdoc/docj-nroff -#usr/share/groff/1.18.1/tmac/me.tmac -#usr/share/groff/1.18.1/tmac/mm -#usr/share/groff/1.18.1/tmac/mm.tmac -#usr/share/groff/1.18.1/tmac/mm/0.MT -#usr/share/groff/1.18.1/tmac/mm/4.MT -#usr/share/groff/1.18.1/tmac/mm/5.MT -#usr/share/groff/1.18.1/tmac/mm/locale -#usr/share/groff/1.18.1/tmac/mm/ms.cov -#usr/share/groff/1.18.1/tmac/mm/se_locale -#usr/share/groff/1.18.1/tmac/mm/se_ms.cov -#usr/share/groff/1.18.1/tmac/mmse.tmac -#usr/share/groff/1.18.1/tmac/mom.tmac -#usr/share/groff/1.18.1/tmac/ms.tmac -#usr/share/groff/1.18.1/tmac/mse.tmac -#usr/share/groff/1.18.1/tmac/om.tmac -#usr/share/groff/1.18.1/tmac/pic.tmac -#usr/share/groff/1.18.1/tmac/ps.tmac -#usr/share/groff/1.18.1/tmac/psatk.tmac -#usr/share/groff/1.18.1/tmac/psold.tmac -#usr/share/groff/1.18.1/tmac/pspic.tmac -#usr/share/groff/1.18.1/tmac/s.tmac -#usr/share/groff/1.18.1/tmac/safer.tmac -#usr/share/groff/1.18.1/tmac/trace.tmac -#usr/share/groff/1.18.1/tmac/troffrc -#usr/share/groff/1.18.1/tmac/troffrc-end -#usr/share/groff/1.18.1/tmac/tty-char.tmac -#usr/share/groff/1.18.1/tmac/tty.tmac -#usr/share/groff/1.18.1/tmac/www.tmac +#usr/share/groff/1.21 +#usr/share/groff/1.21/eign +#usr/share/groff/1.21/font +#usr/share/groff/1.21/font/devascii +#usr/share/groff/1.21/font/devascii/B +#usr/share/groff/1.21/font/devascii/BI +#usr/share/groff/1.21/font/devascii/DESC +#usr/share/groff/1.21/font/devascii/I +#usr/share/groff/1.21/font/devascii/R +#usr/share/groff/1.21/font/devdvi +#usr/share/groff/1.21/font/devdvi/CW +#usr/share/groff/1.21/font/devdvi/CWEC +#usr/share/groff/1.21/font/devdvi/CWI +#usr/share/groff/1.21/font/devdvi/CWIEC +#usr/share/groff/1.21/font/devdvi/CWITC +#usr/share/groff/1.21/font/devdvi/CWTC +#usr/share/groff/1.21/font/devdvi/DESC +#usr/share/groff/1.21/font/devdvi/EX +#usr/share/groff/1.21/font/devdvi/HB +#usr/share/groff/1.21/font/devdvi/HBEC +#usr/share/groff/1.21/font/devdvi/HBI +#usr/share/groff/1.21/font/devdvi/HBIEC +#usr/share/groff/1.21/font/devdvi/HBITC +#usr/share/groff/1.21/font/devdvi/HBTC +#usr/share/groff/1.21/font/devdvi/HI +#usr/share/groff/1.21/font/devdvi/HIEC +#usr/share/groff/1.21/font/devdvi/HITC +#usr/share/groff/1.21/font/devdvi/HR +#usr/share/groff/1.21/font/devdvi/HREC +#usr/share/groff/1.21/font/devdvi/HRTC +#usr/share/groff/1.21/font/devdvi/MI +#usr/share/groff/1.21/font/devdvi/S +#usr/share/groff/1.21/font/devdvi/SA +#usr/share/groff/1.21/font/devdvi/SB +#usr/share/groff/1.21/font/devdvi/SC +#usr/share/groff/1.21/font/devdvi/TB +#usr/share/groff/1.21/font/devdvi/TBEC +#usr/share/groff/1.21/font/devdvi/TBI +#usr/share/groff/1.21/font/devdvi/TBIEC +#usr/share/groff/1.21/font/devdvi/TBITC +#usr/share/groff/1.21/font/devdvi/TBTC +#usr/share/groff/1.21/font/devdvi/TI +#usr/share/groff/1.21/font/devdvi/TIEC +#usr/share/groff/1.21/font/devdvi/TITC +#usr/share/groff/1.21/font/devdvi/TR +#usr/share/groff/1.21/font/devdvi/TREC +#usr/share/groff/1.21/font/devdvi/TRTC +#usr/share/groff/1.21/font/devdvi/generate +#usr/share/groff/1.21/font/devdvi/generate/CompileFonts +#usr/share/groff/1.21/font/devdvi/generate/Makefile +#usr/share/groff/1.21/font/devdvi/generate/ec.map +#usr/share/groff/1.21/font/devdvi/generate/msam.map +#usr/share/groff/1.21/font/devdvi/generate/msbm.map +#usr/share/groff/1.21/font/devdvi/generate/tc.map +#usr/share/groff/1.21/font/devdvi/generate/texb.map +#usr/share/groff/1.21/font/devdvi/generate/texex.map +#usr/share/groff/1.21/font/devdvi/generate/texi.map +#usr/share/groff/1.21/font/devdvi/generate/texmi.map +#usr/share/groff/1.21/font/devdvi/generate/texr.map +#usr/share/groff/1.21/font/devdvi/generate/texsy.map +#usr/share/groff/1.21/font/devdvi/generate/textex.map +#usr/share/groff/1.21/font/devdvi/generate/textt.map +#usr/share/groff/1.21/font/devhtml +#usr/share/groff/1.21/font/devhtml/B +#usr/share/groff/1.21/font/devhtml/BI +#usr/share/groff/1.21/font/devhtml/CB +#usr/share/groff/1.21/font/devhtml/CBI +#usr/share/groff/1.21/font/devhtml/CI +#usr/share/groff/1.21/font/devhtml/CR +#usr/share/groff/1.21/font/devhtml/DESC +#usr/share/groff/1.21/font/devhtml/I +#usr/share/groff/1.21/font/devhtml/R +#usr/share/groff/1.21/font/devhtml/S +#usr/share/groff/1.21/font/devlatin1 +#usr/share/groff/1.21/font/devlatin1/B +#usr/share/groff/1.21/font/devlatin1/BI +#usr/share/groff/1.21/font/devlatin1/DESC +#usr/share/groff/1.21/font/devlatin1/I +#usr/share/groff/1.21/font/devlatin1/R +#usr/share/groff/1.21/font/devlbp +#usr/share/groff/1.21/font/devlbp/CB +#usr/share/groff/1.21/font/devlbp/CI +#usr/share/groff/1.21/font/devlbp/CR +#usr/share/groff/1.21/font/devlbp/DESC +#usr/share/groff/1.21/font/devlbp/EB +#usr/share/groff/1.21/font/devlbp/EI +#usr/share/groff/1.21/font/devlbp/ER +#usr/share/groff/1.21/font/devlbp/HB +#usr/share/groff/1.21/font/devlbp/HBI +#usr/share/groff/1.21/font/devlbp/HI +#usr/share/groff/1.21/font/devlbp/HNB +#usr/share/groff/1.21/font/devlbp/HNBI +#usr/share/groff/1.21/font/devlbp/HNI +#usr/share/groff/1.21/font/devlbp/HNR +#usr/share/groff/1.21/font/devlbp/HR +#usr/share/groff/1.21/font/devlbp/TB +#usr/share/groff/1.21/font/devlbp/TBI +#usr/share/groff/1.21/font/devlbp/TI +#usr/share/groff/1.21/font/devlbp/TR +#usr/share/groff/1.21/font/devlj4 +#usr/share/groff/1.21/font/devlj4/AB +#usr/share/groff/1.21/font/devlj4/ABI +#usr/share/groff/1.21/font/devlj4/AI +#usr/share/groff/1.21/font/devlj4/ALBB +#usr/share/groff/1.21/font/devlj4/ALBR +#usr/share/groff/1.21/font/devlj4/AOB +#usr/share/groff/1.21/font/devlj4/AOI +#usr/share/groff/1.21/font/devlj4/AOR +#usr/share/groff/1.21/font/devlj4/AR +#usr/share/groff/1.21/font/devlj4/CB +#usr/share/groff/1.21/font/devlj4/CBI +#usr/share/groff/1.21/font/devlj4/CI +#usr/share/groff/1.21/font/devlj4/CLARENDON +#usr/share/groff/1.21/font/devlj4/CORONET +#usr/share/groff/1.21/font/devlj4/CR +#usr/share/groff/1.21/font/devlj4/DESC +#usr/share/groff/1.21/font/devlj4/GB +#usr/share/groff/1.21/font/devlj4/GBI +#usr/share/groff/1.21/font/devlj4/GI +#usr/share/groff/1.21/font/devlj4/GR +#usr/share/groff/1.21/font/devlj4/LGB +#usr/share/groff/1.21/font/devlj4/LGI +#usr/share/groff/1.21/font/devlj4/LGR +#usr/share/groff/1.21/font/devlj4/MARIGOLD +#usr/share/groff/1.21/font/devlj4/OB +#usr/share/groff/1.21/font/devlj4/OBI +#usr/share/groff/1.21/font/devlj4/OI +#usr/share/groff/1.21/font/devlj4/OR +#usr/share/groff/1.21/font/devlj4/S +#usr/share/groff/1.21/font/devlj4/SYMBOL +#usr/share/groff/1.21/font/devlj4/TB +#usr/share/groff/1.21/font/devlj4/TBI +#usr/share/groff/1.21/font/devlj4/TI +#usr/share/groff/1.21/font/devlj4/TNRB +#usr/share/groff/1.21/font/devlj4/TNRBI +#usr/share/groff/1.21/font/devlj4/TNRI +#usr/share/groff/1.21/font/devlj4/TNRR +#usr/share/groff/1.21/font/devlj4/TR +#usr/share/groff/1.21/font/devlj4/UB +#usr/share/groff/1.21/font/devlj4/UBI +#usr/share/groff/1.21/font/devlj4/UCB +#usr/share/groff/1.21/font/devlj4/UCBI +#usr/share/groff/1.21/font/devlj4/UCI +#usr/share/groff/1.21/font/devlj4/UCR +#usr/share/groff/1.21/font/devlj4/UI +#usr/share/groff/1.21/font/devlj4/UR +#usr/share/groff/1.21/font/devlj4/WINGDINGS +#usr/share/groff/1.21/font/devlj4/generate +#usr/share/groff/1.21/font/devlj4/generate/Makefile +#usr/share/groff/1.21/font/devlj4/generate/special.awk +#usr/share/groff/1.21/font/devlj4/generate/special.map +#usr/share/groff/1.21/font/devlj4/generate/symbol.map +#usr/share/groff/1.21/font/devlj4/generate/text.map +#usr/share/groff/1.21/font/devlj4/generate/wingdings.map +#usr/share/groff/1.21/font/devps +#usr/share/groff/1.21/font/devps/AB +#usr/share/groff/1.21/font/devps/ABI +#usr/share/groff/1.21/font/devps/AI +#usr/share/groff/1.21/font/devps/AR +#usr/share/groff/1.21/font/devps/BMB +#usr/share/groff/1.21/font/devps/BMBI +#usr/share/groff/1.21/font/devps/BMI +#usr/share/groff/1.21/font/devps/BMR +#usr/share/groff/1.21/font/devps/CB +#usr/share/groff/1.21/font/devps/CBI +#usr/share/groff/1.21/font/devps/CI +#usr/share/groff/1.21/font/devps/CR +#usr/share/groff/1.21/font/devps/DESC +#usr/share/groff/1.21/font/devps/EURO +#usr/share/groff/1.21/font/devps/HB +#usr/share/groff/1.21/font/devps/HBI +#usr/share/groff/1.21/font/devps/HI +#usr/share/groff/1.21/font/devps/HNB +#usr/share/groff/1.21/font/devps/HNBI +#usr/share/groff/1.21/font/devps/HNI +#usr/share/groff/1.21/font/devps/HNR +#usr/share/groff/1.21/font/devps/HR +#usr/share/groff/1.21/font/devps/NB +#usr/share/groff/1.21/font/devps/NBI +#usr/share/groff/1.21/font/devps/NI +#usr/share/groff/1.21/font/devps/NR +#usr/share/groff/1.21/font/devps/PB +#usr/share/groff/1.21/font/devps/PBI +#usr/share/groff/1.21/font/devps/PI +#usr/share/groff/1.21/font/devps/PR +#usr/share/groff/1.21/font/devps/S +#usr/share/groff/1.21/font/devps/SS +#usr/share/groff/1.21/font/devps/TB +#usr/share/groff/1.21/font/devps/TBI +#usr/share/groff/1.21/font/devps/TI +#usr/share/groff/1.21/font/devps/TR +#usr/share/groff/1.21/font/devps/ZCMI +#usr/share/groff/1.21/font/devps/ZD +#usr/share/groff/1.21/font/devps/ZDR +#usr/share/groff/1.21/font/devps/download +#usr/share/groff/1.21/font/devps/freeeuro.afm +#usr/share/groff/1.21/font/devps/freeeuro.pfa +#usr/share/groff/1.21/font/devps/generate +#usr/share/groff/1.21/font/devps/generate/Makefile +#usr/share/groff/1.21/font/devps/generate/afmname +#usr/share/groff/1.21/font/devps/generate/dingbats.map +#usr/share/groff/1.21/font/devps/generate/dingbats.rmap +#usr/share/groff/1.21/font/devps/generate/lgreekmap +#usr/share/groff/1.21/font/devps/generate/symbol.sed +#usr/share/groff/1.21/font/devps/generate/symbolchars +#usr/share/groff/1.21/font/devps/generate/symbolsl.afm +#usr/share/groff/1.21/font/devps/generate/textmap +#usr/share/groff/1.21/font/devps/prologue +#usr/share/groff/1.21/font/devps/symbolsl.pfa +#usr/share/groff/1.21/font/devps/text.enc +#usr/share/groff/1.21/font/devps/zapfdr.pfa +#usr/share/groff/1.21/font/devutf8 +#usr/share/groff/1.21/font/devutf8/B +#usr/share/groff/1.21/font/devutf8/BI +#usr/share/groff/1.21/font/devutf8/DESC +#usr/share/groff/1.21/font/devutf8/I +#usr/share/groff/1.21/font/devutf8/R +#usr/share/groff/1.21/oldfont +#usr/share/groff/1.21/oldfont/devps +#usr/share/groff/1.21/oldfont/devps/CB +#usr/share/groff/1.21/oldfont/devps/CBI +#usr/share/groff/1.21/oldfont/devps/CI +#usr/share/groff/1.21/oldfont/devps/CR +#usr/share/groff/1.21/oldfont/devps/HB +#usr/share/groff/1.21/oldfont/devps/HBI +#usr/share/groff/1.21/oldfont/devps/HI +#usr/share/groff/1.21/oldfont/devps/HNB +#usr/share/groff/1.21/oldfont/devps/HNBI +#usr/share/groff/1.21/oldfont/devps/HNI +#usr/share/groff/1.21/oldfont/devps/HNR +#usr/share/groff/1.21/oldfont/devps/HR +#usr/share/groff/1.21/oldfont/devps/NB +#usr/share/groff/1.21/oldfont/devps/NBI +#usr/share/groff/1.21/oldfont/devps/NI +#usr/share/groff/1.21/oldfont/devps/NR +#usr/share/groff/1.21/oldfont/devps/PB +#usr/share/groff/1.21/oldfont/devps/PBI +#usr/share/groff/1.21/oldfont/devps/PI +#usr/share/groff/1.21/oldfont/devps/PR +#usr/share/groff/1.21/oldfont/devps/S +#usr/share/groff/1.21/oldfont/devps/SS +#usr/share/groff/1.21/oldfont/devps/TB +#usr/share/groff/1.21/oldfont/devps/TBI +#usr/share/groff/1.21/oldfont/devps/TI +#usr/share/groff/1.21/oldfont/devps/TR +#usr/share/groff/1.21/oldfont/devps/symbol.afm +#usr/share/groff/1.21/oldfont/devps/symbolsl.afm +#usr/share/groff/1.21/oldfont/devps/zapfdr.afm +#usr/share/groff/1.21/oldfont/devps/zapfdr.ps +#usr/share/groff/1.21/pic +#usr/share/groff/1.21/pic/chem.pic +#usr/share/groff/1.21/tmac +#usr/share/groff/1.21/tmac/62bit.tmac +#usr/share/groff/1.21/tmac/X.tmac +#usr/share/groff/1.21/tmac/Xps.tmac +#usr/share/groff/1.21/tmac/a4.tmac +#usr/share/groff/1.21/tmac/an-ext.tmac +#usr/share/groff/1.21/tmac/an-old.tmac +#usr/share/groff/1.21/tmac/an.tmac +#usr/share/groff/1.21/tmac/andoc.tmac +#usr/share/groff/1.21/tmac/composite.tmac +#usr/share/groff/1.21/tmac/cp1047.tmac +#usr/share/groff/1.21/tmac/cs.tmac +#usr/share/groff/1.21/tmac/de.tmac +#usr/share/groff/1.21/tmac/den.tmac +#usr/share/groff/1.21/tmac/devtag.tmac +#usr/share/groff/1.21/tmac/doc-old.tmac +#usr/share/groff/1.21/tmac/doc.tmac +#usr/share/groff/1.21/tmac/dvi.tmac +#usr/share/groff/1.21/tmac/e.tmac +#usr/share/groff/1.21/tmac/ec.tmac +#usr/share/groff/1.21/tmac/eqnrc +#usr/share/groff/1.21/tmac/europs.tmac +#usr/share/groff/1.21/tmac/fr.tmac +#usr/share/groff/1.21/tmac/hdmisc.tmac +#usr/share/groff/1.21/tmac/hdtbl.tmac +#usr/share/groff/1.21/tmac/html-end.tmac +#usr/share/groff/1.21/tmac/html.tmac +#usr/share/groff/1.21/tmac/hyphen.cs +#usr/share/groff/1.21/tmac/hyphen.den +#usr/share/groff/1.21/tmac/hyphen.det +#usr/share/groff/1.21/tmac/hyphen.fr +#usr/share/groff/1.21/tmac/hyphen.sv +#usr/share/groff/1.21/tmac/hyphen.us +#usr/share/groff/1.21/tmac/hyphenex.cs +#usr/share/groff/1.21/tmac/hyphenex.det +#usr/share/groff/1.21/tmac/hyphenex.us +#usr/share/groff/1.21/tmac/ja.tmac +#usr/share/groff/1.21/tmac/latin1.tmac +#usr/share/groff/1.21/tmac/latin2.tmac +#usr/share/groff/1.21/tmac/latin5.tmac +#usr/share/groff/1.21/tmac/latin9.tmac +#usr/share/groff/1.21/tmac/lbp.tmac +#usr/share/groff/1.21/tmac/lj4.tmac +#usr/share/groff/1.21/tmac/m.tmac +#usr/share/groff/1.21/tmac/man.tmac +#usr/share/groff/1.21/tmac/mandoc.tmac +#usr/share/groff/1.21/tmac/mdoc +#usr/share/groff/1.21/tmac/mdoc.tmac +#usr/share/groff/1.21/tmac/mdoc/doc-common +#usr/share/groff/1.21/tmac/mdoc/doc-ditroff +#usr/share/groff/1.21/tmac/mdoc/doc-nroff +#usr/share/groff/1.21/tmac/mdoc/doc-syms +#usr/share/groff/1.21/tmac/me.tmac +#usr/share/groff/1.21/tmac/mm +#usr/share/groff/1.21/tmac/mm.tmac +#usr/share/groff/1.21/tmac/mm/0.MT +#usr/share/groff/1.21/tmac/mm/4.MT +#usr/share/groff/1.21/tmac/mm/5.MT +#usr/share/groff/1.21/tmac/mm/locale +#usr/share/groff/1.21/tmac/mm/ms.cov +#usr/share/groff/1.21/tmac/mm/se_locale +#usr/share/groff/1.21/tmac/mm/se_ms.cov +#usr/share/groff/1.21/tmac/mmse.tmac +#usr/share/groff/1.21/tmac/mom.tmac +#usr/share/groff/1.21/tmac/ms.tmac +#usr/share/groff/1.21/tmac/mse.tmac +#usr/share/groff/1.21/tmac/om.tmac +#usr/share/groff/1.21/tmac/papersize.tmac +#usr/share/groff/1.21/tmac/pdfmark.tmac +#usr/share/groff/1.21/tmac/pic.tmac +#usr/share/groff/1.21/tmac/ps.tmac +#usr/share/groff/1.21/tmac/psatk.tmac +#usr/share/groff/1.21/tmac/psold.tmac +#usr/share/groff/1.21/tmac/pspic.tmac +#usr/share/groff/1.21/tmac/s.tmac +#usr/share/groff/1.21/tmac/safer.tmac +#usr/share/groff/1.21/tmac/spdf.tmac +#usr/share/groff/1.21/tmac/sv.tmac +#usr/share/groff/1.21/tmac/trace.tmac +#usr/share/groff/1.21/tmac/trans.tmac +#usr/share/groff/1.21/tmac/troffrc +#usr/share/groff/1.21/tmac/troffrc-end +#usr/share/groff/1.21/tmac/tty-char.tmac +#usr/share/groff/1.21/tmac/tty.tmac +#usr/share/groff/1.21/tmac/unicode.tmac +#usr/share/groff/1.21/tmac/www.tmac +#usr/share/groff/current +#usr/share/groff/site-font #usr/share/groff/site-tmac #usr/share/groff/site-tmac/man.local #usr/share/groff/site-tmac/mdoc.local +#usr/share/info/groff.info +#usr/share/info/groff.info-1 +#usr/share/info/groff.info-2 +#usr/share/info/groff.info-3 +#usr/share/man/man1/addftinfo.1 +#usr/share/man/man1/afmtodit.1 +#usr/share/man/man1/chem.1 +#usr/share/man/man1/eqn.1 +#usr/share/man/man1/eqn2graph.1 +#usr/share/man/man1/gdiffmk.1 +#usr/share/man/man1/grap2graph.1 +#usr/share/man/man1/grn.1 +#usr/share/man/man1/grodvi.1 +#usr/share/man/man1/groff.1 +#usr/share/man/man1/groffer.1 +#usr/share/man/man1/grog.1 +#usr/share/man/man1/grohtml.1 +#usr/share/man/man1/grolbp.1 +#usr/share/man/man1/grolj4.1 +#usr/share/man/man1/grops.1 +#usr/share/man/man1/grotty.1 +#usr/share/man/man1/hpftodit.1 +#usr/share/man/man1/indxbib.1 +#usr/share/man/man1/lkbib.1 +#usr/share/man/man1/lookbib.1 +#usr/share/man/man1/mmroff.1 +#usr/share/man/man1/neqn.1 +#usr/share/man/man1/nroff.1 +#usr/share/man/man1/pdfroff.1 +#usr/share/man/man1/pfbtops.1 +#usr/share/man/man1/pic.1 +#usr/share/man/man1/pic2graph.1 +#usr/share/man/man1/preconv.1 +#usr/share/man/man1/refer.1 +#usr/share/man/man1/roff2dvi.1 +#usr/share/man/man1/roff2html.1 +#usr/share/man/man1/roff2pdf.1 +#usr/share/man/man1/roff2ps.1 +#usr/share/man/man1/roff2text.1 +#usr/share/man/man1/roff2x.1 +#usr/share/man/man1/soelim.1 +#usr/share/man/man1/tbl.1 +#usr/share/man/man1/tfmtodit.1 +#usr/share/man/man1/troff.1 +#usr/share/man/man5/groff_font.5 +#usr/share/man/man5/groff_out.5 +#usr/share/man/man5/groff_tmac.5 +#usr/share/man/man5/lj4_font.5 +#usr/share/man/man7/ditroff.7 +#usr/share/man/man7/groff.7 +#usr/share/man/man7/groff_char.7 +#usr/share/man/man7/groff_diff.7 +#usr/share/man/man7/groff_hdtbl.7 +#usr/share/man/man7/groff_man.7 +#usr/share/man/man7/groff_mdoc.7 +#usr/share/man/man7/groff_me.7 +#usr/share/man/man7/groff_mm.7 +#usr/share/man/man7/groff_mmse.7 +#usr/share/man/man7/groff_mom.7 +#usr/share/man/man7/groff_ms.7 +#usr/share/man/man7/groff_trace.7 +#usr/share/man/man7/groff_www.7 +#usr/share/man/man7/roff.7 diff --git a/config/rootfiles/common/initscripts b/config/rootfiles/common/initscripts index 58bbf8c..9393aec 100644 --- a/config/rootfiles/common/initscripts +++ b/config/rootfiles/common/initscripts @@ -110,6 +110,7 @@ etc/rc.d/init.d/snort etc/rc.d/init.d/squid etc/rc.d/init.d/sshd #etc/rc.d/init.d/sslh +etc/rc.d/init.d/static-routes etc/rc.d/init.d/swap etc/rc.d/init.d/sysctl etc/rc.d/init.d/sysklogd diff --git a/config/rootfiles/common/misc-progs b/config/rootfiles/common/misc-progs index 6e5d7ca..adab51b 100644 --- a/config/rootfiles/common/misc-progs +++ b/config/rootfiles/common/misc-progs @@ -18,6 +18,7 @@ usr/local/bin/outgoingfwctrl usr/local/bin/pakfire usr/local/bin/qosctrl usr/local/bin/rebuildhosts +usr/local/bin/rebuildroutes usr/local/bin/redctrl #usr/local/bin/sambactrl usr/local/bin/setaliases diff --git a/config/rootfiles/common/openvpn b/config/rootfiles/common/openvpn index 23742b3..0f2aa47 100644 --- a/config/rootfiles/common/openvpn +++ b/config/rootfiles/common/openvpn @@ -1,6 +1,8 @@ lib/openvpn-auth-pam.so +lib/openvpn-down-root.so usr/sbin/openvpn #usr/share/doc/openvpn +#usr/share/doc/openvpn/management-notes.txt #usr/share/man/man8/openvpn.8 var/ipfire/ovpn var/ipfire/ovpn/ca @@ -9,9 +11,10 @@ var/ipfire/ovpn/caconfig var/ipfire/ovpn/certs/index.txt var/ipfire/ovpn/certs/serial var/ipfire/ovpn/crls +var/ipfire/ovpn/n2nconf #var/ipfire/ovpn/openssl var/ipfire/ovpn/openssl/ovpn.cnf +var/ipfire/ovpn/ovpn-leases.db var/ipfire/ovpn/ovpnconfig var/ipfire/ovpn/settings var/ipfire/ovpn/verify -var/ipfire/ovpn/ovpn-leases.db diff --git a/config/rootfiles/common/strongswan b/config/rootfiles/common/strongswan index df093b0..c7d4bbd 100644 --- a/config/rootfiles/common/strongswan +++ b/config/rootfiles/common/strongswan @@ -10,21 +10,21 @@ etc/ipsec.d/private etc/ipsec.d/reqs etc/ipsec.secrets etc/strongswan.conf -#usr/lib/libcharon.a -#usr/lib/libcharon.la -usr/lib/libcharon.so -usr/lib/libcharon.so.0 -usr/lib/libcharon.so.0.0.0 -#usr/lib/libhydra.a -#usr/lib/libhydra.la -usr/lib/libhydra.so -usr/lib/libhydra.so.0 -usr/lib/libhydra.so.0.0.0 -#usr/lib/libstrongswan.a -#usr/lib/libstrongswan.la -usr/lib/libstrongswan.so -usr/lib/libstrongswan.so.0 -usr/lib/libstrongswan.so.0.0.0 +#usr/lib/ipsec/libcharon.a +#usr/lib/ipsec/libcharon.la +usr/lib/ipsec/libcharon.so +usr/lib/ipsec/libcharon.so.0 +usr/lib/ipsec/libcharon.so.0.0.0 +#usr/lib/ipsec/libhydra.a +#usr/lib/ipsec/libhydra.la +usr/lib/ipsec/libhydra.so +usr/lib/ipsec/libhydra.so.0 +usr/lib/ipsec/libhydra.so.0.0.0 +#usr/lib/ipsec/libstrongswan.a +#usr/lib/ipsec/libstrongswan.la +usr/lib/ipsec/libstrongswan.so +usr/lib/ipsec/libstrongswan.so.0 +usr/lib/ipsec/libstrongswan.so.0.0.0 #usr/libexec/ipsec usr/libexec/ipsec/_copyright usr/libexec/ipsec/_pluto_adns @@ -33,82 +33,86 @@ usr/libexec/ipsec/_updown_espmark usr/libexec/ipsec/charon usr/libexec/ipsec/openac usr/libexec/ipsec/pki -#usr/libexec/ipsec/plugins -#usr/libexec/ipsec/plugins/libstrongswan-aes.a -#usr/libexec/ipsec/plugins/libstrongswan-aes.la -usr/libexec/ipsec/plugins/libstrongswan-aes.so -#usr/libexec/ipsec/plugins/libstrongswan-attr.a -#usr/libexec/ipsec/plugins/libstrongswan-attr.la -usr/libexec/ipsec/plugins/libstrongswan-attr.so -#usr/libexec/ipsec/plugins/libstrongswan-curl.a -#usr/libexec/ipsec/plugins/libstrongswan-curl.la -usr/libexec/ipsec/plugins/libstrongswan-curl.so -#usr/libexec/ipsec/plugins/libstrongswan-des.a -#usr/libexec/ipsec/plugins/libstrongswan-des.la -usr/libexec/ipsec/plugins/libstrongswan-des.so -#usr/libexec/ipsec/plugins/libstrongswan-dnskey.a -#usr/libexec/ipsec/plugins/libstrongswan-dnskey.la -usr/libexec/ipsec/plugins/libstrongswan-dnskey.so -#usr/libexec/ipsec/plugins/libstrongswan-fips-prf.a -#usr/libexec/ipsec/plugins/libstrongswan-fips-prf.la -usr/libexec/ipsec/plugins/libstrongswan-fips-prf.so -#usr/libexec/ipsec/plugins/libstrongswan-gmp.a -#usr/libexec/ipsec/plugins/libstrongswan-gmp.la -usr/libexec/ipsec/plugins/libstrongswan-gmp.so -#usr/libexec/ipsec/plugins/libstrongswan-hmac.a -#usr/libexec/ipsec/plugins/libstrongswan-hmac.la -usr/libexec/ipsec/plugins/libstrongswan-hmac.so -#usr/libexec/ipsec/plugins/libstrongswan-kernel-netlink.a -#usr/libexec/ipsec/plugins/libstrongswan-kernel-netlink.la -usr/libexec/ipsec/plugins/libstrongswan-kernel-netlink.so -#usr/libexec/ipsec/plugins/libstrongswan-md5.a -#usr/libexec/ipsec/plugins/libstrongswan-md5.la -usr/libexec/ipsec/plugins/libstrongswan-md5.so -#usr/libexec/ipsec/plugins/libstrongswan-pem.a -#usr/libexec/ipsec/plugins/libstrongswan-pem.la -usr/libexec/ipsec/plugins/libstrongswan-pem.so -#usr/libexec/ipsec/plugins/libstrongswan-pgp.a -#usr/libexec/ipsec/plugins/libstrongswan-pgp.la -usr/libexec/ipsec/plugins/libstrongswan-pgp.so -#usr/libexec/ipsec/plugins/libstrongswan-pkcs1.a -#usr/libexec/ipsec/plugins/libstrongswan-pkcs1.la -usr/libexec/ipsec/plugins/libstrongswan-pkcs1.so -#usr/libexec/ipsec/plugins/libstrongswan-pubkey.a -#usr/libexec/ipsec/plugins/libstrongswan-pubkey.la -usr/libexec/ipsec/plugins/libstrongswan-pubkey.so -#usr/libexec/ipsec/plugins/libstrongswan-random.a -#usr/libexec/ipsec/plugins/libstrongswan-random.la -usr/libexec/ipsec/plugins/libstrongswan-random.so -#usr/libexec/ipsec/plugins/libstrongswan-resolve.a -#usr/libexec/ipsec/plugins/libstrongswan-resolve.la -usr/libexec/ipsec/plugins/libstrongswan-resolve.so -#usr/libexec/ipsec/plugins/libstrongswan-revocation.a -#usr/libexec/ipsec/plugins/libstrongswan-revocation.la -usr/libexec/ipsec/plugins/libstrongswan-revocation.so -#usr/libexec/ipsec/plugins/libstrongswan-sha1.a -#usr/libexec/ipsec/plugins/libstrongswan-sha1.la -usr/libexec/ipsec/plugins/libstrongswan-sha1.so -#usr/libexec/ipsec/plugins/libstrongswan-sha2.a -#usr/libexec/ipsec/plugins/libstrongswan-sha2.la -usr/libexec/ipsec/plugins/libstrongswan-sha2.so -#usr/libexec/ipsec/plugins/libstrongswan-socket-raw.a -#usr/libexec/ipsec/plugins/libstrongswan-socket-raw.la -usr/libexec/ipsec/plugins/libstrongswan-socket-raw.so -#usr/libexec/ipsec/plugins/libstrongswan-stroke.a -#usr/libexec/ipsec/plugins/libstrongswan-stroke.la -usr/libexec/ipsec/plugins/libstrongswan-stroke.so -#usr/libexec/ipsec/plugins/libstrongswan-updown.a -#usr/libexec/ipsec/plugins/libstrongswan-updown.la -usr/libexec/ipsec/plugins/libstrongswan-updown.so -#usr/libexec/ipsec/plugins/libstrongswan-x509.a -#usr/libexec/ipsec/plugins/libstrongswan-x509.la -usr/libexec/ipsec/plugins/libstrongswan-x509.so -#usr/libexec/ipsec/plugins/libstrongswan-xauth.a -#usr/libexec/ipsec/plugins/libstrongswan-xauth.la -usr/libexec/ipsec/plugins/libstrongswan-xauth.so -#usr/libexec/ipsec/plugins/libstrongswan-xcbc.a -#usr/libexec/ipsec/plugins/libstrongswan-xcbc.la -usr/libexec/ipsec/plugins/libstrongswan-xcbc.so +#usr/lib/ipsec +#usr/lib/ipsec/plugins +#usr/lib/ipsec/plugins/libstrongswan-aes.a +#usr/lib/ipsec/plugins/libstrongswan-aes.la +usr/lib/ipsec/plugins/libstrongswan-aes.so +#usr/lib/ipsec/plugins/libstrongswan-attr.a +#usr/lib/ipsec/plugins/libstrongswan-attr.la +usr/lib/ipsec/plugins/libstrongswan-attr.so +#usr/lib/ipsec/plugins/libstrongswan-constraints.a +#usr/lib/ipsec/plugins/libstrongswan-constraints.la +usr/lib/ipsec/plugins/libstrongswan-constraints.so +#usr/lib/ipsec/plugins/libstrongswan-curl.a +#usr/lib/ipsec/plugins/libstrongswan-curl.la +usr/lib/ipsec/plugins/libstrongswan-curl.so +#usr/lib/ipsec/plugins/libstrongswan-des.a +#usr/lib/ipsec/plugins/libstrongswan-des.la +usr/lib/ipsec/plugins/libstrongswan-des.so +#usr/lib/ipsec/plugins/libstrongswan-dnskey.a +#usr/lib/ipsec/plugins/libstrongswan-dnskey.la +usr/lib/ipsec/plugins/libstrongswan-dnskey.so +#usr/lib/ipsec/plugins/libstrongswan-fips-prf.a +#usr/lib/ipsec/plugins/libstrongswan-fips-prf.la +usr/lib/ipsec/plugins/libstrongswan-fips-prf.so +#usr/lib/ipsec/plugins/libstrongswan-gmp.a +#usr/lib/ipsec/plugins/libstrongswan-gmp.la +usr/lib/ipsec/plugins/libstrongswan-gmp.so +#usr/lib/ipsec/plugins/libstrongswan-hmac.a +#usr/lib/ipsec/plugins/libstrongswan-hmac.la +usr/lib/ipsec/plugins/libstrongswan-hmac.so +#usr/lib/ipsec/plugins/libstrongswan-kernel-netlink.a +#usr/lib/ipsec/plugins/libstrongswan-kernel-netlink.la +usr/lib/ipsec/plugins/libstrongswan-kernel-netlink.so +#usr/lib/ipsec/plugins/libstrongswan-md5.a +#usr/lib/ipsec/plugins/libstrongswan-md5.la +usr/lib/ipsec/plugins/libstrongswan-md5.so +#usr/lib/ipsec/plugins/libstrongswan-pem.a +#usr/lib/ipsec/plugins/libstrongswan-pem.la +usr/lib/ipsec/plugins/libstrongswan-pem.so +#usr/lib/ipsec/plugins/libstrongswan-pgp.a +#usr/lib/ipsec/plugins/libstrongswan-pgp.la +usr/lib/ipsec/plugins/libstrongswan-pgp.so +#usr/lib/ipsec/plugins/libstrongswan-pkcs1.a +#usr/lib/ipsec/plugins/libstrongswan-pkcs1.la +usr/lib/ipsec/plugins/libstrongswan-pkcs1.so +#usr/lib/ipsec/plugins/libstrongswan-pubkey.a +#usr/lib/ipsec/plugins/libstrongswan-pubkey.la +usr/lib/ipsec/plugins/libstrongswan-pubkey.so +#usr/lib/ipsec/plugins/libstrongswan-random.a +#usr/lib/ipsec/plugins/libstrongswan-random.la +usr/lib/ipsec/plugins/libstrongswan-random.so +#usr/lib/ipsec/plugins/libstrongswan-resolve.a +#usr/lib/ipsec/plugins/libstrongswan-resolve.la +usr/lib/ipsec/plugins/libstrongswan-resolve.so +#usr/lib/ipsec/plugins/libstrongswan-revocation.a +#usr/lib/ipsec/plugins/libstrongswan-revocation.la +usr/lib/ipsec/plugins/libstrongswan-revocation.so +#usr/lib/ipsec/plugins/libstrongswan-sha1.a +#usr/lib/ipsec/plugins/libstrongswan-sha1.la +usr/lib/ipsec/plugins/libstrongswan-sha1.so +#usr/lib/ipsec/plugins/libstrongswan-sha2.a +#usr/lib/ipsec/plugins/libstrongswan-sha2.la +usr/lib/ipsec/plugins/libstrongswan-sha2.so +#usr/lib/ipsec/plugins/libstrongswan-socket-raw.a +#usr/lib/ipsec/plugins/libstrongswan-socket-raw.la +usr/lib/ipsec/plugins/libstrongswan-socket-raw.so +#usr/lib/ipsec/plugins/libstrongswan-stroke.a +#usr/lib/ipsec/plugins/libstrongswan-stroke.la +usr/lib/ipsec/plugins/libstrongswan-stroke.so +#usr/lib/ipsec/plugins/libstrongswan-updown.a +#usr/lib/ipsec/plugins/libstrongswan-updown.la +usr/lib/ipsec/plugins/libstrongswan-updown.so +#usr/lib/ipsec/plugins/libstrongswan-x509.a +#usr/lib/ipsec/plugins/libstrongswan-x509.la +usr/lib/ipsec/plugins/libstrongswan-x509.so +#usr/lib/ipsec/plugins/libstrongswan-xauth.a +#usr/lib/ipsec/plugins/libstrongswan-xauth.la +usr/lib/ipsec/plugins/libstrongswan-xauth.so +#usr/lib/ipsec/plugins/libstrongswan-xcbc.a +#usr/lib/ipsec/plugins/libstrongswan-xcbc.la +usr/lib/ipsec/plugins/libstrongswan-xcbc.so usr/libexec/ipsec/pluto usr/libexec/ipsec/scepclient usr/libexec/ipsec/starter @@ -118,14 +122,11 @@ usr/sbin/ipsec #usr/share/man/man3/anyaddr.3 #usr/share/man/man3/atoaddr.3 #usr/share/man/man3/atoasr.3 -#usr/share/man/man3/atosa.3 #usr/share/man/man3/atoul.3 #usr/share/man/man3/goodmask.3 #usr/share/man/man3/initaddr.3 #usr/share/man/man3/initsubnet.3 -#usr/share/man/man3/keyblobtoid.3 #usr/share/man/man3/portof.3 -#usr/share/man/man3/prng.3 #usr/share/man/man3/rangetosubnet.3 #usr/share/man/man3/sameaddr.3 #usr/share/man/man3/subnetof.3 @@ -136,13 +137,11 @@ usr/sbin/ipsec #usr/share/man/man5/ipsec.conf.5 #usr/share/man/man5/ipsec.secrets.5 #usr/share/man/man5/strongswan.conf.5 -#usr/share/man/man8/_copyright.8 #usr/share/man/man8/_updown.8 #usr/share/man/man8/_updown_espmark.8 #usr/share/man/man8/ipsec.8 #usr/share/man/man8/openac.8 #usr/share/man/man8/pluto.8 #usr/share/man/man8/scepclient.8 -#usr/share/man/man8/starter.8 etc/ipsec.user.conf etc/ipsec.user.secrets diff --git a/config/rootfiles/common/usb_modeswitch b/config/rootfiles/common/usb_modeswitch index 13c1a38..fe60c05 100644 --- a/config/rootfiles/common/usb_modeswitch +++ b/config/rootfiles/common/usb_modeswitch @@ -1,6 +1,6 @@ -#etc/usb_modeswitch.conf -etc/usb_modeswitch.setup.example +etc/usb_modeswitch.conf #lib/udev/usb_modeswitch usr/sbin/usb_modeswitch usr/sbin/usb_modeswitch_dispatcher #usr/share/man/man1/usb_modeswitch.1 +var/lib/usb_modeswitch diff --git a/config/rootfiles/common/usb_modeswitch_data b/config/rootfiles/common/usb_modeswitch_data index e7b3079..c3166a0 100644 --- a/config/rootfiles/common/usb_modeswitch_data +++ b/config/rootfiles/common/usb_modeswitch_data @@ -1,150 +1,199 @@ -#etc/usb_modeswitch.d -etc/usb_modeswitch.d/0421:060c -etc/usb_modeswitch.d/0421:0610 -etc/usb_modeswitch.d/0421:0622 -etc/usb_modeswitch.d/0421:0627 -etc/usb_modeswitch.d/0471:1210 -etc/usb_modeswitch.d/0471:1237 -etc/usb_modeswitch.d/0482:024d -etc/usb_modeswitch.d/04e8:689a -etc/usb_modeswitch.d/04e8:f000 -etc/usb_modeswitch.d/057c:84ff -etc/usb_modeswitch.d/05c6:1000:sVe=Option -etc/usb_modeswitch.d/05c6:1000:uMa=AnyDATA -etc/usb_modeswitch.d/05c6:1000:uMa=Option -etc/usb_modeswitch.d/05c6:1000:uMa=SAMSUNG -etc/usb_modeswitch.d/05c6:1000:uMa=Vertex -etc/usb_modeswitch.d/05c6:2001 -etc/usb_modeswitch.d/05c6:f000 -etc/usb_modeswitch.d/05c7:1000 -etc/usb_modeswitch.d/072f:100d -etc/usb_modeswitch.d/0930:0d46 -etc/usb_modeswitch.d/0ace:2011 -etc/usb_modeswitch.d/0ace:20ff -etc/usb_modeswitch.d/0af0:6711 -etc/usb_modeswitch.d/0af0:6731 -etc/usb_modeswitch.d/0af0:6751 -etc/usb_modeswitch.d/0af0:6771 -etc/usb_modeswitch.d/0af0:6791 -etc/usb_modeswitch.d/0af0:6811 -etc/usb_modeswitch.d/0af0:6911 -etc/usb_modeswitch.d/0af0:6951 -etc/usb_modeswitch.d/0af0:6971 -etc/usb_modeswitch.d/0af0:7011 -etc/usb_modeswitch.d/0af0:7031 -etc/usb_modeswitch.d/0af0:7051 -etc/usb_modeswitch.d/0af0:7071 -etc/usb_modeswitch.d/0af0:7111 -etc/usb_modeswitch.d/0af0:7211 -etc/usb_modeswitch.d/0af0:7251 -etc/usb_modeswitch.d/0af0:7271 -etc/usb_modeswitch.d/0af0:7301 -etc/usb_modeswitch.d/0af0:7311 -etc/usb_modeswitch.d/0af0:7361 -etc/usb_modeswitch.d/0af0:7381 -etc/usb_modeswitch.d/0af0:7401 -etc/usb_modeswitch.d/0af0:7501 -etc/usb_modeswitch.d/0af0:7601 -etc/usb_modeswitch.d/0af0:7701 -etc/usb_modeswitch.d/0af0:7801 -etc/usb_modeswitch.d/0af0:7901 -etc/usb_modeswitch.d/0af0:8200 -etc/usb_modeswitch.d/0af0:8201 -etc/usb_modeswitch.d/0af0:8300 -etc/usb_modeswitch.d/0af0:8302 -etc/usb_modeswitch.d/0af0:8304 -etc/usb_modeswitch.d/0af0:8400 -etc/usb_modeswitch.d/0af0:c031 -etc/usb_modeswitch.d/0af0:c100 -etc/usb_modeswitch.d/0af0:d013 -etc/usb_modeswitch.d/0af0:d031 -etc/usb_modeswitch.d/0af0:d033 -etc/usb_modeswitch.d/0af0:d035 -etc/usb_modeswitch.d/0af0:d055 -etc/usb_modeswitch.d/0af0:d057 -etc/usb_modeswitch.d/0af0:d058 -etc/usb_modeswitch.d/0af0:d155 -etc/usb_modeswitch.d/0af0:d157 -etc/usb_modeswitch.d/0af0:d255 -etc/usb_modeswitch.d/0af0:d257 -etc/usb_modeswitch.d/0af0:d357 -etc/usb_modeswitch.d/0b3c:c700 -etc/usb_modeswitch.d/0b3c:f000 -etc/usb_modeswitch.d/0cf3:20ff -etc/usb_modeswitch.d/0d46:45a1 -etc/usb_modeswitch.d/0d46:45a5 -etc/usb_modeswitch.d/0e8d:7109 -etc/usb_modeswitch.d/0fce:d0cf -etc/usb_modeswitch.d/0fce:d0e1 -etc/usb_modeswitch.d/0fce:d103 -etc/usb_modeswitch.d/0fd1:1000 -etc/usb_modeswitch.d/1004:1000 -etc/usb_modeswitch.d/1004:607f -etc/usb_modeswitch.d/1004:613a -etc/usb_modeswitch.d/1004:613f -etc/usb_modeswitch.d/1004:6190 -etc/usb_modeswitch.d/1033:0035 -etc/usb_modeswitch.d/106c:3b03 -etc/usb_modeswitch.d/106c:3b05 -etc/usb_modeswitch.d/106c:3b06 -etc/usb_modeswitch.d/1076:7f40 -etc/usb_modeswitch.d/1199:0fff -etc/usb_modeswitch.d/1266:1000 -etc/usb_modeswitch.d/12d1:1001 -etc/usb_modeswitch.d/12d1:1003 -etc/usb_modeswitch.d/12d1:101e -etc/usb_modeswitch.d/12d1:1031 -etc/usb_modeswitch.d/12d1:1414 -etc/usb_modeswitch.d/12d1:1446 -etc/usb_modeswitch.d/12d1:14ad -etc/usb_modeswitch.d/12d1:14c1 -etc/usb_modeswitch.d/12d1:1520 -etc/usb_modeswitch.d/12d1:1521 -etc/usb_modeswitch.d/12d1:1523 -etc/usb_modeswitch.d/12d1:1553 -etc/usb_modeswitch.d/12d1:1557 -etc/usb_modeswitch.d/12d1:1c0b -etc/usb_modeswitch.d/1410:5010 -etc/usb_modeswitch.d/1410:5020 -etc/usb_modeswitch.d/1410:5030 -etc/usb_modeswitch.d/1410:5031 -etc/usb_modeswitch.d/1410:5041 -etc/usb_modeswitch.d/148f:2578 -etc/usb_modeswitch.d/16d8:6281 -etc/usb_modeswitch.d/16d8:6803 -etc/usb_modeswitch.d/16d8:6803:? -etc/usb_modeswitch.d/16d8:700a -etc/usb_modeswitch.d/16d8:f000 -etc/usb_modeswitch.d/198f:bccd -etc/usb_modeswitch.d/19d2:0003 -etc/usb_modeswitch.d/19d2:0026 -etc/usb_modeswitch.d/19d2:0040 -etc/usb_modeswitch.d/19d2:0053 -etc/usb_modeswitch.d/19d2:0083 -etc/usb_modeswitch.d/19d2:0101 -etc/usb_modeswitch.d/19d2:0103 -etc/usb_modeswitch.d/19d2:0115 -etc/usb_modeswitch.d/19d2:1001 -etc/usb_modeswitch.d/19d2:1007 -etc/usb_modeswitch.d/19d2:1009 -etc/usb_modeswitch.d/19d2:1013 -etc/usb_modeswitch.d/19d2:2000 -etc/usb_modeswitch.d/19d2:fff5 -etc/usb_modeswitch.d/19d2:fff6 -etc/usb_modeswitch.d/1a8d:1000 -etc/usb_modeswitch.d/1ab7:5700 -etc/usb_modeswitch.d/1b7d:0700 -etc/usb_modeswitch.d/1bbb:f000 -etc/usb_modeswitch.d/1c9e:1001 -etc/usb_modeswitch.d/1c9e:9200 -etc/usb_modeswitch.d/1c9e:9e00 -etc/usb_modeswitch.d/1c9e:f000 -etc/usb_modeswitch.d/1dd6:1000 -etc/usb_modeswitch.d/1e0e:f000 -etc/usb_modeswitch.d/1edf:6003 -etc/usb_modeswitch.d/1ee8:0009 -etc/usb_modeswitch.d/1ee8:0013 -etc/usb_modeswitch.d/1f28:0021 -etc/usb_modeswitch.d/1fac:0130 -etc/usb_modeswitch.d/230d:0001 +etc/usb_modeswitch.d lib/udev/rules.d/40-usb_modeswitch.rules +#usr/share/usb_modeswitch +usr/share/usb_modeswitch/03f0:002a +usr/share/usb_modeswitch/0421:060c +usr/share/usb_modeswitch/0421:0610 +usr/share/usb_modeswitch/0421:0622 +usr/share/usb_modeswitch/0421:0627 +usr/share/usb_modeswitch/0471:1210:uMa=Philips +usr/share/usb_modeswitch/0471:1210:uMa=Wisue +usr/share/usb_modeswitch/0471:1237 +usr/share/usb_modeswitch/0482:024d +usr/share/usb_modeswitch/04e8:689a +usr/share/usb_modeswitch/04e8:f000 +usr/share/usb_modeswitch/057c:84ff +usr/share/usb_modeswitch/05c6:1000:sVe=GT +usr/share/usb_modeswitch/05c6:1000:sVe=Option +usr/share/usb_modeswitch/05c6:1000:uMa=AnyDATA +usr/share/usb_modeswitch/05c6:1000:uMa=Option +usr/share/usb_modeswitch/05c6:1000:uMa=SAMSUNG +usr/share/usb_modeswitch/05c6:1000:uMa=SSE +usr/share/usb_modeswitch/05c6:1000:uMa=Vertex +usr/share/usb_modeswitch/05c6:2000 +usr/share/usb_modeswitch/05c6:2001 +usr/share/usb_modeswitch/05c6:f000 +usr/share/usb_modeswitch/05c7:1000 +usr/share/usb_modeswitch/072f:100d +usr/share/usb_modeswitch/07d1:a800 +usr/share/usb_modeswitch/07d1:a804 +usr/share/usb_modeswitch/0930:0d46 +usr/share/usb_modeswitch/0ace:2011 +usr/share/usb_modeswitch/0ace:20ff +usr/share/usb_modeswitch/0af0:6711 +usr/share/usb_modeswitch/0af0:6731 +usr/share/usb_modeswitch/0af0:6751 +usr/share/usb_modeswitch/0af0:6771 +usr/share/usb_modeswitch/0af0:6791 +usr/share/usb_modeswitch/0af0:6811 +usr/share/usb_modeswitch/0af0:6911 +usr/share/usb_modeswitch/0af0:6951 +usr/share/usb_modeswitch/0af0:6971 +usr/share/usb_modeswitch/0af0:7011 +usr/share/usb_modeswitch/0af0:7031 +usr/share/usb_modeswitch/0af0:7051 +usr/share/usb_modeswitch/0af0:7071 +usr/share/usb_modeswitch/0af0:7111 +usr/share/usb_modeswitch/0af0:7211 +usr/share/usb_modeswitch/0af0:7251 +usr/share/usb_modeswitch/0af0:7271 +usr/share/usb_modeswitch/0af0:7301 +usr/share/usb_modeswitch/0af0:7311 +usr/share/usb_modeswitch/0af0:7361 +usr/share/usb_modeswitch/0af0:7381 +usr/share/usb_modeswitch/0af0:7401 +usr/share/usb_modeswitch/0af0:7501 +usr/share/usb_modeswitch/0af0:7601 +usr/share/usb_modeswitch/0af0:7701 +usr/share/usb_modeswitch/0af0:7801 +usr/share/usb_modeswitch/0af0:7901 +usr/share/usb_modeswitch/0af0:7a01 +usr/share/usb_modeswitch/0af0:7a05 +usr/share/usb_modeswitch/0af0:8200 +usr/share/usb_modeswitch/0af0:8201 +usr/share/usb_modeswitch/0af0:8300 +usr/share/usb_modeswitch/0af0:8302 +usr/share/usb_modeswitch/0af0:8304 +usr/share/usb_modeswitch/0af0:8400 +usr/share/usb_modeswitch/0af0:8600 +usr/share/usb_modeswitch/0af0:8800 +usr/share/usb_modeswitch/0af0:8900 +usr/share/usb_modeswitch/0af0:9000 +usr/share/usb_modeswitch/0af0:c031 +usr/share/usb_modeswitch/0af0:c100 +usr/share/usb_modeswitch/0af0:d013 +usr/share/usb_modeswitch/0af0:d031 +usr/share/usb_modeswitch/0af0:d033 +usr/share/usb_modeswitch/0af0:d035 +usr/share/usb_modeswitch/0af0:d055 +usr/share/usb_modeswitch/0af0:d057 +usr/share/usb_modeswitch/0af0:d058 +usr/share/usb_modeswitch/0af0:d155 +usr/share/usb_modeswitch/0af0:d157 +usr/share/usb_modeswitch/0af0:d255 +usr/share/usb_modeswitch/0af0:d257 +usr/share/usb_modeswitch/0af0:d357 +usr/share/usb_modeswitch/0b3c:c700 +usr/share/usb_modeswitch/0b3c:f000 +usr/share/usb_modeswitch/0cf3:20ff +usr/share/usb_modeswitch/0d46:45a1 +usr/share/usb_modeswitch/0d46:45a5 +usr/share/usb_modeswitch/0df7:0800 +usr/share/usb_modeswitch/0e8d:7109 +usr/share/usb_modeswitch/0fce:d0cf +usr/share/usb_modeswitch/0fce:d0e1 +usr/share/usb_modeswitch/0fce:d103 +usr/share/usb_modeswitch/0fd1:1000 +usr/share/usb_modeswitch/1004:1000 +usr/share/usb_modeswitch/1004:607f +usr/share/usb_modeswitch/1004:613a +usr/share/usb_modeswitch/1004:613f +usr/share/usb_modeswitch/1004:6190 +usr/share/usb_modeswitch/1033:0035 +usr/share/usb_modeswitch/106c:3b03 +usr/share/usb_modeswitch/106c:3b05 +usr/share/usb_modeswitch/106c:3b06 +usr/share/usb_modeswitch/1076:7f40 +usr/share/usb_modeswitch/1199:0fff +usr/share/usb_modeswitch/1266:1000 +usr/share/usb_modeswitch/12d1:1001 +usr/share/usb_modeswitch/12d1:1003 +usr/share/usb_modeswitch/12d1:1009 +usr/share/usb_modeswitch/12d1:101e +usr/share/usb_modeswitch/12d1:1030 +usr/share/usb_modeswitch/12d1:1031 +usr/share/usb_modeswitch/12d1:1414 +usr/share/usb_modeswitch/12d1:1446 +usr/share/usb_modeswitch/12d1:1449 +usr/share/usb_modeswitch/12d1:14ad +usr/share/usb_modeswitch/12d1:14b5 +usr/share/usb_modeswitch/12d1:14b7 +usr/share/usb_modeswitch/12d1:14c1 +usr/share/usb_modeswitch/12d1:14c4 +usr/share/usb_modeswitch/12d1:14c5 +usr/share/usb_modeswitch/12d1:14d1 +usr/share/usb_modeswitch/12d1:14fe +usr/share/usb_modeswitch/12d1:1505 +usr/share/usb_modeswitch/12d1:1520 +usr/share/usb_modeswitch/12d1:1521 +usr/share/usb_modeswitch/12d1:1523 +usr/share/usb_modeswitch/12d1:1553 +usr/share/usb_modeswitch/12d1:1557 +usr/share/usb_modeswitch/12d1:1c0b +usr/share/usb_modeswitch/12d1:1da1 +usr/share/usb_modeswitch/12d1:380b +usr/share/usb_modeswitch/1307:1169 +usr/share/usb_modeswitch/1410:5010 +usr/share/usb_modeswitch/1410:5020 +usr/share/usb_modeswitch/1410:5030 +usr/share/usb_modeswitch/1410:5031 +usr/share/usb_modeswitch/1410:5041 +usr/share/usb_modeswitch/148e:a000 +usr/share/usb_modeswitch/148f:2578 +usr/share/usb_modeswitch/16d8:6281 +usr/share/usb_modeswitch/16d8:6803 +usr/share/usb_modeswitch/16d8:700a +usr/share/usb_modeswitch/16d8:700b +usr/share/usb_modeswitch/16d8:f000 +usr/share/usb_modeswitch/198a:0003 +usr/share/usb_modeswitch/198f:bccd +usr/share/usb_modeswitch/19d2:0003 +usr/share/usb_modeswitch/19d2:0013 +usr/share/usb_modeswitch/19d2:0026 +usr/share/usb_modeswitch/19d2:0040 +usr/share/usb_modeswitch/19d2:0053 +usr/share/usb_modeswitch/19d2:0083 +usr/share/usb_modeswitch/19d2:0101 +usr/share/usb_modeswitch/19d2:0103 +usr/share/usb_modeswitch/19d2:0110 +usr/share/usb_modeswitch/19d2:0115 +usr/share/usb_modeswitch/19d2:0149 +usr/share/usb_modeswitch/19d2:1001 +usr/share/usb_modeswitch/19d2:1007 +usr/share/usb_modeswitch/19d2:1009 +usr/share/usb_modeswitch/19d2:1013 +usr/share/usb_modeswitch/19d2:1171 +usr/share/usb_modeswitch/19d2:1175 +usr/share/usb_modeswitch/19d2:1179 +usr/share/usb_modeswitch/19d2:1201 +usr/share/usb_modeswitch/19d2:1216 +usr/share/usb_modeswitch/19d2:1224 +usr/share/usb_modeswitch/19d2:2000 +usr/share/usb_modeswitch/19d2:bccd +usr/share/usb_modeswitch/19d2:ffe6 +usr/share/usb_modeswitch/19d2:fff5 +usr/share/usb_modeswitch/19d2:fff6 +usr/share/usb_modeswitch/1a8d:1000 +usr/share/usb_modeswitch/1ab7:5700 +usr/share/usb_modeswitch/1b7d:0700 +usr/share/usb_modeswitch/1bbb:f000 +usr/share/usb_modeswitch/1c9e:1001 +usr/share/usb_modeswitch/1c9e:6061 +usr/share/usb_modeswitch/1c9e:9200 +usr/share/usb_modeswitch/1c9e:9800 +usr/share/usb_modeswitch/1c9e:9e00 +usr/share/usb_modeswitch/1c9e:f000 +usr/share/usb_modeswitch/1dd6:1000 +usr/share/usb_modeswitch/1e0e:f000 +usr/share/usb_modeswitch/1edf:6003 +usr/share/usb_modeswitch/1ee8:0009 +usr/share/usb_modeswitch/1ee8:0013 +usr/share/usb_modeswitch/1ee8:0040 +usr/share/usb_modeswitch/1f28:0021 +usr/share/usb_modeswitch/1fac:0032 +usr/share/usb_modeswitch/1fac:0130 +usr/share/usb_modeswitch/201e:2009 +usr/share/usb_modeswitch/2020:f00e +usr/share/usb_modeswitch/230d:0001 +usr/share/usb_modeswitch/230d:0007 +usr/share/usb_modeswitch/8888:6500 diff --git a/config/rootfiles/core/53/exclude b/config/rootfiles/core/53/exclude index bb0d8c8..ca3adf5 100644 --- a/config/rootfiles/core/53/exclude +++ b/config/rootfiles/core/53/exclude @@ -1,2 +1,9 @@ srv/web/ipfire/html/proxy.pac +etc/udev/rules.d/30-persistent-network.rules +etc/ipsec.conf +etc/ipsec.secrets +etc/ipsec.user.conf +etc/ipsec.user.secrets var/updatecache +etc/localtime +var/ipfire/ovpn diff --git a/config/rootfiles/core/53/filelists/compat-wireless b/config/rootfiles/core/53/filelists/compat-wireless new file mode 100644 index 0000000..5d899bf --- /dev/null +++ b/config/rootfiles/core/53/filelists/compat-wireless @@ -0,0 +1,359 @@ +lib/modules/2.6.32.45-ipfire-xen/kernel/compat/compat.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/compat/compat_firmware_class.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/bluetooth/ath3k.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/bluetooth/bcm203x.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/bluetooth/bfusb.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/bluetooth/bluecard_cs.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/bluetooth/bpa10x.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/bluetooth/bt3c_cs.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/bluetooth/btmrvl.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/bluetooth/btmrvl_sdio.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/bluetooth/btsdio.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/bluetooth/btuart_cs.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/bluetooth/btusb.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/bluetooth/dtl1_cs.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/bluetooth/hci_uart.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/bluetooth/hci_vhci.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/misc/eeprom/eeprom_93cx6.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/atl1c/atl1c.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/atl1e/atl1e.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/atlx/atl1.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/atlx/atl2.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/b44.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/asix.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/catc.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/cdc_eem.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/cdc_ether.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/cdc_subset.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/dm9601.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/gl620a.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/hso.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/int51x1.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/kaweth.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/mcs7830.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/net1080.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/pegasus.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/plusb.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/rndis_host.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/rtl8150.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/smsc95xx.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/usbnet.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/usb/zaurus.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/adm8211.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/at76c50x-usb.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/ath/ath.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/ath/ath5k/ath5k.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/ath/ath9k/ath9k.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/ath/ath9k/ath9k_common.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/ath/ath9k/ath9k_htc.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/ath/ath9k/ath9k_hw.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/ath/carl9170/carl9170.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/b43/b43.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/b43legacy/b43legacy.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/ipw2x00/ipw2100.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/ipw2x00/ipw2200.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/ipw2x00/libipw.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/iwlegacy/iwl-legacy.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/iwlegacy/iwl3945.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/iwlegacy/iwl4965.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/iwlwifi/iwlagn.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/iwmc3200wifi/iwmc3200wifi.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/libertas/libertas.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/libertas/libertas_cs.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/libertas/libertas_sdio.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/libertas/usb8xxx.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/libertas_tf/libertas_tf.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/libertas_tf/libertas_tf_usb.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/mac80211_hwsim.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/mwifiex/mwifiex.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/mwifiex/mwifiex_sdio.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/mwl8k.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/orinoco/orinoco.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/orinoco/orinoco_cs.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/orinoco/orinoco_nortel.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/orinoco/orinoco_pci.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/orinoco/orinoco_plx.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/orinoco/orinoco_tmd.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/orinoco/orinoco_usb.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/orinoco/spectrum_cs.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/p54/p54common.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/p54/p54pci.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/p54/p54usb.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rndis_wlan.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rt2x00/rt2400pci.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rt2x00/rt2500pci.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rt2x00/rt2500usb.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rt2x00/rt2800lib.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rt2x00/rt2800pci.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rt2x00/rt2800usb.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rt2x00/rt2x00lib.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rt2x00/rt2x00pci.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rt2x00/rt2x00usb.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rt2x00/rt61pci.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rt2x00/rt73usb.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rtl818x/rtl8180/rtl8180.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rtl818x/rtl8187/rtl8187.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192ce.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rtlwifi/rtl8192cu/rtl8192cu.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rtlwifi/rtl8192se/rtl8192se.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/rtlwifi/rtlwifi.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/wl1251/wl1251.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/wl12xx/wl12xx.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/net/wireless/zd1211rw/zd1211rw.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/ssb/ssb.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/staging/ath6kl/ath6kl.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/staging/brcm80211/brcmfmac/brcmfmac.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/staging/brcm80211/brcmsmac/brcmsmac.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/drivers/staging/brcm80211/util/brcmutil.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/net/bluetooth/bluetooth.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/net/bluetooth/bnep/bnep.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/net/bluetooth/cmtp/cmtp.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/net/bluetooth/hidp/hidp.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/net/bluetooth/rfcomm/rfcomm.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/net/mac80211/mac80211.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/net/wireless/cfg80211.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/net/wireless/lib80211.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/net/wireless/lib80211_crypt_ccmp.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/net/wireless/lib80211_crypt_tkip.ko +lib/modules/2.6.32.45-ipfire-xen/kernel/net/wireless/lib80211_crypt_wep.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/compat/compat.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/compat/compat_firmware_class.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/bluetooth/ath3k.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/bluetooth/bcm203x.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/bluetooth/bfusb.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/bluetooth/bluecard_cs.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/bluetooth/bpa10x.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/bluetooth/bt3c_cs.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/bluetooth/btmrvl.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/bluetooth/btmrvl_sdio.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/bluetooth/btsdio.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/bluetooth/btuart_cs.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/bluetooth/btusb.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/bluetooth/dtl1_cs.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/bluetooth/hci_uart.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/bluetooth/hci_vhci.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/misc/eeprom/eeprom_93cx6.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/atl1c/atl1c.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/atl1e/atl1e.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/atlx/atl1.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/atlx/atl2.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/b44.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/asix.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/catc.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/cdc_eem.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/cdc_ether.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/cdc_subset.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/dm9601.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/gl620a.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/hso.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/int51x1.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/kaweth.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/mcs7830.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/net1080.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/pegasus.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/plusb.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/rndis_host.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/rtl8150.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/smsc95xx.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/usbnet.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/usb/zaurus.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/adm8211.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/at76c50x-usb.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/ath/ath.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/ath/ath5k/ath5k.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/ath/ath9k/ath9k.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/ath/ath9k/ath9k_common.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/ath/ath9k/ath9k_htc.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/ath/ath9k/ath9k_hw.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/ath/carl9170/carl9170.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/b43/b43.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/b43legacy/b43legacy.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/ipw2x00/ipw2100.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/ipw2x00/ipw2200.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/ipw2x00/libipw.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/iwlegacy/iwl-legacy.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/iwlegacy/iwl3945.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/iwlegacy/iwl4965.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/iwlwifi/iwlagn.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/iwmc3200wifi/iwmc3200wifi.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/libertas/libertas.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/libertas/libertas_cs.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/libertas/libertas_sdio.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/libertas/usb8xxx.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/libertas_tf/libertas_tf.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/libertas_tf/libertas_tf_usb.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/mac80211_hwsim.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/mwifiex/mwifiex.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/mwifiex/mwifiex_sdio.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/mwl8k.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/orinoco/orinoco.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/orinoco/orinoco_cs.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/orinoco/orinoco_nortel.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/orinoco/orinoco_pci.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/orinoco/orinoco_plx.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/orinoco/orinoco_tmd.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/orinoco/orinoco_usb.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/orinoco/spectrum_cs.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/p54/p54common.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/p54/p54pci.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/p54/p54usb.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rndis_wlan.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rt2x00/rt2400pci.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rt2x00/rt2500pci.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rt2x00/rt2500usb.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rt2x00/rt2800lib.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rt2x00/rt2800pci.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rt2x00/rt2800usb.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rt2x00/rt2x00lib.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rt2x00/rt2x00pci.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rt2x00/rt2x00usb.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rt2x00/rt61pci.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rt2x00/rt73usb.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rtl818x/rtl8180/rtl8180.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rtl818x/rtl8187/rtl8187.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192ce.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rtlwifi/rtl8192cu/rtl8192cu.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rtlwifi/rtl8192se/rtl8192se.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/rtlwifi/rtlwifi.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/wl1251/wl1251.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/wl12xx/wl12xx.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/net/wireless/zd1211rw/zd1211rw.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/ssb/ssb.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/staging/ath6kl/ath6kl.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/staging/brcm80211/brcmfmac/brcmfmac.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/staging/brcm80211/brcmsmac/brcmsmac.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/drivers/staging/brcm80211/util/brcmutil.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/net/bluetooth/bluetooth.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/net/bluetooth/bnep/bnep.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/net/bluetooth/cmtp/cmtp.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/net/bluetooth/hidp/hidp.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/net/bluetooth/rfcomm/rfcomm.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/net/mac80211/mac80211.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/net/wireless/cfg80211.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/net/wireless/lib80211.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/net/wireless/lib80211_crypt_ccmp.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/net/wireless/lib80211_crypt_tkip.ko +lib/modules/2.6.32.45-ipfire-pae/kernel/net/wireless/lib80211_crypt_wep.ko +lib/modules/2.6.32.45-ipfire/kernel/compat/compat.ko +lib/modules/2.6.32.45-ipfire/kernel/compat/compat_firmware_class.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/bluetooth/ath3k.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/bluetooth/bcm203x.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/bluetooth/bfusb.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/bluetooth/bluecard_cs.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/bluetooth/bpa10x.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/bluetooth/bt3c_cs.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/bluetooth/btmrvl.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/bluetooth/btmrvl_sdio.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/bluetooth/btsdio.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/bluetooth/btuart_cs.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/bluetooth/btusb.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/bluetooth/dtl1_cs.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/bluetooth/hci_uart.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/bluetooth/hci_vhci.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/misc/eeprom/eeprom_93cx6.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/atl1c/atl1c.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/atl1e/atl1e.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/atlx/atl1.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/atlx/atl2.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/b44.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/asix.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/catc.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/cdc_eem.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/cdc_ether.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/cdc_subset.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/dm9601.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/gl620a.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/hso.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/int51x1.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/kaweth.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/mcs7830.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/net1080.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/pegasus.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/plusb.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/rndis_host.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/rtl8150.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/smsc95xx.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/usbnet.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/usb/zaurus.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/adm8211.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/at76c50x-usb.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/ath/ath.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/ath/ath5k/ath5k.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/ath/ath9k/ath9k.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/ath/ath9k/ath9k_common.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/ath/ath9k/ath9k_htc.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/ath/ath9k/ath9k_hw.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/ath/carl9170/carl9170.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/b43/b43.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/b43legacy/b43legacy.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/ipw2x00/ipw2100.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/ipw2x00/ipw2200.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/ipw2x00/libipw.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/iwlegacy/iwl-legacy.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/iwlegacy/iwl3945.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/iwlegacy/iwl4965.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/iwlwifi/iwlagn.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/iwmc3200wifi/iwmc3200wifi.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/libertas/libertas.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/libertas/libertas_cs.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/libertas/libertas_sdio.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/libertas/usb8xxx.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/libertas_tf/libertas_tf.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/libertas_tf/libertas_tf_usb.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/mac80211_hwsim.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/mwifiex/mwifiex.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/mwifiex/mwifiex_sdio.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/mwl8k.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/orinoco/orinoco.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/orinoco/orinoco_cs.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/orinoco/orinoco_nortel.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/orinoco/orinoco_pci.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/orinoco/orinoco_plx.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/orinoco/orinoco_tmd.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/orinoco/orinoco_usb.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/orinoco/spectrum_cs.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/p54/p54common.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/p54/p54pci.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/p54/p54usb.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rndis_wlan.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rt2x00/rt2400pci.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rt2x00/rt2500pci.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rt2x00/rt2500usb.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rt2x00/rt2800lib.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rt2x00/rt2800pci.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rt2x00/rt2800usb.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rt2x00/rt2x00lib.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rt2x00/rt2x00pci.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rt2x00/rt2x00usb.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rt2x00/rt61pci.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rt2x00/rt73usb.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rtl818x/rtl8180/rtl8180.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rtl818x/rtl8187/rtl8187.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8192c/rtl8192c-common.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8192ce/rtl8192ce.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8192cu/rtl8192cu.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rtlwifi/rtl8192se/rtl8192se.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/rtlwifi/rtlwifi.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/wl1251/wl1251.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/wl12xx/wl12xx.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/net/wireless/zd1211rw/zd1211rw.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/ssb/ssb.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/staging/ath6kl/ath6kl.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/staging/brcm80211/brcmfmac/brcmfmac.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/staging/brcm80211/brcmsmac/brcmsmac.ko +lib/modules/2.6.32.45-ipfire/kernel/drivers/staging/brcm80211/util/brcmutil.ko +lib/modules/2.6.32.45-ipfire/kernel/net/bluetooth/bluetooth.ko +lib/modules/2.6.32.45-ipfire/kernel/net/bluetooth/bnep/bnep.ko +lib/modules/2.6.32.45-ipfire/kernel/net/bluetooth/cmtp/cmtp.ko +lib/modules/2.6.32.45-ipfire/kernel/net/bluetooth/hidp/hidp.ko +lib/modules/2.6.32.45-ipfire/kernel/net/bluetooth/rfcomm/rfcomm.ko +lib/modules/2.6.32.45-ipfire/kernel/net/mac80211/mac80211.ko +lib/modules/2.6.32.45-ipfire/kernel/net/wireless/cfg80211.ko +lib/modules/2.6.32.45-ipfire/kernel/net/wireless/lib80211.ko +lib/modules/2.6.32.45-ipfire/kernel/net/wireless/lib80211_crypt_ccmp.ko +lib/modules/2.6.32.45-ipfire/kernel/net/wireless/lib80211_crypt_tkip.ko +lib/modules/2.6.32.45-ipfire/kernel/net/wireless/lib80211_crypt_wep.ko +etc/udev/rules.d/50-compat_firmware.rules +lib/udev/compat_firmware.sh diff --git a/config/rootfiles/core/53/filelists/files b/config/rootfiles/core/53/filelists/files index 0037af1..cdd78c2 100644 --- a/config/rootfiles/core/53/filelists/files +++ b/config/rootfiles/core/53/filelists/files @@ -1 +1,27 @@ +etc/rc.d/init.d/network +etc/rc.d/init.d/static-routes +etc/sysctl.conf etc/system-release +etc/issue +etc/iproute2/rt_tables +etc/rc.d/init.d/networking/red.up/50-ovpn +etc/rc.d/init.d/networking/red.down/10-ovpn +srv/web/ipfire/cgi-bin/extrahd.cgi +srv/web/ipfire/cgi-bin/index.cgi +srv/web/ipfire/cgi-bin/outgoinggrp.cgi +srv/web/ipfire/cgi-bin/ovpnmain.cgi +srv/web/ipfire/cgi-bin/pakfire.cgi +srv/web/ipfire/cgi-bin/routing.cgi +srv/web/ipfire/cgi-bin/vpnmain.cgi +var/ipfire/langs/de.pl +var/ipfire/langs/en.pl +var/ipfire/langs/es.pl +var/ipfire/langs/fr.pl +var/ipfire/langs/pl.pl +usr/local/bin/ipsecctrl +usr/local/bin/openvpnctrl +usr/local/bin/vpn-watch +usr/local/bin/rebuildroutes +var/ipfire/main/routing +var/ipfire/menu.d/30-network.menu +opt/pakfire/etc/pakfire.conf diff --git a/config/rootfiles/core/53/filelists/gcc b/config/rootfiles/core/53/filelists/gcc new file mode 120000 index 0000000..8538cc4 --- /dev/null +++ b/config/rootfiles/core/53/filelists/gcc @@ -0,0 +1 @@ +../../../common/gcc \ No newline at end of file diff --git a/config/rootfiles/core/53/filelists/glibc b/config/rootfiles/core/53/filelists/glibc new file mode 120000 index 0000000..fbb4a52 --- /dev/null +++ b/config/rootfiles/core/53/filelists/glibc @@ -0,0 +1 @@ +../../../common/glibc \ No newline at end of file diff --git a/config/rootfiles/core/53/filelists/gmp b/config/rootfiles/core/53/filelists/gmp new file mode 120000 index 0000000..8662a89 --- /dev/null +++ b/config/rootfiles/core/53/filelists/gmp @@ -0,0 +1 @@ +../../../common/gmp \ No newline at end of file diff --git a/config/rootfiles/core/53/filelists/openvpn b/config/rootfiles/core/53/filelists/openvpn new file mode 120000 index 0000000..493f3f7 --- /dev/null +++ b/config/rootfiles/core/53/filelists/openvpn @@ -0,0 +1 @@ +../../../common/openvpn \ No newline at end of file diff --git a/config/rootfiles/core/53/filelists/strongswan b/config/rootfiles/core/53/filelists/strongswan new file mode 120000 index 0000000..90c727e --- /dev/null +++ b/config/rootfiles/core/53/filelists/strongswan @@ -0,0 +1 @@ +../../../common/strongswan \ No newline at end of file diff --git a/config/rootfiles/core/53/filelists/usb_modeswitch b/config/rootfiles/core/53/filelists/usb_modeswitch new file mode 120000 index 0000000..acbab6f --- /dev/null +++ b/config/rootfiles/core/53/filelists/usb_modeswitch @@ -0,0 +1 @@ +../../../common/usb_modeswitch \ No newline at end of file diff --git a/config/rootfiles/core/53/filelists/usb_modeswitch_data b/config/rootfiles/core/53/filelists/usb_modeswitch_data new file mode 120000 index 0000000..4cbce46 --- /dev/null +++ b/config/rootfiles/core/53/filelists/usb_modeswitch_data @@ -0,0 +1 @@ +../../../common/usb_modeswitch_data \ No newline at end of file diff --git a/config/rootfiles/core/53/update.sh b/config/rootfiles/core/53/update.sh index f13519a..10b45b9 100644 --- a/config/rootfiles/core/53/update.sh +++ b/config/rootfiles/core/53/update.sh @@ -26,7 +26,7 @@
# # Remove old core updates from pakfire cache to save space... -core=53 +core=52 for (( i=1; i<=$core; i++ )) do rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire @@ -34,26 +34,74 @@ done
# #Stop services -/etc/init.d/squid stop -/etc/init.d/apache stop + +/etc/init.d/ipsec stop + +# +# Remove old strongswan libs +rm -rf /usr/lib/libcharon.so +rm -rf /usr/lib/libcharon.so.0 +rm -rf /usr/lib/libcharon.so.0.0.0 +rm -rf /usr/lib/libhydra.so +rm -rf /usr/lib/libhydra.so.0 +rm -rf /usr/lib/libhydra.so.0.0.0 +rm -rf /usr/lib/libstrongswan.so +rm -rf /usr/lib/libstrongswan.so.0 +rm -rf /usr/lib/libstrongswan.so.0.0.0 +rm -rf /usr/libexec/ipsec/plugins + +# Remove old usb_modeswitch_data +rm -rf /etc/usb_modeswitch.d
# #Extract files extract_files
# +#Replace now unsupported EU regdomain by a "DE" comment. +sed -i -e "s|^options cfg80211 ieee80211_regdom=EU|#options cfg80211 ieee80211_regdom=DE|g" \ + /etc/modprobe.d/cfg80211 + +# #Start services -/etc/init.d/apache start -/etc/init.d/squid start + +if [ `grep "ENABLED=on" /var/ipfire/vpn/settings` ]; then + /etc/init.d/ipsec start +fi
# #Update Language cache perl -e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang"
#Rebuild module dep's -#depmod 2.6.32.43-ipfire >/dev/null 2>&1 -#depmod 2.6.32.43-ipfire-pae >/dev/null 2>&1 -#depmod 2.6.32.43-ipfire-xen >/dev/null 2>&1 +depmod 2.6.32.45-ipfire >/dev/null 2>&1 +depmod 2.6.32.45-ipfire-pae >/dev/null 2>&1 +depmod 2.6.32.45-ipfire-xen >/dev/null 2>&1 + +# +# After pakfire has ended run it again and update the lists and do upgrade +# +echo '#!/bin/bash' > /tmp/pak_update +echo 'while [ "$(ps -A | grep " update.sh")" != "" ]; do' >> /tmp/pak_update +echo ' sleep 1' >> /tmp/pak_update +echo 'done' >> /tmp/pak_update +echo 'while [ "$(ps -A | grep " pakfire")" != "" ]; do' >> /tmp/pak_update +echo ' sleep 1' >> /tmp/pak_update +echo 'done' >> /tmp/pak_update +echo '/opt/pakfire/pakfire update -y --force' >> /tmp/pak_update +echo '/opt/pakfire/pakfire upgrade -y' >> /tmp/pak_update +echo '/opt/pakfire/pakfire upgrade -y' >> /tmp/pak_update +echo '/opt/pakfire/pakfire upgrade -y' >> /tmp/pak_update +echo 'sync && sync && sync' >> /tmp/pak_update +echo '/usr/bin/logger -p syslog.emerg -t core-upgrade-53 " *** Please reboot... *** "' >> /tmp/pak_update +echo 'touch /var/run/need_reboot ' >> /tmp/pak_update + +# +chmod +x /tmp/pak_update +/tmp/pak_update & +echo +echo Please wait until pakfire has ended... +echo
# #Finish diff --git a/config/rootfiles/packages/java b/config/rootfiles/packages/java deleted file mode 100644 index 2d44207..0000000 --- a/config/rootfiles/packages/java +++ /dev/null @@ -1,822 +0,0 @@ -usr/bin/java -#usr/java -#usr/java/bin -usr/java/bin/ControlPanel -usr/java/bin/java -usr/java/bin/java_vm -usr/java/bin/javaws -#usr/java/bin/jcontrol -usr/java/bin/keytool -usr/java/bin/orbd -usr/java/bin/pack200 -usr/java/bin/policytool -usr/java/bin/rmid -usr/java/bin/rmiregistry -usr/java/bin/servertool -usr/java/bin/tnameserv -usr/java/bin/unpack200 -#usr/java/javaws -usr/java/javaws/javaws -#usr/java/lib -usr/java/lib/applet -usr/java/lib/audio -usr/java/lib/audio/soundbank.gm -usr/java/lib/calendars.properties -usr/java/lib/charsets.jar -usr/java/lib/classlist -usr/java/lib/cmm -usr/java/lib/cmm/CIEXYZ.pf -usr/java/lib/cmm/GRAY.pf -usr/java/lib/cmm/LINEAR_RGB.pf -usr/java/lib/cmm/PYCC.pf -usr/java/lib/cmm/sRGB.pf -usr/java/lib/content-types.properties -usr/java/lib/deploy -usr/java/lib/deploy.jar -usr/java/lib/deploy/ffjcext.zip -usr/java/lib/deploy/java-icon.ico -usr/java/lib/deploy/messages.properties -usr/java/lib/deploy/messages_de.properties -usr/java/lib/deploy/messages_es.properties -usr/java/lib/deploy/messages_fr.properties -usr/java/lib/deploy/messages_it.properties -usr/java/lib/deploy/messages_ja.properties -usr/java/lib/deploy/messages_ko.properties -usr/java/lib/deploy/messages_sv.properties -usr/java/lib/deploy/messages_zh_CN.properties -usr/java/lib/deploy/messages_zh_HK.properties -usr/java/lib/deploy/messages_zh_TW.properties -usr/java/lib/deploy/splash.gif -usr/java/lib/desktop -usr/java/lib/desktop/applications -usr/java/lib/desktop/applications/sun-java.desktop -usr/java/lib/desktop/applications/sun-javaws.desktop -usr/java/lib/desktop/applications/sun_java.desktop -usr/java/lib/desktop/icons -usr/java/lib/desktop/icons/HighContrast -usr/java/lib/desktop/icons/HighContrast/16x16 -usr/java/lib/desktop/icons/HighContrast/16x16/apps -usr/java/lib/desktop/icons/HighContrast/16x16/apps/sun-java.png -usr/java/lib/desktop/icons/HighContrast/16x16/apps/sun-javaws.png -usr/java/lib/desktop/icons/HighContrast/16x16/apps/sun-jcontrol.png -usr/java/lib/desktop/icons/HighContrast/16x16/mimetypes -usr/java/lib/desktop/icons/HighContrast/16x16/mimetypes/gnome-mime-application-x-java-archive.png -usr/java/lib/desktop/icons/HighContrast/16x16/mimetypes/gnome-mime-application-x-java-jnlp-file.png -usr/java/lib/desktop/icons/HighContrast/16x16/mimetypes/gnome-mime-text-x-java.png -usr/java/lib/desktop/icons/HighContrast/48x48 -usr/java/lib/desktop/icons/HighContrast/48x48/apps -usr/java/lib/desktop/icons/HighContrast/48x48/apps/sun-java.png -usr/java/lib/desktop/icons/HighContrast/48x48/apps/sun-javaws.png -usr/java/lib/desktop/icons/HighContrast/48x48/apps/sun-jcontrol.png -usr/java/lib/desktop/icons/HighContrast/48x48/mimetypes -usr/java/lib/desktop/icons/HighContrast/48x48/mimetypes/gnome-mime-application-x-java-archive.png -usr/java/lib/desktop/icons/HighContrast/48x48/mimetypes/gnome-mime-application-x-java-jnlp-file.png -usr/java/lib/desktop/icons/HighContrast/48x48/mimetypes/gnome-mime-text-x-java.png -usr/java/lib/desktop/icons/HighContrastInverse -usr/java/lib/desktop/icons/HighContrastInverse/16x16 -usr/java/lib/desktop/icons/HighContrastInverse/16x16/apps -usr/java/lib/desktop/icons/HighContrastInverse/16x16/apps/sun-java.png -usr/java/lib/desktop/icons/HighContrastInverse/16x16/apps/sun-javaws.png -usr/java/lib/desktop/icons/HighContrastInverse/16x16/apps/sun-jcontrol.png -usr/java/lib/desktop/icons/HighContrastInverse/16x16/mimetypes -usr/java/lib/desktop/icons/HighContrastInverse/16x16/mimetypes/gnome-mime-application-x-java-archive.png -usr/java/lib/desktop/icons/HighContrastInverse/16x16/mimetypes/gnome-mime-application-x-java-jnlp-file.png -usr/java/lib/desktop/icons/HighContrastInverse/16x16/mimetypes/gnome-mime-text-x-java.png -usr/java/lib/desktop/icons/HighContrastInverse/48x48 -usr/java/lib/desktop/icons/HighContrastInverse/48x48/apps -usr/java/lib/desktop/icons/HighContrastInverse/48x48/apps/sun-java.png -usr/java/lib/desktop/icons/HighContrastInverse/48x48/apps/sun-javaws.png -usr/java/lib/desktop/icons/HighContrastInverse/48x48/apps/sun-jcontrol.png -usr/java/lib/desktop/icons/HighContrastInverse/48x48/mimetypes -usr/java/lib/desktop/icons/HighContrastInverse/48x48/mimetypes/gnome-mime-application-x-java-archive.png -usr/java/lib/desktop/icons/HighContrastInverse/48x48/mimetypes/gnome-mime-application-x-java-jnlp-file.png -usr/java/lib/desktop/icons/HighContrastInverse/48x48/mimetypes/gnome-mime-text-x-java.png -usr/java/lib/desktop/icons/LowContrast -usr/java/lib/desktop/icons/LowContrast/16x16 -usr/java/lib/desktop/icons/LowContrast/16x16/apps -usr/java/lib/desktop/icons/LowContrast/16x16/apps/sun-java.png -usr/java/lib/desktop/icons/LowContrast/16x16/apps/sun-javaws.png -usr/java/lib/desktop/icons/LowContrast/16x16/apps/sun-jcontrol.png -usr/java/lib/desktop/icons/LowContrast/16x16/mimetypes -usr/java/lib/desktop/icons/LowContrast/16x16/mimetypes/gnome-mime-application-x-java-archive.png -usr/java/lib/desktop/icons/LowContrast/16x16/mimetypes/gnome-mime-application-x-java-jnlp-file.png -usr/java/lib/desktop/icons/LowContrast/16x16/mimetypes/gnome-mime-text-x-java.png -usr/java/lib/desktop/icons/LowContrast/48x48 -usr/java/lib/desktop/icons/LowContrast/48x48/apps -usr/java/lib/desktop/icons/LowContrast/48x48/apps/sun-java.png -usr/java/lib/desktop/icons/LowContrast/48x48/apps/sun-javaws.png -usr/java/lib/desktop/icons/LowContrast/48x48/apps/sun-jcontrol.png -usr/java/lib/desktop/icons/LowContrast/48x48/mimetypes -usr/java/lib/desktop/icons/LowContrast/48x48/mimetypes/gnome-mime-application-x-java-archive.png -usr/java/lib/desktop/icons/LowContrast/48x48/mimetypes/gnome-mime-application-x-java-jnlp-file.png -usr/java/lib/desktop/icons/LowContrast/48x48/mimetypes/gnome-mime-text-x-java.png -usr/java/lib/desktop/icons/hicolor -usr/java/lib/desktop/icons/hicolor/16x16 -usr/java/lib/desktop/icons/hicolor/16x16/apps -usr/java/lib/desktop/icons/hicolor/16x16/apps/sun-java.png -usr/java/lib/desktop/icons/hicolor/16x16/apps/sun-javaws.png -usr/java/lib/desktop/icons/hicolor/16x16/apps/sun-jcontrol.png -usr/java/lib/desktop/icons/hicolor/16x16/mimetypes -usr/java/lib/desktop/icons/hicolor/16x16/mimetypes/gnome-mime-application-x-java-archive.png -usr/java/lib/desktop/icons/hicolor/16x16/mimetypes/gnome-mime-application-x-java-jnlp-file.png -usr/java/lib/desktop/icons/hicolor/16x16/mimetypes/gnome-mime-text-x-java.png -usr/java/lib/desktop/icons/hicolor/48x48 -usr/java/lib/desktop/icons/hicolor/48x48/apps -usr/java/lib/desktop/icons/hicolor/48x48/apps/sun-java.png -usr/java/lib/desktop/icons/hicolor/48x48/apps/sun-javaws.png -usr/java/lib/desktop/icons/hicolor/48x48/apps/sun-jcontrol.png -usr/java/lib/desktop/icons/hicolor/48x48/mimetypes -usr/java/lib/desktop/icons/hicolor/48x48/mimetypes/gnome-mime-application-x-java-archive.png -usr/java/lib/desktop/icons/hicolor/48x48/mimetypes/gnome-mime-application-x-java-jnlp-file.png -usr/java/lib/desktop/icons/hicolor/48x48/mimetypes/gnome-mime-text-x-java.png -usr/java/lib/desktop/mime -usr/java/lib/desktop/mime/packages -usr/java/lib/desktop/mime/packages/x-java-archive.xml -usr/java/lib/desktop/mime/packages/x-java-jnlp-file.xml -usr/java/lib/ext -usr/java/lib/ext/dnsns.jar -usr/java/lib/ext/localedata.jar -usr/java/lib/ext/meta-index -usr/java/lib/ext/sunjce_provider.jar -usr/java/lib/ext/sunpkcs11.jar -usr/java/lib/flavormap.properties -#usr/java/lib/fontconfig.RedHat.2.1.bfc -#usr/java/lib/fontconfig.RedHat.2.1.properties.src -#usr/java/lib/fontconfig.RedHat.3.bfc -#usr/java/lib/fontconfig.RedHat.3.properties.src -#usr/java/lib/fontconfig.RedHat.4.bfc -#usr/java/lib/fontconfig.RedHat.4.properties.src -#usr/java/lib/fontconfig.RedHat.bfc -#usr/java/lib/fontconfig.RedHat.properties.src -#usr/java/lib/fontconfig.SuSE.bfc -#usr/java/lib/fontconfig.SuSE.properties.src -#usr/java/lib/fontconfig.Sun.bfc -#usr/java/lib/fontconfig.Sun.properties.src -#usr/java/lib/fontconfig.Turbo.bfc -#usr/java/lib/fontconfig.Turbo.properties.src -#usr/java/lib/fontconfig.bfc -#usr/java/lib/fontconfig.properties.src -#usr/java/lib/fonts -#usr/java/lib/fonts/LucidaBrightDemiBold.ttf -#usr/java/lib/fonts/LucidaBrightDemiItalic.ttf -#usr/java/lib/fonts/LucidaBrightItalic.ttf -#usr/java/lib/fonts/LucidaBrightRegular.ttf -#usr/java/lib/fonts/LucidaSansDemiBold.ttf -#usr/java/lib/fonts/LucidaSansRegular.ttf -#usr/java/lib/fonts/LucidaTypewriterBold.ttf -#usr/java/lib/fonts/LucidaTypewriterRegular.ttf -#usr/java/lib/fonts/fonts.dir -#usr/java/lib/i386 -#usr/java/lib/i386/client -usr/java/lib/i386/client/Xusage.txt -usr/java/lib/i386/client/classes.jsa -usr/java/lib/i386/client/libjsig.so -usr/java/lib/i386/client/libjvm.so -#usr/java/lib/i386/headless -usr/java/lib/i386/headless/libmawt.so -usr/java/lib/i386/jli -usr/java/lib/i386/jli/libjli.so -usr/java/lib/i386/jvm.cfg -usr/java/lib/i386/libJdbcOdbc.so -usr/java/lib/i386/libawt.so -usr/java/lib/i386/libcmm.so -usr/java/lib/i386/libdcpr.so -usr/java/lib/i386/libdeploy.so -usr/java/lib/i386/libdt_socket.so -usr/java/lib/i386/libfontmanager.so -usr/java/lib/i386/libhprof.so -usr/java/lib/i386/libinstrument.so -usr/java/lib/i386/libioser12.so -usr/java/lib/i386/libj2gss.so -usr/java/lib/i386/libj2pcsc.so -usr/java/lib/i386/libj2pkcs11.so -usr/java/lib/i386/libjaas_unix.so -usr/java/lib/i386/libjava.so -usr/java/lib/i386/libjava_crw_demo.so -usr/java/lib/i386/libjavaplugin_jni.so -usr/java/lib/i386/libjavaplugin_nscp.so -usr/java/lib/i386/libjavaplugin_nscp_gcc29.so -usr/java/lib/i386/libjawt.so -usr/java/lib/i386/libjdwp.so -usr/java/lib/i386/libjpeg.so -usr/java/lib/i386/libjsig.so -usr/java/lib/i386/libjsound.so -usr/java/lib/i386/libjsoundalsa.so -usr/java/lib/i386/libmanagement.so -usr/java/lib/i386/libmlib_image.so -usr/java/lib/i386/libnative_chmod.so -usr/java/lib/i386/libnative_chmod_g.so -usr/java/lib/i386/libnet.so -usr/java/lib/i386/libnio.so -usr/java/lib/i386/libnpjp2.so -usr/java/lib/i386/libnpt.so -usr/java/lib/i386/librmi.so -usr/java/lib/i386/libsplashscreen.so -usr/java/lib/i386/libunpack.so -usr/java/lib/i386/libverify.so -usr/java/lib/i386/libzip.so -#usr/java/lib/i386/motif21 -#usr/java/lib/i386/motif21/libmawt.so -usr/java/lib/i386/native_threads -usr/java/lib/i386/native_threads/libhpi.so -#usr/java/lib/i386/server -usr/java/lib/i386/server/Xusage.txt -usr/java/lib/i386/server/libjsig.so -usr/java/lib/i386/server/libjvm.so -#usr/java/lib/i386/xawt -#usr/java/lib/i386/xawt/libmawt.so -usr/java/lib/im -usr/java/lib/im/indicim.jar -usr/java/lib/im/thaiim.jar -#usr/java/lib/images -#usr/java/lib/images/cursors -#usr/java/lib/images/cursors/cursors.properties -#usr/java/lib/images/cursors/invalid32x32.gif -#usr/java/lib/images/cursors/motif_CopyDrop32x32.gif -#usr/java/lib/images/cursors/motif_CopyNoDrop32x32.gif -#usr/java/lib/images/cursors/motif_LinkDrop32x32.gif -#usr/java/lib/images/cursors/motif_LinkNoDrop32x32.gif -#usr/java/lib/images/cursors/motif_MoveDrop32x32.gif -#usr/java/lib/images/cursors/motif_MoveNoDrop32x32.gif -#usr/java/lib/images/icons -#usr/java/lib/images/icons/sun-java.png -#usr/java/lib/images/icons/sun-java_HighContrast.png -#usr/java/lib/images/icons/sun-java_HighContrastInverse.png -#usr/java/lib/images/icons/sun-java_LowContrast.png -usr/java/lib/javaws.jar -usr/java/lib/jce.jar -usr/java/lib/jexec -usr/java/lib/jsse.jar -usr/java/lib/jvm.hprof.txt -#usr/java/lib/locale -#usr/java/lib/locale/de -#usr/java/lib/locale/de/LC_MESSAGES -#usr/java/lib/locale/de/LC_MESSAGES/sunw_java_plugin.mo -#usr/java/lib/locale/es -#usr/java/lib/locale/es/LC_MESSAGES -#usr/java/lib/locale/es/LC_MESSAGES/sunw_java_plugin.mo -#usr/java/lib/locale/fr -#usr/java/lib/locale/fr/LC_MESSAGES -#usr/java/lib/locale/fr/LC_MESSAGES/sunw_java_plugin.mo -#usr/java/lib/locale/it -#usr/java/lib/locale/it/LC_MESSAGES -#usr/java/lib/locale/it/LC_MESSAGES/sunw_java_plugin.mo -#usr/java/lib/locale/ja -#usr/java/lib/locale/ja/LC_MESSAGES -#usr/java/lib/locale/ja/LC_MESSAGES/sunw_java_plugin.mo -#usr/java/lib/locale/ko -#usr/java/lib/locale/ko.UTF-8 -#usr/java/lib/locale/ko.UTF-8/LC_MESSAGES -#usr/java/lib/locale/ko.UTF-8/LC_MESSAGES/sunw_java_plugin.mo -#usr/java/lib/locale/ko/LC_MESSAGES -#usr/java/lib/locale/ko/LC_MESSAGES/sunw_java_plugin.mo -#usr/java/lib/locale/sv -#usr/java/lib/locale/sv/LC_MESSAGES -#usr/java/lib/locale/sv/LC_MESSAGES/sunw_java_plugin.mo -#usr/java/lib/locale/zh -#usr/java/lib/locale/zh.GBK -#usr/java/lib/locale/zh.GBK/LC_MESSAGES -#usr/java/lib/locale/zh.GBK/LC_MESSAGES/sunw_java_plugin.mo -#usr/java/lib/locale/zh/LC_MESSAGES -#usr/java/lib/locale/zh/LC_MESSAGES/sunw_java_plugin.mo -#usr/java/lib/locale/zh_HK.BIG5HK -#usr/java/lib/locale/zh_HK.BIG5HK/LC_MESSAGES -#usr/java/lib/locale/zh_HK.BIG5HK/LC_MESSAGES/sunw_java_plugin.mo -#usr/java/lib/locale/zh_TW -#usr/java/lib/locale/zh_TW.BIG5 -#usr/java/lib/locale/zh_TW.BIG5/LC_MESSAGES -#usr/java/lib/locale/zh_TW.BIG5/LC_MESSAGES/sunw_java_plugin.mo -#usr/java/lib/locale/zh_TW/LC_MESSAGES -#usr/java/lib/locale/zh_TW/LC_MESSAGES/sunw_java_plugin.mo -usr/java/lib/logging.properties -usr/java/lib/management -usr/java/lib/management-agent.jar -#usr/java/lib/management/jmxremote.access -#usr/java/lib/management/jmxremote.password.template -#usr/java/lib/management/management.properties -#usr/java/lib/management/snmp.acl.template -usr/java/lib/meta-index -usr/java/lib/net.properties -#usr/java/lib/oblique-fonts -#usr/java/lib/oblique-fonts/LucidaSansDemiOblique.ttf -#usr/java/lib/oblique-fonts/LucidaSansOblique.ttf -#usr/java/lib/oblique-fonts/LucidaTypewriterBoldOblique.ttf -#usr/java/lib/oblique-fonts/LucidaTypewriterOblique.ttf -#usr/java/lib/oblique-fonts/fonts.dir -usr/java/lib/plugin.jar -#usr/java/lib/psfont.properties.ja -#usr/java/lib/psfontj2d.properties -usr/java/lib/resources.jar -usr/java/lib/rt.jar -usr/java/lib/security -usr/java/lib/security/US_export_policy.jar -usr/java/lib/security/cacerts -usr/java/lib/security/java.policy -usr/java/lib/security/java.security -usr/java/lib/security/javaws.policy -usr/java/lib/security/local_policy.jar -usr/java/lib/servicetag -usr/java/lib/servicetag/jdk_header.png -usr/java/lib/servicetag/registration.xml -#usr/java/lib/sound.properties -#usr/java/lib/zi -#usr/java/lib/zi/Africa -#usr/java/lib/zi/Africa/Abidjan -#usr/java/lib/zi/Africa/Accra -#usr/java/lib/zi/Africa/Addis_Ababa -#usr/java/lib/zi/Africa/Algiers -#usr/java/lib/zi/Africa/Asmara -#usr/java/lib/zi/Africa/Bamako -#usr/java/lib/zi/Africa/Bangui -#usr/java/lib/zi/Africa/Banjul -#usr/java/lib/zi/Africa/Bissau -#usr/java/lib/zi/Africa/Blantyre -#usr/java/lib/zi/Africa/Brazzaville -#usr/java/lib/zi/Africa/Bujumbura -#usr/java/lib/zi/Africa/Cairo -#usr/java/lib/zi/Africa/Casablanca -#usr/java/lib/zi/Africa/Ceuta -#usr/java/lib/zi/Africa/Conakry -#usr/java/lib/zi/Africa/Dakar -#usr/java/lib/zi/Africa/Dar_es_Salaam -#usr/java/lib/zi/Africa/Djibouti -#usr/java/lib/zi/Africa/Douala -#usr/java/lib/zi/Africa/El_Aaiun -#usr/java/lib/zi/Africa/Freetown -#usr/java/lib/zi/Africa/Gaborone -#usr/java/lib/zi/Africa/Harare -#usr/java/lib/zi/Africa/Johannesburg -#usr/java/lib/zi/Africa/Kampala -#usr/java/lib/zi/Africa/Khartoum -#usr/java/lib/zi/Africa/Kigali -#usr/java/lib/zi/Africa/Kinshasa -#usr/java/lib/zi/Africa/Lagos -#usr/java/lib/zi/Africa/Libreville -#usr/java/lib/zi/Africa/Lome -#usr/java/lib/zi/Africa/Luanda -#usr/java/lib/zi/Africa/Lubumbashi -#usr/java/lib/zi/Africa/Lusaka -#usr/java/lib/zi/Africa/Malabo -#usr/java/lib/zi/Africa/Maputo -#usr/java/lib/zi/Africa/Maseru -#usr/java/lib/zi/Africa/Mbabane -#usr/java/lib/zi/Africa/Mogadishu -#usr/java/lib/zi/Africa/Monrovia -#usr/java/lib/zi/Africa/Nairobi -#usr/java/lib/zi/Africa/Ndjamena -#usr/java/lib/zi/Africa/Niamey -#usr/java/lib/zi/Africa/Nouakchott -#usr/java/lib/zi/Africa/Ouagadougou -#usr/java/lib/zi/Africa/Porto-Novo -#usr/java/lib/zi/Africa/Sao_Tome -#usr/java/lib/zi/Africa/Tripoli -#usr/java/lib/zi/Africa/Tunis -#usr/java/lib/zi/Africa/Windhoek -#usr/java/lib/zi/America -#usr/java/lib/zi/America/Adak -#usr/java/lib/zi/America/Anchorage -#usr/java/lib/zi/America/Anguilla -#usr/java/lib/zi/America/Antigua -#usr/java/lib/zi/America/Araguaina -#usr/java/lib/zi/America/Argentina -#usr/java/lib/zi/America/Argentina/Buenos_Aires -#usr/java/lib/zi/America/Argentina/Catamarca -#usr/java/lib/zi/America/Argentina/Cordoba -#usr/java/lib/zi/America/Argentina/Jujuy -#usr/java/lib/zi/America/Argentina/La_Rioja -#usr/java/lib/zi/America/Argentina/Mendoza -#usr/java/lib/zi/America/Argentina/Rio_Gallegos -#usr/java/lib/zi/America/Argentina/Salta -#usr/java/lib/zi/America/Argentina/San_Juan -#usr/java/lib/zi/America/Argentina/San_Luis -#usr/java/lib/zi/America/Argentina/Tucuman -#usr/java/lib/zi/America/Argentina/Ushuaia -#usr/java/lib/zi/America/Aruba -#usr/java/lib/zi/America/Asuncion -#usr/java/lib/zi/America/Atikokan -#usr/java/lib/zi/America/Bahia -#usr/java/lib/zi/America/Barbados -#usr/java/lib/zi/America/Belem -#usr/java/lib/zi/America/Belize -#usr/java/lib/zi/America/Blanc-Sablon -#usr/java/lib/zi/America/Boa_Vista -#usr/java/lib/zi/America/Bogota -#usr/java/lib/zi/America/Boise -#usr/java/lib/zi/America/Cambridge_Bay -#usr/java/lib/zi/America/Campo_Grande -#usr/java/lib/zi/America/Cancun -#usr/java/lib/zi/America/Caracas -#usr/java/lib/zi/America/Cayenne -#usr/java/lib/zi/America/Cayman -#usr/java/lib/zi/America/Chicago -#usr/java/lib/zi/America/Chihuahua -#usr/java/lib/zi/America/Costa_Rica -#usr/java/lib/zi/America/Cuiaba -#usr/java/lib/zi/America/Curacao -#usr/java/lib/zi/America/Danmarkshavn -#usr/java/lib/zi/America/Dawson -#usr/java/lib/zi/America/Dawson_Creek -#usr/java/lib/zi/America/Denver -#usr/java/lib/zi/America/Detroit -#usr/java/lib/zi/America/Dominica -#usr/java/lib/zi/America/Edmonton -#usr/java/lib/zi/America/Eirunepe -#usr/java/lib/zi/America/El_Salvador -#usr/java/lib/zi/America/Fortaleza -#usr/java/lib/zi/America/Glace_Bay -#usr/java/lib/zi/America/Godthab -#usr/java/lib/zi/America/Goose_Bay -#usr/java/lib/zi/America/Grand_Turk -#usr/java/lib/zi/America/Grenada -#usr/java/lib/zi/America/Guadeloupe -#usr/java/lib/zi/America/Guatemala -#usr/java/lib/zi/America/Guayaquil -#usr/java/lib/zi/America/Guyana -#usr/java/lib/zi/America/Halifax -#usr/java/lib/zi/America/Havana -#usr/java/lib/zi/America/Hermosillo -#usr/java/lib/zi/America/Indiana -#usr/java/lib/zi/America/Indiana/Indianapolis -#usr/java/lib/zi/America/Indiana/Knox -#usr/java/lib/zi/America/Indiana/Marengo -#usr/java/lib/zi/America/Indiana/Petersburg -#usr/java/lib/zi/America/Indiana/Tell_City -#usr/java/lib/zi/America/Indiana/Vevay -#usr/java/lib/zi/America/Indiana/Vincennes -#usr/java/lib/zi/America/Indiana/Winamac -#usr/java/lib/zi/America/Inuvik -#usr/java/lib/zi/America/Iqaluit -#usr/java/lib/zi/America/Jamaica -#usr/java/lib/zi/America/Juneau -#usr/java/lib/zi/America/Kentucky -#usr/java/lib/zi/America/Kentucky/Louisville -#usr/java/lib/zi/America/Kentucky/Monticello -#usr/java/lib/zi/America/La_Paz -#usr/java/lib/zi/America/Lima -#usr/java/lib/zi/America/Los_Angeles -#usr/java/lib/zi/America/Maceio -#usr/java/lib/zi/America/Managua -#usr/java/lib/zi/America/Manaus -#usr/java/lib/zi/America/Martinique -#usr/java/lib/zi/America/Mazatlan -#usr/java/lib/zi/America/Menominee -#usr/java/lib/zi/America/Merida -#usr/java/lib/zi/America/Mexico_City -#usr/java/lib/zi/America/Miquelon -#usr/java/lib/zi/America/Moncton -#usr/java/lib/zi/America/Monterrey -#usr/java/lib/zi/America/Montevideo -#usr/java/lib/zi/America/Montreal -#usr/java/lib/zi/America/Montserrat -#usr/java/lib/zi/America/Nassau -#usr/java/lib/zi/America/New_York -#usr/java/lib/zi/America/Nipigon -#usr/java/lib/zi/America/Nome -#usr/java/lib/zi/America/Noronha -#usr/java/lib/zi/America/North_Dakota -#usr/java/lib/zi/America/North_Dakota/Center -#usr/java/lib/zi/America/North_Dakota/New_Salem -#usr/java/lib/zi/America/Panama -#usr/java/lib/zi/America/Pangnirtung -#usr/java/lib/zi/America/Paramaribo -#usr/java/lib/zi/America/Phoenix -#usr/java/lib/zi/America/Port-au-Prince -#usr/java/lib/zi/America/Port_of_Spain -#usr/java/lib/zi/America/Porto_Velho -#usr/java/lib/zi/America/Puerto_Rico -#usr/java/lib/zi/America/Rainy_River -#usr/java/lib/zi/America/Rankin_Inlet -#usr/java/lib/zi/America/Recife -#usr/java/lib/zi/America/Regina -#usr/java/lib/zi/America/Resolute -#usr/java/lib/zi/America/Rio_Branco -#usr/java/lib/zi/America/Santarem -#usr/java/lib/zi/America/Santiago -#usr/java/lib/zi/America/Santo_Domingo -#usr/java/lib/zi/America/Sao_Paulo -#usr/java/lib/zi/America/Scoresbysund -#usr/java/lib/zi/America/St_Johns -#usr/java/lib/zi/America/St_Kitts -#usr/java/lib/zi/America/St_Lucia -#usr/java/lib/zi/America/St_Thomas -#usr/java/lib/zi/America/St_Vincent -#usr/java/lib/zi/America/Swift_Current -#usr/java/lib/zi/America/Tegucigalpa -#usr/java/lib/zi/America/Thule -#usr/java/lib/zi/America/Thunder_Bay -#usr/java/lib/zi/America/Tijuana -#usr/java/lib/zi/America/Toronto -#usr/java/lib/zi/America/Tortola -#usr/java/lib/zi/America/Vancouver -#usr/java/lib/zi/America/Whitehorse -#usr/java/lib/zi/America/Winnipeg -#usr/java/lib/zi/America/Yakutat -#usr/java/lib/zi/America/Yellowknife -#usr/java/lib/zi/Antarctica -#usr/java/lib/zi/Antarctica/Casey -#usr/java/lib/zi/Antarctica/Davis -#usr/java/lib/zi/Antarctica/DumontDUrville -#usr/java/lib/zi/Antarctica/Mawson -#usr/java/lib/zi/Antarctica/McMurdo -#usr/java/lib/zi/Antarctica/Palmer -#usr/java/lib/zi/Antarctica/Rothera -#usr/java/lib/zi/Antarctica/Syowa -#usr/java/lib/zi/Antarctica/Vostok -#usr/java/lib/zi/Asia -#usr/java/lib/zi/Asia/Aden -#usr/java/lib/zi/Asia/Almaty -#usr/java/lib/zi/Asia/Amman -#usr/java/lib/zi/Asia/Anadyr -#usr/java/lib/zi/Asia/Aqtau -#usr/java/lib/zi/Asia/Aqtobe -#usr/java/lib/zi/Asia/Ashgabat -#usr/java/lib/zi/Asia/Baghdad -#usr/java/lib/zi/Asia/Bahrain -#usr/java/lib/zi/Asia/Baku -#usr/java/lib/zi/Asia/Bangkok -#usr/java/lib/zi/Asia/Beirut -#usr/java/lib/zi/Asia/Bishkek -#usr/java/lib/zi/Asia/Brunei -#usr/java/lib/zi/Asia/Choibalsan -#usr/java/lib/zi/Asia/Chongqing -#usr/java/lib/zi/Asia/Colombo -#usr/java/lib/zi/Asia/Damascus -#usr/java/lib/zi/Asia/Dhaka -#usr/java/lib/zi/Asia/Dili -#usr/java/lib/zi/Asia/Dubai -#usr/java/lib/zi/Asia/Dushanbe -#usr/java/lib/zi/Asia/Gaza -#usr/java/lib/zi/Asia/Harbin -#usr/java/lib/zi/Asia/Ho_Chi_Minh -#usr/java/lib/zi/Asia/Hong_Kong -#usr/java/lib/zi/Asia/Hovd -#usr/java/lib/zi/Asia/Irkutsk -#usr/java/lib/zi/Asia/Jakarta -#usr/java/lib/zi/Asia/Jayapura -#usr/java/lib/zi/Asia/Jerusalem -#usr/java/lib/zi/Asia/Kabul -#usr/java/lib/zi/Asia/Kamchatka -#usr/java/lib/zi/Asia/Karachi -#usr/java/lib/zi/Asia/Kashgar -#usr/java/lib/zi/Asia/Katmandu -#usr/java/lib/zi/Asia/Kolkata -#usr/java/lib/zi/Asia/Krasnoyarsk -#usr/java/lib/zi/Asia/Kuala_Lumpur -#usr/java/lib/zi/Asia/Kuching -#usr/java/lib/zi/Asia/Kuwait -#usr/java/lib/zi/Asia/Macau -#usr/java/lib/zi/Asia/Magadan -#usr/java/lib/zi/Asia/Makassar -#usr/java/lib/zi/Asia/Manila -#usr/java/lib/zi/Asia/Muscat -#usr/java/lib/zi/Asia/Nicosia -#usr/java/lib/zi/Asia/Novosibirsk -#usr/java/lib/zi/Asia/Omsk -#usr/java/lib/zi/Asia/Oral -#usr/java/lib/zi/Asia/Phnom_Penh -#usr/java/lib/zi/Asia/Pontianak -#usr/java/lib/zi/Asia/Pyongyang -#usr/java/lib/zi/Asia/Qatar -#usr/java/lib/zi/Asia/Qyzylorda -#usr/java/lib/zi/Asia/Rangoon -#usr/java/lib/zi/Asia/Riyadh -#usr/java/lib/zi/Asia/Riyadh87 -#usr/java/lib/zi/Asia/Riyadh88 -#usr/java/lib/zi/Asia/Riyadh89 -#usr/java/lib/zi/Asia/Sakhalin -#usr/java/lib/zi/Asia/Samarkand -#usr/java/lib/zi/Asia/Seoul -#usr/java/lib/zi/Asia/Shanghai -#usr/java/lib/zi/Asia/Singapore -#usr/java/lib/zi/Asia/Taipei -#usr/java/lib/zi/Asia/Tashkent -#usr/java/lib/zi/Asia/Tbilisi -#usr/java/lib/zi/Asia/Tehran -#usr/java/lib/zi/Asia/Thimphu -#usr/java/lib/zi/Asia/Tokyo -#usr/java/lib/zi/Asia/Ulaanbaatar -#usr/java/lib/zi/Asia/Urumqi -#usr/java/lib/zi/Asia/Vientiane -#usr/java/lib/zi/Asia/Vladivostok -#usr/java/lib/zi/Asia/Yakutsk -#usr/java/lib/zi/Asia/Yekaterinburg -#usr/java/lib/zi/Asia/Yerevan -#usr/java/lib/zi/Atlantic -#usr/java/lib/zi/Atlantic/Azores -#usr/java/lib/zi/Atlantic/Bermuda -#usr/java/lib/zi/Atlantic/Canary -#usr/java/lib/zi/Atlantic/Cape_Verde -#usr/java/lib/zi/Atlantic/Faroe -#usr/java/lib/zi/Atlantic/Madeira -#usr/java/lib/zi/Atlantic/Reykjavik -#usr/java/lib/zi/Atlantic/South_Georgia -#usr/java/lib/zi/Atlantic/St_Helena -#usr/java/lib/zi/Atlantic/Stanley -#usr/java/lib/zi/Australia -#usr/java/lib/zi/Australia/Adelaide -#usr/java/lib/zi/Australia/Brisbane -#usr/java/lib/zi/Australia/Broken_Hill -#usr/java/lib/zi/Australia/Currie -#usr/java/lib/zi/Australia/Darwin -#usr/java/lib/zi/Australia/Eucla -#usr/java/lib/zi/Australia/Hobart -#usr/java/lib/zi/Australia/Lindeman -#usr/java/lib/zi/Australia/Lord_Howe -#usr/java/lib/zi/Australia/Melbourne -#usr/java/lib/zi/Australia/Perth -#usr/java/lib/zi/Australia/Sydney -#usr/java/lib/zi/CET -#usr/java/lib/zi/CST6CDT -#usr/java/lib/zi/EET -#usr/java/lib/zi/EST -#usr/java/lib/zi/EST5EDT -#usr/java/lib/zi/Etc -#usr/java/lib/zi/Etc/GMT -#usr/java/lib/zi/Etc/GMT+1 -#usr/java/lib/zi/Etc/GMT+10 -#usr/java/lib/zi/Etc/GMT+11 -#usr/java/lib/zi/Etc/GMT+12 -#usr/java/lib/zi/Etc/GMT+2 -#usr/java/lib/zi/Etc/GMT+3 -#usr/java/lib/zi/Etc/GMT+4 -#usr/java/lib/zi/Etc/GMT+5 -#usr/java/lib/zi/Etc/GMT+6 -#usr/java/lib/zi/Etc/GMT+7 -#usr/java/lib/zi/Etc/GMT+8 -#usr/java/lib/zi/Etc/GMT+9 -#usr/java/lib/zi/Etc/GMT-1 -#usr/java/lib/zi/Etc/GMT-10 -#usr/java/lib/zi/Etc/GMT-11 -#usr/java/lib/zi/Etc/GMT-12 -#usr/java/lib/zi/Etc/GMT-13 -#usr/java/lib/zi/Etc/GMT-14 -#usr/java/lib/zi/Etc/GMT-2 -#usr/java/lib/zi/Etc/GMT-3 -#usr/java/lib/zi/Etc/GMT-4 -#usr/java/lib/zi/Etc/GMT-5 -#usr/java/lib/zi/Etc/GMT-6 -#usr/java/lib/zi/Etc/GMT-7 -#usr/java/lib/zi/Etc/GMT-8 -#usr/java/lib/zi/Etc/GMT-9 -#usr/java/lib/zi/Etc/UCT -#usr/java/lib/zi/Etc/UTC -#usr/java/lib/zi/Europe -#usr/java/lib/zi/Europe/Amsterdam -#usr/java/lib/zi/Europe/Andorra -#usr/java/lib/zi/Europe/Athens -#usr/java/lib/zi/Europe/Belgrade -#usr/java/lib/zi/Europe/Berlin -#usr/java/lib/zi/Europe/Brussels -#usr/java/lib/zi/Europe/Bucharest -#usr/java/lib/zi/Europe/Budapest -#usr/java/lib/zi/Europe/Chisinau -#usr/java/lib/zi/Europe/Copenhagen -#usr/java/lib/zi/Europe/Dublin -#usr/java/lib/zi/Europe/Gibraltar -#usr/java/lib/zi/Europe/Helsinki -#usr/java/lib/zi/Europe/Istanbul -#usr/java/lib/zi/Europe/Kaliningrad -#usr/java/lib/zi/Europe/Kiev -#usr/java/lib/zi/Europe/Lisbon -#usr/java/lib/zi/Europe/London -#usr/java/lib/zi/Europe/Luxembourg -#usr/java/lib/zi/Europe/Madrid -#usr/java/lib/zi/Europe/Malta -#usr/java/lib/zi/Europe/Minsk -#usr/java/lib/zi/Europe/Monaco -#usr/java/lib/zi/Europe/Moscow -#usr/java/lib/zi/Europe/Oslo -#usr/java/lib/zi/Europe/Paris -#usr/java/lib/zi/Europe/Prague -#usr/java/lib/zi/Europe/Riga -#usr/java/lib/zi/Europe/Rome -#usr/java/lib/zi/Europe/Samara -#usr/java/lib/zi/Europe/Simferopol -#usr/java/lib/zi/Europe/Sofia -#usr/java/lib/zi/Europe/Stockholm -#usr/java/lib/zi/Europe/Tallinn -#usr/java/lib/zi/Europe/Tirane -#usr/java/lib/zi/Europe/Uzhgorod -#usr/java/lib/zi/Europe/Vaduz -#usr/java/lib/zi/Europe/Vienna -#usr/java/lib/zi/Europe/Vilnius -#usr/java/lib/zi/Europe/Volgograd -#usr/java/lib/zi/Europe/Warsaw -#usr/java/lib/zi/Europe/Zaporozhye -#usr/java/lib/zi/Europe/Zurich -#usr/java/lib/zi/GMT -#usr/java/lib/zi/HST -#usr/java/lib/zi/Indian -#usr/java/lib/zi/Indian/Antananarivo -#usr/java/lib/zi/Indian/Chagos -#usr/java/lib/zi/Indian/Christmas -#usr/java/lib/zi/Indian/Cocos -#usr/java/lib/zi/Indian/Comoro -#usr/java/lib/zi/Indian/Kerguelen -#usr/java/lib/zi/Indian/Mahe -#usr/java/lib/zi/Indian/Maldives -#usr/java/lib/zi/Indian/Mauritius -#usr/java/lib/zi/Indian/Mayotte -#usr/java/lib/zi/Indian/Reunion -#usr/java/lib/zi/MET -#usr/java/lib/zi/MST -#usr/java/lib/zi/MST7MDT -#usr/java/lib/zi/PST8PDT -#usr/java/lib/zi/Pacific -#usr/java/lib/zi/Pacific/Apia -#usr/java/lib/zi/Pacific/Auckland -#usr/java/lib/zi/Pacific/Chatham -#usr/java/lib/zi/Pacific/Easter -#usr/java/lib/zi/Pacific/Efate -#usr/java/lib/zi/Pacific/Enderbury -#usr/java/lib/zi/Pacific/Fakaofo -#usr/java/lib/zi/Pacific/Fiji -#usr/java/lib/zi/Pacific/Funafuti -#usr/java/lib/zi/Pacific/Galapagos -#usr/java/lib/zi/Pacific/Gambier -#usr/java/lib/zi/Pacific/Guadalcanal -#usr/java/lib/zi/Pacific/Guam -#usr/java/lib/zi/Pacific/Honolulu -#usr/java/lib/zi/Pacific/Johnston -#usr/java/lib/zi/Pacific/Kiritimati -#usr/java/lib/zi/Pacific/Kosrae -#usr/java/lib/zi/Pacific/Kwajalein -#usr/java/lib/zi/Pacific/Majuro -#usr/java/lib/zi/Pacific/Marquesas -#usr/java/lib/zi/Pacific/Midway -#usr/java/lib/zi/Pacific/Nauru -#usr/java/lib/zi/Pacific/Niue -#usr/java/lib/zi/Pacific/Norfolk -#usr/java/lib/zi/Pacific/Noumea -#usr/java/lib/zi/Pacific/Pago_Pago -#usr/java/lib/zi/Pacific/Palau -#usr/java/lib/zi/Pacific/Pitcairn -#usr/java/lib/zi/Pacific/Ponape -#usr/java/lib/zi/Pacific/Port_Moresby -#usr/java/lib/zi/Pacific/Rarotonga -#usr/java/lib/zi/Pacific/Saipan -#usr/java/lib/zi/Pacific/Tahiti -#usr/java/lib/zi/Pacific/Tarawa -#usr/java/lib/zi/Pacific/Tongatapu -#usr/java/lib/zi/Pacific/Truk -#usr/java/lib/zi/Pacific/Wake -#usr/java/lib/zi/Pacific/Wallis -#usr/java/lib/zi/SystemV -#usr/java/lib/zi/SystemV/AST4 -#usr/java/lib/zi/SystemV/AST4ADT -#usr/java/lib/zi/SystemV/CST6 -#usr/java/lib/zi/SystemV/CST6CDT -#usr/java/lib/zi/SystemV/EST5 -#usr/java/lib/zi/SystemV/EST5EDT -#usr/java/lib/zi/SystemV/HST10 -#usr/java/lib/zi/SystemV/MST7 -#usr/java/lib/zi/SystemV/MST7MDT -#usr/java/lib/zi/SystemV/PST8 -#usr/java/lib/zi/SystemV/PST8PDT -#usr/java/lib/zi/SystemV/YST9 -#usr/java/lib/zi/SystemV/YST9YDT -#usr/java/lib/zi/WET -#usr/java/lib/zi/ZoneInfoMappings -#usr/java/licenses -#usr/java/licenses/COPYRIGHT -#usr/java/licenses/LICENSE -#usr/java/licenses/README -#usr/java/licenses/THIRDPARTYLICENSEREADME.txt -#usr/java/licenses/Welcome.html -#usr/java/man -#usr/java/man/ja -#usr/java/man/ja_JP.eucJP -#usr/java/man/ja_JP.eucJP/man1 -#usr/java/man/ja_JP.eucJP/man1/java.1 -#usr/java/man/ja_JP.eucJP/man1/javaws.1 -#usr/java/man/ja_JP.eucJP/man1/keytool.1 -#usr/java/man/ja_JP.eucJP/man1/orbd.1 -#usr/java/man/ja_JP.eucJP/man1/pack200.1 -#usr/java/man/ja_JP.eucJP/man1/policytool.1 -#usr/java/man/ja_JP.eucJP/man1/rmid.1 -#usr/java/man/ja_JP.eucJP/man1/rmiregistry.1 -#usr/java/man/ja_JP.eucJP/man1/servertool.1 -#usr/java/man/ja_JP.eucJP/man1/tnameserv.1 -#usr/java/man/ja_JP.eucJP/man1/unpack200.1 -#usr/java/man/man1 -#usr/java/man/man1/java.1 -#usr/java/man/man1/javaws.1 -#usr/java/man/man1/keytool.1 -#usr/java/man/man1/orbd.1 -#usr/java/man/man1/pack200.1 -#usr/java/man/man1/policytool.1 -#usr/java/man/man1/rmid.1 -#usr/java/man/man1/rmiregistry.1 -#usr/java/man/man1/servertool.1 -#usr/java/man/man1/tnameserv.1 -#usr/java/man/man1/unpack200.1 -#usr/java/plugin -#usr/java/plugin/desktop -#usr/java/plugin/desktop/sun_java.desktop -#usr/java/plugin/desktop/sun_java.png -#usr/java/plugin/i386 -#usr/java/plugin/i386/ns7 -#usr/java/plugin/i386/ns7-gcc29 -#usr/java/plugin/i386/ns7-gcc29/libjavaplugin_oji.so -#usr/java/plugin/i386/ns7/libjavaplugin_oji.so -usr/java/version diff --git a/config/rootfiles/packages/libsatsolver b/config/rootfiles/packages/libsatsolver deleted file mode 100644 index 212eeea..0000000 --- a/config/rootfiles/packages/libsatsolver +++ /dev/null @@ -1,52 +0,0 @@ -#usr/include/satsolver -#usr/include/satsolver/bitmap.h -#usr/include/satsolver/chksum.h -#usr/include/satsolver/dirpool.h -#usr/include/satsolver/evr.h -#usr/include/satsolver/hash.h -#usr/include/satsolver/knownid.h -#usr/include/satsolver/md5.h -#usr/include/satsolver/policy.h -#usr/include/satsolver/pool.h -#usr/include/satsolver/pool_fileconflicts.h -#usr/include/satsolver/poolarch.h -#usr/include/satsolver/poolid.h -#usr/include/satsolver/pooltypes.h -#usr/include/satsolver/poolvendor.h -#usr/include/satsolver/problems.h -#usr/include/satsolver/queue.h -#usr/include/satsolver/repo.h -#usr/include/satsolver/repo_content.h -#usr/include/satsolver/repo_deb.h -#usr/include/satsolver/repo_deltainfoxml.h -#usr/include/satsolver/repo_helix.h -#usr/include/satsolver/repo_products.h -#usr/include/satsolver/repo_releasefile_products.h -#usr/include/satsolver/repo_repomdxml.h -#usr/include/satsolver/repo_rpmdb.h -#usr/include/satsolver/repo_rpmmd.h -#usr/include/satsolver/repo_solv.h -#usr/include/satsolver/repo_susetags.h -#usr/include/satsolver/repo_updateinfoxml.h -#usr/include/satsolver/repo_write.h -#usr/include/satsolver/repo_zyppdb.h -#usr/include/satsolver/repodata.h -#usr/include/satsolver/repopage.h -#usr/include/satsolver/rules.h -#usr/include/satsolver/sat_xfopen.h -#usr/include/satsolver/satversion.h -#usr/include/satsolver/sha1.h -#usr/include/satsolver/sha2.h -#usr/include/satsolver/solvable.h -#usr/include/satsolver/solver.h -#usr/include/satsolver/solverdebug.h -#usr/include/satsolver/strpool.h -#usr/include/satsolver/tools_util.h -#usr/include/satsolver/transaction.h -#usr/include/satsolver/util.h -usr/lib/libsatsolver.so -usr/lib/libsatsolver.so.0 -usr/lib/libsatsolver.so.0.16 -usr/lib/libsatsolverext.so -usr/lib/libsatsolverext.so.0 -usr/lib/libsatsolverext.so.0.16 diff --git a/config/rootfiles/packages/libsolv b/config/rootfiles/packages/libsolv new file mode 100644 index 0000000..587d514 --- /dev/null +++ b/config/rootfiles/packages/libsolv @@ -0,0 +1,47 @@ +#usr/include/solv +#usr/include/solv/bitmap.h +#usr/include/solv/chksum.h +#usr/include/solv/dirpool.h +#usr/include/solv/evr.h +#usr/include/solv/hash.h +#usr/include/solv/knownid.h +#usr/include/solv/policy.h +#usr/include/solv/pool.h +#usr/include/solv/pool_fileconflicts.h +#usr/include/solv/poolarch.h +#usr/include/solv/poolid.h +#usr/include/solv/pooltypes.h +#usr/include/solv/poolvendor.h +#usr/include/solv/problems.h +#usr/include/solv/queue.h +#usr/include/solv/repo.h +#usr/include/solv/repo_content.h +#usr/include/solv/repo_deb.h +#usr/include/solv/repo_deltainfoxml.h +#usr/include/solv/repo_helix.h +#usr/include/solv/repo_products.h +#usr/include/solv/repo_releasefile_products.h +#usr/include/solv/repo_repomdxml.h +#usr/include/solv/repo_rpmdb.h +#usr/include/solv/repo_rpmmd.h +#usr/include/solv/repo_solv.h +#usr/include/solv/repo_susetags.h +#usr/include/solv/repo_updateinfoxml.h +#usr/include/solv/repo_write.h +#usr/include/solv/repo_zyppdb.h +#usr/include/solv/repodata.h +#usr/include/solv/repopage.h +#usr/include/solv/rules.h +#usr/include/solv/solv_xfopen.h +#usr/include/solv/solvable.h +#usr/include/solv/solver.h +#usr/include/solv/solverdebug.h +#usr/include/solv/solvversion.h +#usr/include/solv/strpool.h +#usr/include/solv/tools_util.h +#usr/include/solv/transaction.h +#usr/include/solv/util.h +usr/lib/libsolv.so +usr/lib/libsolv.so.0 +usr/lib/libsolvext.so +usr/lib/libsolvext.so.0 diff --git a/config/rootfiles/packages/python-satsolver b/config/rootfiles/packages/python-satsolver deleted file mode 100644 index 6b5e576..0000000 --- a/config/rootfiles/packages/python-satsolver +++ /dev/null @@ -1,2 +0,0 @@ -usr/lib/python2.7/site-packages/_satsolver.so -usr/lib/python2.7/site-packages/satsolver.py diff --git a/config/rootfiles/packages/qemu b/config/rootfiles/packages/qemu index d061319..5062066 100644 --- a/config/rootfiles/packages/qemu +++ b/config/rootfiles/packages/qemu @@ -1,10 +1,12 @@ #etc/qemu etc/qemu/target-x86_64.conf usr/bin/qemu +usr/bin/qemu-ga usr/bin/qemu-i386 usr/bin/qemu-img usr/bin/qemu-io usr/bin/qemu-nbd +usr/bin/qemu-system-arm #usr/share/doc/qemu #usr/share/doc/qemu/qemu-doc.html #usr/share/doc/qemu/qemu-tech.html @@ -14,7 +16,7 @@ usr/bin/qemu-nbd usr/share/qemu usr/share/qemu/bamboo.dtb usr/share/qemu/bios.bin -usr/share/qemu/gpxe-eepro100-80861209.rom +usr/share/qemu/extboot.bin usr/share/qemu/keymaps usr/share/qemu/keymaps/ar usr/share/qemu/keymaps/common @@ -52,18 +54,24 @@ usr/share/qemu/keymaps/sv usr/share/qemu/keymaps/th usr/share/qemu/keymaps/tr usr/share/qemu/linuxboot.bin +usr/share/qemu/mpc8544ds.dtb usr/share/qemu/multiboot.bin usr/share/qemu/openbios-ppc usr/share/qemu/openbios-sparc32 usr/share/qemu/openbios-sparc64 +usr/share/qemu/petalogix-ml605.dtb usr/share/qemu/petalogix-s3adsp1800.dtb usr/share/qemu/ppc_rom.bin -usr/share/qemu/pxe-e1000.bin -usr/share/qemu/pxe-ne2k_pci.bin -usr/share/qemu/pxe-pcnet.bin -usr/share/qemu/pxe-rtl8139.bin -usr/share/qemu/pxe-virtio.bin +usr/share/qemu/pxe-e1000.rom +usr/share/qemu/pxe-eepro100.rom +usr/share/qemu/pxe-ne2k_pci.rom +usr/share/qemu/pxe-pcnet.rom +usr/share/qemu/pxe-rtl8139.rom +usr/share/qemu/pxe-virtio.rom usr/share/qemu/s390-zipl.rom +usr/share/qemu/slof.bin +usr/share/qemu/spapr-rtas.bin +usr/share/qemu/vapic.bin usr/share/qemu/vgabios-cirrus.bin usr/share/qemu/vgabios-qxl.bin usr/share/qemu/vgabios-stdvga.bin diff --git a/doc/language_issues.de b/doc/language_issues.de index d59f1f3..0f1b918 100644 --- a/doc/language_issues.de +++ b/doc/language_issues.de @@ -144,6 +144,8 @@ WARNING: translation string unused: error external access WARNING: translation string unused: expected WARNING: translation string unused: exportkey WARNING: translation string unused: external access rule changed +WARNING: translation string unused: extrahd unable to read +WARNING: translation string unused: extrahd unable to write WARNING: translation string unused: filename WARNING: translation string unused: firewall graphs WARNING: translation string unused: firewall log viewer @@ -307,6 +309,7 @@ WARNING: translation string unused: ovpn_processprioVH WARNING: translation string unused: ovpnstatus log WARNING: translation string unused: ovpnsys log WARNING: translation string unused: package failed to install +WARNING: translation string unused: pakfire core update auto WARNING: translation string unused: pakfire updates WARNING: translation string unused: password contains illegal characters WARNING: translation string unused: password crypting key @@ -462,3 +465,7 @@ WARNING: untranslated string: bytes WARNING: untranslated string: new WARNING: untranslated string: outgoing firewall reserved groupname WARNING: untranslated string: qos add subclass +WARNING: untranslated string: route config changed +WARNING: untranslated string: routing config added +WARNING: untranslated string: routing config changed +WARNING: untranslated string: routing table diff --git a/doc/language_issues.en b/doc/language_issues.en index 3df8ad2..bffff80 100644 --- a/doc/language_issues.en +++ b/doc/language_issues.en @@ -168,6 +168,8 @@ WARNING: translation string unused: error external access WARNING: translation string unused: expected WARNING: translation string unused: exportkey WARNING: translation string unused: external access rule changed +WARNING: translation string unused: extrahd unable to read +WARNING: translation string unused: extrahd unable to write WARNING: translation string unused: filename WARNING: translation string unused: firewall graphs WARNING: translation string unused: firewall log viewer @@ -335,6 +337,7 @@ WARNING: translation string unused: ovpn_processprioVH WARNING: translation string unused: ovpnstatus log WARNING: translation string unused: ovpnsys log WARNING: translation string unused: package failed to install +WARNING: translation string unused: pakfire core update auto WARNING: translation string unused: pakfire updates WARNING: translation string unused: password contains illegal characters WARNING: translation string unused: password crypting key @@ -494,3 +497,7 @@ WARNING: untranslated string: Scan for Songs WARNING: untranslated string: bytes WARNING: untranslated string: new WARNING: untranslated string: outgoing firewall reserved groupname +WARNING: untranslated string: route config changed +WARNING: untranslated string: routing config added +WARNING: untranslated string: routing config changed +WARNING: untranslated string: routing table diff --git a/doc/language_issues.es b/doc/language_issues.es index ae69c6f..0ef2eac 100644 --- a/doc/language_issues.es +++ b/doc/language_issues.es @@ -168,6 +168,8 @@ WARNING: translation string unused: error external access WARNING: translation string unused: expected WARNING: translation string unused: exportkey WARNING: translation string unused: external access rule changed +WARNING: translation string unused: extrahd unable to read +WARNING: translation string unused: extrahd unable to write WARNING: translation string unused: filename WARNING: translation string unused: firewall graphs WARNING: translation string unused: firewall log viewer @@ -336,6 +338,7 @@ WARNING: translation string unused: ovpn_processprioVH WARNING: translation string unused: ovpnstatus log WARNING: translation string unused: ovpnsys log WARNING: translation string unused: package failed to install +WARNING: translation string unused: pakfire core update auto WARNING: translation string unused: pakfire updates WARNING: translation string unused: password contains illegal characters WARNING: translation string unused: password crypting key @@ -530,4 +533,10 @@ WARNING: untranslated string: outgoing firewall p2p description 3 WARNING: untranslated string: outgoing firewall reserved groupname WARNING: untranslated string: outgoing firewall view group WARNING: untranslated string: pakfire ago +WARNING: untranslated string: route config changed +WARNING: untranslated string: routing config added +WARNING: untranslated string: routing config changed +WARNING: untranslated string: routing table +WARNING: untranslated string: static routes WARNING: untranslated string: system information +WARNING: untranslated string: vpn keyexchange diff --git a/doc/language_issues.fr b/doc/language_issues.fr index cb58f42..00cb462 100644 --- a/doc/language_issues.fr +++ b/doc/language_issues.fr @@ -168,7 +168,8 @@ WARNING: translation string unused: error external access WARNING: translation string unused: expected WARNING: translation string unused: exportkey WARNING: translation string unused: external access rule changed -WARNING: translation string unused: extrahd founded drives +WARNING: translation string unused: extrahd unable to read +WARNING: translation string unused: extrahd unable to write WARNING: translation string unused: filename WARNING: translation string unused: firewall graphs WARNING: translation string unused: firewall log viewer @@ -336,6 +337,7 @@ WARNING: translation string unused: ovpn_processprioVH WARNING: translation string unused: ovpnstatus log WARNING: translation string unused: ovpnsys log WARNING: translation string unused: package failed to install +WARNING: translation string unused: pakfire core update auto WARNING: translation string unused: pakfire updates WARNING: translation string unused: password contains illegal characters WARNING: translation string unused: password crypting key @@ -496,7 +498,6 @@ WARNING: translation string unused: yearly firewallhits WARNING: untranslated string: Scan for Songs WARNING: untranslated string: bytes WARNING: untranslated string: dns address deleted txt -WARNING: untranslated string: extrahd detected drives WARNING: untranslated string: fireinfo ipfire version WARNING: untranslated string: fireinfo is disabled WARNING: untranslated string: fireinfo is enabled @@ -520,11 +521,17 @@ WARNING: untranslated string: ntp common settings WARNING: untranslated string: ntp sync WARNING: untranslated string: outgoing firewall reserved groupname WARNING: untranslated string: pakfire ago +WARNING: untranslated string: route config changed +WARNING: untranslated string: routing config added +WARNING: untranslated string: routing config changed +WARNING: untranslated string: routing table WARNING: untranslated string: snort working +WARNING: untranslated string: static routes WARNING: untranslated string: system information WARNING: untranslated string: upload new ruleset WARNING: untranslated string: urlfilter file ext block WARNING: untranslated string: urlfilter mode block +WARNING: untranslated string: vpn keyexchange WARNING: untranslated string: wlanap access point WARNING: untranslated string: wlanap channel WARNING: untranslated string: wlanap debugging diff --git a/doc/language_issues.pl b/doc/language_issues.pl index ae69c6f..0ef2eac 100644 --- a/doc/language_issues.pl +++ b/doc/language_issues.pl @@ -168,6 +168,8 @@ WARNING: translation string unused: error external access WARNING: translation string unused: expected WARNING: translation string unused: exportkey WARNING: translation string unused: external access rule changed +WARNING: translation string unused: extrahd unable to read +WARNING: translation string unused: extrahd unable to write WARNING: translation string unused: filename WARNING: translation string unused: firewall graphs WARNING: translation string unused: firewall log viewer @@ -336,6 +338,7 @@ WARNING: translation string unused: ovpn_processprioVH WARNING: translation string unused: ovpnstatus log WARNING: translation string unused: ovpnsys log WARNING: translation string unused: package failed to install +WARNING: translation string unused: pakfire core update auto WARNING: translation string unused: pakfire updates WARNING: translation string unused: password contains illegal characters WARNING: translation string unused: password crypting key @@ -530,4 +533,10 @@ WARNING: untranslated string: outgoing firewall p2p description 3 WARNING: untranslated string: outgoing firewall reserved groupname WARNING: untranslated string: outgoing firewall view group WARNING: untranslated string: pakfire ago +WARNING: untranslated string: route config changed +WARNING: untranslated string: routing config added +WARNING: untranslated string: routing config changed +WARNING: untranslated string: routing table +WARNING: untranslated string: static routes WARNING: untranslated string: system information +WARNING: untranslated string: vpn keyexchange diff --git a/doc/language_issues.ru b/doc/language_issues.ru index f6cdbb9..9add81b 100644 --- a/doc/language_issues.ru +++ b/doc/language_issues.ru @@ -335,6 +335,7 @@ WARNING: translation string unused: ovpn_processprioVH WARNING: translation string unused: ovpnstatus log WARNING: translation string unused: ovpnsys log WARNING: translation string unused: package failed to install +WARNING: translation string unused: pakfire core update auto WARNING: translation string unused: pakfire updates WARNING: translation string unused: password contains illegal characters WARNING: translation string unused: password crypting key @@ -490,8 +491,23 @@ WARNING: translation string unused: web proxy configuration WARNING: translation string unused: weekly firewallhits WARNING: translation string unused: xtaccess bad transfert WARNING: translation string unused: yearly firewallhits +WARNING: untranslated string: Add a route +WARNING: untranslated string: Edit an existing route WARNING: untranslated string: Scan for Songs WARNING: untranslated string: bytes +WARNING: untranslated string: extrahd because there is already a device mounted +WARNING: untranslated string: extrahd cant umount +WARNING: untranslated string: extrahd install or load driver +WARNING: untranslated string: extrahd maybe the device is in use +WARNING: untranslated string: extrahd to +WARNING: untranslated string: extrahd to root +WARNING: untranslated string: extrahd you cant mount WARNING: untranslated string: minute WARNING: untranslated string: new WARNING: untranslated string: outgoing firewall reserved groupname +WARNING: untranslated string: route config changed +WARNING: untranslated string: routing config added +WARNING: untranslated string: routing config changed +WARNING: untranslated string: routing table +WARNING: untranslated string: static routes +WARNING: untranslated string: vpn keyexchange diff --git a/doc/language_missings b/doc/language_missings index ed44942..5dc1dae 100644 --- a/doc/language_missings +++ b/doc/language_missings @@ -11,7 +11,6 @@ # Checking cgi-bin translations for language: fr # ############################################################################ < dns address deleted txt -< extrahd detected drives < fireinfo ipfire version < fireinfo is disabled < fireinfo is enabled @@ -33,10 +32,12 @@ < ntp common settings < ntp sync < snort working +< static routes < system information < upload new ruleset < urlfilter file ext block < urlfilter mode block +< vpn keyexchange < wlanap access point < wlanap channel < wlanap debugging @@ -97,18 +98,44 @@ < outgoing firewall p2p description 3 < outgoing firewall view group < Set time on boot +< static routes < system information +< vpn keyexchange ############################################################################ # Checking install/setup translations for language: pl # ############################################################################ ############################################################################ # Checking cgi-bin translations for language: pl # ############################################################################ +< extrahd because there is already a device mounted +< extrahd cant umount +< extrahd install or load driver +< extrahd maybe the device is in use +< extrahd to +< extrahd to root +< extrahd unable to read +< extrahd unable to write +< extrahd you cant mount < minute +< static routes +< vpn keyexchange ############################################################################ # Checking install/setup translations for language: ru # ############################################################################ ############################################################################ # Checking cgi-bin translations for language: ru # ############################################################################ +< Add a route +< Edit an existing route +< extrahd because there is already a device mounted +< extrahd cant umount +< extrahd install or load driver +< extrahd maybe the device is in use +< extrahd to +< extrahd to root +< extrahd unable to read +< extrahd unable to write +< extrahd you cant mount < minute +< static routes +< vpn keyexchange diff --git a/html/cgi-bin/extrahd.cgi b/html/cgi-bin/extrahd.cgi index 3bb6afd..86b0de5 100644 --- a/html/cgi-bin/extrahd.cgi +++ b/html/cgi-bin/extrahd.cgi @@ -2,7 +2,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2010 IPFire Team info@ipfire.org # +# Copyright (C) 2011 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -79,11 +79,11 @@ if ($extrahdsettings{'ACTION'} eq $Lang::tr{'add'}) @deviceline = split( /;/, $deviceentry ); if ( "$extrahdsettings{'PATH'}" eq "$deviceline[2]" ) { $ok = "false"; - $errormessage = "You can't mount $extrahdsettings{'DEVICE'} to $extrahdsettings{'PATH'}, because there is already a device mounted."; + $errormessage = "$Lang::tr{'extrahd you cant mount'} $extrahdsettings{'DEVICE'} $Lang::tr{'extrahd to'} $extrahdsettings{'PATH'}$Lang::tr{'extrahd because there is already a device mounted'}."; } if ( "$extrahdsettings{'PATH'}" eq "/" ) { $ok = "false"; - $errormessage = "You can't mount $extrahdsettings{'DEVICE'} to root /."; + $errormessage = "$Lang::tr{'extrahd you cant mount'} $extrahdsettings{'DEVICE'} $Lang::tr{'extrahd to root'}."; } }
@@ -113,7 +113,7 @@ elsif ($extrahdsettings{'ACTION'} eq $Lang::tr{'delete'}) } close FILE; } else { - $errormessage = "Can't umount $extrahdsettings{'PATH'}. Maybe the device is in use?"; + $errormessage = "$Lang::tr{'extrahd cant umount'} $extrahdsettings{'PATH'}$Lang::tr{'extrahd maybe the device is in use'}?"; } }
@@ -143,10 +143,10 @@ END $color=$Header::colourgreen; } print <<END - <tr><td colspan="5"> - <tr><td align='center'><font color=$color><b>$deviceline[0]</b></font> - <td align='center'>$deviceline[1] - <td align='center'>$deviceline[2] + <tr><td colspan="4"> </td></tr> + <tr><td align='left'><font color=$color><b>$deviceline[0]</b></font></td> + <td align='left'>$deviceline[1]</td> + <td align='left'>$deviceline[2]</td> <td align='center'> <form method='post' action='$ENV{'SCRIPT_NAME'}'> <input type='hidden' name='DEVICE' value='$deviceline[0]' /> @@ -154,7 +154,7 @@ END <input type='hidden' name='PATH' value='$deviceline[2]' /> <input type='hidden' name='ACTION' value=$Lang::tr{'delete'} /> <input type='image' alt=$Lang::tr{'delete'} src='/images/delete.gif' /> - </form> + </form></td></tr> END ; } @@ -179,21 +179,26 @@ END foreach $scanentry (sort @scans) { @scanline = split( /;/, $scanentry ); - print <<END - <tr><td colspan="5"> - <tr><td align='left' colspan="2"><b>/dev/$scanline[0]</b> - <td align='center' colspan="2">$scanline[1] + # remove wrong entries like usb controller name + if ($scanline[1] ne "\n") + { + print <<END + <tr><td colspan="5"> </td></tr> + <tr><td align='left' colspan="2"><b>/dev/$scanline[0]</b></td> + <td align='center' colspan="2">$scanline[1]</td> END ; + + } foreach $partitionentry (sort @partitions) { @partitionline = split( /;/, $partitionentry ); if ( "$partitionline[0]" eq "$scanline[0]" ) { $size = int($partitionline[1] / 1024); print <<END - <td align='center'>$Lang::tr{'size'} $size MB - <td> - <tr><td colspan="5"> + <td align='center'>$Lang::tr{'size'} $size MB</td> + <td> </td></tr> + <tr><td colspan="5"> </td></tr> END ; } @@ -206,24 +211,27 @@ END $size = int($partitionline[1] / 1024); print <<END <form method='post' action='$ENV{'SCRIPT_NAME'}'> - <tr><td align="left" colspan=5><b>UUID=$partitionline[2]</b></td></tr> + <tr><td align="left" colspan=5><strong>UUID=$partitionline[2]</strong></td></tr> <tr> <td align="list">/dev/$partitionline[0]</td> - <td align="center">$Lang::tr{'size'} $size MB + <td align="center">$Lang::tr{'size'} $size MB</td> <td align="center"><select name="FS"> <option value="auto">auto</option> <option value="ext3">ext3</option> + <option value="ext4">ext4</option> <option value="reiserfs">reiserfs</option> <option value="vfat">fat</option> <option value="ntfs-3g">ntfs (experimental)</option> - </select> - <td align="center"><input type='text' name='PATH' value=/mnt/harddisk /> + </select></td> + <td align="center"><input type='text' name='PATH' value=/mnt/harddisk /></td> <td align="center"> <input type='hidden' name='DEVICE' value='$partitionline[0]' /> <input type='hidden' name='UUID' value='$partitionline[2]' /> <input type='hidden' name='ACTION' value=$Lang::tr{'add'} /> <input type='image' alt=$Lang::tr{'add'} src='/images/add.gif' /> - </form> + </form></td></tr> +END +;
END ; @@ -232,7 +240,9 @@ END }
print <<END - <tr><td align="center" colspan="5">If your device isn't listed here, you need to install or load the driver.<br />If you can see your device but no partitions you have to create them first. + <tr><td align="center" colspan="5"> </td></tr> + <tr><td align="center" colspan="5"> </td></tr> + <tr><td align="center" colspan="5">$Lang::tr{'extrahd install or load driver'}</td></tr> </table> END ; diff --git a/html/cgi-bin/index.cgi b/html/cgi-bin/index.cgi index 0dcadb0..0ef95ba 100644 --- a/html/cgi-bin/index.cgi +++ b/html/cgi-bin/index.cgi @@ -369,7 +369,9 @@ END $active = "<table cellpadding='2' cellspacing='0' bgcolor='${Header::colourblue}' width='100%'><tr><td align='center'><b><font color='#FFFFFF'>$Lang::tr{'capsclosed'}</font></b></td></tr></table>"; } else { foreach my $line (@status) { - if ($line =~ /"$confighash{$key}[1]".*IPsec SA established/) { + if (($line =~ /"$confighash{$key}[1]".*IPsec SA established/) || + ($line =~/$confighash{$key}[1]{.*INSTALLED/ )) + { $active = "<table cellpadding='2' cellspacing='0' bgcolor='${Header::colourgreen}' width='100%'><tr><td align='center'><b><font color='#FFFFFF'>$Lang::tr{'capsopen'}</font></b></td></tr></table>"; } } @@ -388,6 +390,25 @@ END END }
+### +# m.a.d n2n +### + +if ( -d "${General::swroot}/ovpn/n2nconf") { +my %confighash=(); +&General::readhasharray("${General::swroot}/ovpn/ovpnconfig", %confighash); +foreach my $dkey (keys %confighash) { +if ($confighash{$dkey}[0] eq 'on' && $confighash{$dkey}[3] eq 'net') { +my @n2novpnet = split(///,$confighash{$dkey}[27]); + print <<END; + <tr><td align='center' bgcolor='$Header::colourvpn' width='25%'><a href="/cgi-bin/ovpnmain.cgi"><font size='2' color='white'><b>OpenVPN n2n</b></font></a><br> + <td width='30%' align='center'> $n2novpnet[0] + <td width='45%' align='center'><font color=$Header::colourblue>$confighash{$dkey}[6]</font> +END +} +} + } + # Fireinfo if ( ! -e "/var/ipfire/main/send_profile") { $warnmessage .= "<li><a style='color: white;' href='fireinfo.cgi'>$Lang::tr{'fireinfo please enable'}</a></li>"; diff --git a/html/cgi-bin/outgoinggrp.cgi b/html/cgi-bin/outgoinggrp.cgi index e757ca0..1c3d695 100644 --- a/html/cgi-bin/outgoinggrp.cgi +++ b/html/cgi-bin/outgoinggrp.cgi @@ -87,6 +87,8 @@ if ($outgrpsettings{'ACTION'} eq 'newipgroup')
if ( -e "$configpath/macgroups/$outgrpsettings{'ipgroup'}" ){ $errormessage = "$Lang::tr{'outgoing firewall group error'}"; + } elsif ( $outgrpsettings{'ipgroup'} =~ /\W/ ){ + $errormessage = $Lang::tr{'name must only contain characters'}." - ".$outgrpsettings{'ipgroup'}; } elsif ( $outgrpsettings{'ipgroup'} eq "all" || $outgrpsettings{'ipgroup'} eq "red" || $outgrpsettings{'ipgroup'} eq "blue" || $outgrpsettings{'ipgroup'} eq "green" || $outgrpsettings{'ipgroup'} eq "orange" || $outgrpsettings{'ipgroup'} eq "ip" || $outgrpsettings{'ipgroup'} eq "mac" || $outgrpsettings{'ipgroup'} eq "ovpn" || $outgrpsettings{'ipgroup'} eq "ipsec" ) { @@ -112,6 +114,8 @@ if ($outgrpsettings{'ACTION'} eq 'newmacgroup')
if ( -e "$configpath/ipgroups/$outgrpsettings{'macgroup'}" ){ $errormessage = "$Lang::tr{'outgoing firewall group error'}"; + } elsif ( $outgrpsettings{'macgroup'} =~ /\W/ ){ + $errormessage = $Lang::tr{'name must only contain characters'}." - ".$outgrpsettings{'macgroup'}; } elsif ( $outgrpsettings{'macgroup'} eq "all" || $outgrpsettings{'macgroup'} eq "red" || $outgrpsettings{'macgroup'} eq "blue" || $outgrpsettings{'macgroup'} eq "green" || $outgrpsettings{'macgroup'} eq "orange" || $outgrpsettings{'macgroup'} eq "ip" || $outgrpsettings{'macgroup'} eq "mac" || $outgrpsettings{'macgroup'} eq "ovpn" || $outgrpsettings{'macgroup'} eq "ipsec" ) { diff --git a/html/cgi-bin/ovpnmain.cgi b/html/cgi-bin/ovpnmain.cgi index c99e7be..db2f2c1 100644 --- a/html/cgi-bin/ovpnmain.cgi +++ b/html/cgi-bin/ovpnmain.cgi @@ -22,6 +22,7 @@ use CGI; use CGI qw/:standard/; use Net::DNS; +use Net::Ping; use File::Copy; use File::Temp qw/ tempfile tempdir /; use strict; @@ -32,8 +33,8 @@ require "${General::swroot}/header.pl"; require "${General::swroot}/countries.pl";
# enable only the following on debugging purpose -#use warnings; -#use CGI::Carp 'fatalsToBrowser'; +use warnings; +use CGI::Carp 'fatalsToBrowser'; #workaround to suppress a warning when a variable is used only once my @dummy = ( ${Header::colourgreen} ); undef (@dummy); @@ -72,6 +73,7 @@ $cgiparams{'DHCP_WINS'} = ''; $cgiparams{'DCOMPLZO'} = 'off'; $cgiparams{'MSSFIX'} = '';
+ &Header::getcgihash(%cgiparams, {'wantfile' => 1, 'filevar' => 'FH'});
# prepare openvpn config file @@ -395,6 +397,22 @@ sub emptyserverlog{
}
+### +# m.a.d net2net +### + +sub validdotmask +{ + my $ipdotmask = $_[0]; + if (&General::validip($ipdotmask)) { return 0; } + if (!($ipdotmask =~ /^(.*?)/(.*?)$/)) { } + my $mask = $2; + if (($mask =~ /./ )) { return 0; } + return 1; +} + + + #hier die refresh page if ( -e "${General::swroot}/ovpn/gencanow") { my $refresh = ''; @@ -514,12 +532,159 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'save-adv-options'}) { &writeserverconf();#hier ok }
+### +# m.a.d net2net +###
+if ($cgiparams{'ACTION'} eq $Lang::tr{'save'} && $cgiparams{'TYPE'} eq 'net' && $cgiparams{'SIDE'} eq 'server') +{
+my @remsubnet = split(///,$cgiparams{'REMOTE_SUBNET'}); +my @ovsubnettemp = split(/./,$cgiparams{'OVPN_SUBNET'}); +my $ovsubnet = "@ovsubnettemp[0].@ovsubnettemp[1].@ovsubnettemp[2]"; +my $tunmtu = ''; + +unless(-d "${General::swroot}/ovpn/n2nconf/"){mkdir "${General::swroot}/ovpn/n2nconf", 0755 or die "Unable to create dir $!";} +unless(-d "${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}"){mkdir "${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}", 0770 or die "Unable to create dir $!";} + + open(SERVERCONF, ">${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Unable to open ${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf: $!"; + + flock SERVERCONF, 2; + print SERVERCONF "# IPFire n2n Open VPN Server Config by ummeegge und m.a.d\n"; + print SERVERCONF "\n"; + print SERVERCONF "# User Security\n"; + print SERVERCONF "user nobody\n"; + print SERVERCONF "group nobody\n"; + print SERVERCONF "persist-tun\n"; + print SERVERCONF "persist-key\n"; + print SERVERCONF "script-security 2\n"; + print SERVERCONF "# IP/DNS for the Server Gateway - g2g Mode\n"; + print SERVERCONF "remote $cgiparams{'REMOTE'}\n"; + print SERVERCONF "float\n"; + print SERVERCONF "# IP address of the n2n VPN Subnet\n"; + print SERVERCONF "ifconfig $ovsubnet.1 $ovsubnet.2\n"; + print SERVERCONF "# Client gateway network\n"; + print SERVERCONF "route @remsubnet[0] @remsubnet[1]\n"; + print SERVERCONF "# tun device\n"; + print SERVERCONF "dev tun\n"; + print SERVERCONF "#Port and protocol\n"; + print SERVERCONF "port $cgiparams{'DEST_PORT'}\n"; + print SERVERCONF "proto $cgiparams{'PROTOCOL'}\n"; + print SERVERCONF "# Paketsize\n"; + if ($cgiparams{'MTU'} eq '') {$tunmtu = '1400'} else {$tunmtu = $cgiparams{'MTU'}}; + print SERVERCONF "tun-mtu $tunmtu\n"; + if ($cgiparams{'PROTOCOL'} eq 'udp') { + if ($cgiparams{'FRAGMENT'} eq '') { + print SERVERCONF "fragment 1300\r\n"; + } else { + print SERVERCONF "fragment $cgiparams{'FRAGMENT'}\n" + } + if ($cgiparams{'MSSFIX'} eq 'on') { + print SERVERCONF "mssfix\n"; + } + } + print SERVERCONF "# Auth Server\n"; + print SERVERCONF "tls-server\n"; + print SERVERCONF "ca ${General::swroot}/ovpn/ca/cacert.pem\n"; + print SERVERCONF "cert ${General::swroot}/ovpn/certs/servercert.pem\n"; + print SERVERCONF "key ${General::swroot}/ovpn/certs/serverkey.pem\n"; + print SERVERCONF "dh ${General::swroot}/ovpn/ca/dh1024.pem\n"; + print SERVERCONF "# Cipher\n"; + print SERVERCONF "cipher AES-256-CBC\n"; + if ($cgiparams{'COMPLZO'} eq 'on') { + print SERVERCONF "# Enable compession\n"; + print SERVERCONF "comp-lzo\r\n"; + } + print SERVERCONF "# Debug level\n"; + print SERVERCONF "verb 3\n"; + print SERVERCONF "# Tunnel check\n"; + print SERVERCONF "keepalive 10 60\n"; + print SERVERCONF "# start as daemon\n"; + print SERVERCONF "daemon $cgiparams{'NAME'}n2n\n"; + print SERVERCONF "writepid /var/run/$cgiparams{'NAME'}n2n.pid\n"; + print SERVERCONF "# Activate Management Interface on Port\n"; + print SERVERCONF "#management localhost 4711\n"; + close(SERVERCONF);
+} + +### +# m.a.d net2net +### + +if ($cgiparams{'ACTION'} eq $Lang::tr{'save'} && $cgiparams{'TYPE'} eq 'net' && $cgiparams{'SIDE'} eq 'client') +{ + my @ovsubnettemp = split(/./,$cgiparams{'OVPN_SUBNET'}); + my $ovsubnet = "@ovsubnettemp[0].@ovsubnettemp[1].@ovsubnettemp[2]"; + my @remsubnet = split(///,$cgiparams{'REMOTE_SUBNET'}); + my $tunmtu = ''; + +unless(-d "${General::swroot}/ovpn/n2nconf/"){mkdir "${General::swroot}/ovpn/n2nconf", 0755 or die "Unable to create dir $!";} +unless(-d "${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}"){mkdir "${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}", 0770 or die "Unable to create dir $!";} + + open(CLIENTCONF, ">${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Unable to open ${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf: $!"; + + flock CLIENTCONF, 2; + print CLIENTCONF "# IPFire rewritten n2n Open VPN Client Config by ummeegge und m.a.d\n"; + print CLIENTCONF "#\n"; + print CLIENTCONF "# User Security\n"; + print CLIENTCONF "user nobody\n"; + print CLIENTCONF "group nobody\n"; + print CLIENTCONF "persist-tun\n"; + print CLIENTCONF "persist-key\n"; + print CLIENTCONF "script-security 2\n"; + print CLIENTCONF "# IP/DNS for the Server Gateway - g2g Mode\n"; + print CLIENTCONF "remote $cgiparams{'REMOTE'}\n"; + print CLIENTCONF "float\n"; + print CLIENTCONF "# IP address of the n2n VPN Subnet\n"; + print CLIENTCONF "ifconfig $ovsubnet.2 $ovsubnet.1\n"; + print CLIENTCONF "# Server gateway network\n"; + print CLIENTCONF "route @remsubnet[0] @remsubnet[1]\n"; + print CLIENTCONF "# tun device\n"; + print CLIENTCONF "dev tun\n"; + print CLIENTCONF "#Port and protocol\n"; + print CLIENTCONF "port $cgiparams{'DEST_PORT'}\n"; + print CLIENTCONF "proto $cgiparams{'PROTOCOL'}\n"; + print CLIENTCONF "# Paketsize\n"; + if ($cgiparams{'MTU'} eq '') {$tunmtu = '1400'} else {$tunmtu = $cgiparams{'MTU'}}; + print CLIENTCONF "tun-mtu $tunmtu\n"; + if ($cgiparams{'PROTOCOL'} eq 'udp') { + if ($cgiparams{'FRAGMENT'} eq '') { + print CLIENTCONF "fragment 1300\r\n"; + } else { + print CLIENTCONF "fragment $cgiparams{'FRAGMENT'}\n" + } + if ($cgiparams{'MSSFIX'} eq 'on') { + print CLIENTCONF "mssfix\n"; + } + } + print CLIENTCONF "# Auth. Client\n"; + print CLIENTCONF "tls-client\n"; + print CLIENTCONF "# Cipher\n"; + print CLIENTCONF "cipher AES-256-CBC\n"; + print CLIENTCONF "pkcs12 ${General::swroot}/ovpn/certs/$cgiparams{'NAME'}.p12\r\n"; + if ($cgiparams{'COMPLZO'} eq 'on') { + print CLIENTCONF "# Enable compession\n"; + print CLIENTCONF "comp-lzo\r\n"; + } + print CLIENTCONF "# Debug Level\n"; + print CLIENTCONF "verb 3\n"; + print CLIENTCONF "# Tunnel check\n"; + print CLIENTCONF "keepalive 10 60\n"; + print CLIENTCONF "# Start sa daemon\n"; + print CLIENTCONF "daemon $cgiparams{'NAME'}n2n\n"; + print CLIENTCONF "writepid /var/run/$cgiparams{'NAME'}n2n.pid\n"; + print CLIENTCONF "# Activate Management Interface on Port\n"; + print CLIENTCONF "# management localhost 4711\n"; + close(CLIENTCONF); + +} + ### ### Save main settings ### + + if ($cgiparams{'ACTION'} eq $Lang::tr{'save'} && $cgiparams{'TYPE'} eq '' && $cgiparams{'KEY'} eq '') { &General::readhash("${General::swroot}/ovpn/settings", %vpnsettings); #DAN do we really need (to to check) this value? Besides if we listen on blue and orange too, @@ -1314,36 +1479,50 @@ END ### ### Enable/Disable connection ### + +### +# m.a.d net2net +### + }elsif ($cgiparams{'ACTION'} eq $Lang::tr{'toggle enable disable'}) {
&General::readhash("${General::swroot}/ovpn/settings", %vpnsettings); &General::readhasharray("${General::swroot}/ovpn/ovpnconfig", %confighash); - +# my $n2nactive = ''; + my $n2nactive = `/bin/ps ax|grep $confighash{$cgiparams{'KEY'}}[1]|grep -v grep|awk '{print $1}'`; + if ($confighash{$cgiparams{'KEY'}}) { - if ($confighash{$cgiparams{'KEY'}}[0] eq 'off') { + + + if ($confighash{$cgiparams{'KEY'}}[0] eq 'off') { $confighash{$cgiparams{'KEY'}}[0] = 'on'; &General::writehasharray("${General::swroot}/ovpn/ovpnconfig", %confighash); - #&writeserverconf(); -# if ($vpnsettings{'ENABLED'} eq 'on' || -# $vpnsettings{'ENABLED_BLUE'} eq 'on') { -# system('/usr/local/bin/ipsecctrl', 'S', $cgiparams{'KEY'}); -# } - } else { + + if ($confighash{$cgiparams{'KEY'}}[3] eq 'net'){ + system('/usr/local/bin/openvpnctrl', '-sn2n', $confighash{$cgiparams{'KEY'}}[1]); + } + + } else { + $confighash{$cgiparams{'KEY'}}[0] = 'off'; -# if ($vpnsettings{'ENABLED'} eq 'on' || -# $vpnsettings{'ENABLED_BLUE'} eq 'on') { -# system('/usr/local/bin/ipsecctrl', 'D', $cgiparams{'KEY'}); -# } - &General::writehasharray("${General::swroot}/ovpn/ovpnconfig", %confighash); - #&writeserverconf(); - } - } else { - $errormessage = $Lang::tr{'invalid key'}; - } + &General::writehasharray("${General::swroot}/ovpn/ovpnconfig", %confighash); + + if ($confighash{$cgiparams{'KEY'}}[3] eq 'net'){ + if ($n2nactive ne ''){ + system('/usr/local/bin/openvpnctrl', '-kn2n', $confighash{$cgiparams{'KEY'}}[1]); + } + + } else { + $errormessage = $Lang::tr{'invalid key'}; + } + } + }
### ### Download OpenVPN client package ### + + } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'dl client arch'}) { &General::readhash("${General::swroot}/ovpn/settings", %vpnsettings); &General::readhasharray("${General::swroot}/ovpn/ovpnconfig", %confighash); @@ -1352,9 +1531,104 @@ END my @fileholder; my $tempdir = tempdir( CLEANUP => 1 ); my $zippath = "$tempdir/"; - my $zipname = "$confighash{$cgiparams{'KEY'}}[1]-TO-IPFire.zip"; - my $zippathname = "$zippath$zipname"; - $clientovpn = "$confighash{$cgiparams{'KEY'}}[1]-TO-IPFire.ovpn"; + +### +# m.a.d net2net +### + +if ($confighash{$cgiparams{'KEY'}}[3] eq 'net'){ + + my $zipname = "$confighash{$cgiparams{'KEY'}}[1]-Client.zip"; + my $zippathname = "$zippath$zipname"; + $clientovpn = "$confighash{$cgiparams{'KEY'}}[1].conf"; + my @ovsubnettemp = split(/./,$confighash{$cgiparams{'KEY'}}[27]); + my $ovsubnet = "@ovsubnettemp[0].@ovsubnettemp[1].@ovsubnettemp[2]"; + my $tunmtu = ''; + my @remsubnet = split(///,$confighash{$cgiparams{'KEY'}}[8]); + + open(CLIENTCONF, ">$tempdir/$clientovpn") or die "Unable to open tempfile: $!"; + flock CLIENTCONF, 2; + + my $zip = Archive::Zip->new(); + print CLIENTCONF "# IPFire n2n Open VPN Client Config by ummeegge und m.a.d\n"; + print CLIENTCONF "# \n"; + print CLIENTCONF "# User Security\n"; + print CLIENTCONF "user nobody\n"; + print CLIENTCONF "group nobody\n"; + print CLIENTCONF "persist-tun\n"; + print CLIENTCONF "persist-key\n"; + print CLIENTCONF "script-security 2\n"; + print CLIENTCONF "# IP/DNS for the Server Gateway - g2g Mode\n"; + print CLIENTCONF "remote $vpnsettings{'VPN_IP'}\n"; + print CLIENTCONF "float\n"; + print CLIENTCONF "# IP adress of the VPN Subnet\n"; + print CLIENTCONF "ifconfig $ovsubnet.2 $ovsubnet.1\n"; + print CLIENTCONF "# Server Gateway Network\n"; + print CLIENTCONF "route $remsubnet[0] $remsubnet[1]\n"; + print CLIENTCONF "# tun Device\n"; + print CLIENTCONF "dev $vpnsettings{'DDEVICE'}\n"; + print CLIENTCONF "#Port and Protokoll\n"; + print CLIENTCONF "port $confighash{$cgiparams{'KEY'}}[29]\n"; + print CLIENTCONF "proto $confighash{$cgiparams{'KEY'}}[28]\n"; + print CLIENTCONF "# Paketsize\n"; + if ($confighash{$cgiparams{'KEY'}}[31] eq '') {$tunmtu = '1400'} else {$tunmtu = $confighash{$cgiparams{'KEY'}}[31]}; + print CLIENTCONF "tun-mtu $tunmtu\n"; + if ($confighash{$cgiparams{'KEY'}}[28] eq 'udp') { + if ($cgiparams{'FRAGMENT'} eq '') { + print CLIENTCONF "fragment 1300\r\n"; + } else { + print CLIENTCONF "fragment $cgiparams{'FRAGMENT'}\n" + } + if ($confighash{$cgiparams{'KEY'}}[23] eq 'on') { + print CLIENTCONF "mssfix\n"; + } + } + print CLIENTCONF "# Auth. Client\n"; + print CLIENTCONF "tls-client\n"; + print CLIENTCONF "# Cipher\n"; + print CLIENTCONF "cipher AES-256-CBC\n"; + if ($confighash{$cgiparams{'KEY'}}[4] eq 'cert' && -f "${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1].p12") { + print CLIENTCONF "pkcs12 ${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1].p12\r\n"; + $zip->addFile( "${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1].p12", "$confighash{$cgiparams{'KEY'}}[1].p12") or die "Can't add file $confighash{$cgiparams{'KEY'}}[1].p12\n"; + } + if ($confighash{$cgiparams{'KEY'}}[30] eq 'on') { + print CLIENTCONF "# Enable Compression\n"; + print CLIENTCONF "comp-lzo\r\n"; + } + print CLIENTCONF "# Debug Level\n"; + print CLIENTCONF "verb 3\n"; + print CLIENTCONF "# Tunnel check\n"; + print CLIENTCONF "keepalive 10 60\n"; + print CLIENTCONF "# Start as daemon\n"; + print CLIENTCONF "daemon $confighash{$cgiparams{'KEY'}}[1]n2n\n"; + print CLIENTCONF "writepid /var/run/$confighash{$cgiparams{'KEY'}}[1]n2n.pid\n"; + print CLIENTCONF "# Activate Management Interface and Port\n"; + print CLIENTCONF "# management localhost 4711\n"; + print CLIENTCONF "# remsub $confighash{$cgiparams{'KEY'}}[11]\n"; + + + close(CLIENTCONF); + + $zip->addFile( "$tempdir/$clientovpn", $clientovpn) or die "Can't add file $clientovpn\n"; + my $status = $zip->writeToFileNamed($zippathname); + + open(DLFILE, "<$zippathname") or die "Unable to open $zippathname: $!"; + @fileholder = <DLFILE>; + print "Content-Type:application/x-download\n"; + print "Content-Disposition:attachment;filename=$zipname\n\n"; + print @fileholder; + exit (0); +} +else +{ + my $zipname = "$confighash{$cgiparams{'KEY'}}[1]-TO-IPFire.zip"; + my $zippathname = "$zippath$zipname"; + $clientovpn = "$confighash{$cgiparams{'KEY'}}[1]-TO-IPFire.ovpn"; + +### +# m.a.d net2net +### + open(CLIENTCONF, ">$tempdir/$clientovpn") or die "Unable to open tempfile: $!"; flock CLIENTCONF, 2;
@@ -1410,6 +1684,7 @@ END print CLIENTCONF "fragment $vpnsettings{'FRAGMENT'}\r\n"; } close(CLIENTCONF); + $zip->addFile( "$tempdir/$clientovpn", $clientovpn) or die "Can't add file $clientovpn\n"; my $status = $zip->writeToFileNamed($zippathname);
@@ -1419,10 +1694,15 @@ END print "Content-Disposition:attachment;filename=$zipname\n\n"; print @fileholder; exit (0); - + } + + + ### ### Remove connection ### + + } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'remove'}) { &General::readhash("${General::swroot}/ovpn/settings", %vpnsettings); &General::readhasharray("${General::swroot}/ovpn/ovpnconfig", %confighash); @@ -1434,7 +1714,22 @@ END # } # my $temp = `/usr/bin/openssl ca -revoke ${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem -config ${General::swroot}/ovpn/openssl/ovpn.cnf`; - unlink ("${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem"); + +### +# m.a.d net2net +### + + if ($confighash{$cgiparams{'KEY'}}[3] eq 'net') { + + my $conffile = glob("${General::swroot}/ovpn/n2nconf/$confighash{$cgiparams{'KEY'}}[1]/$confighash{$cgiparams{'KEY'}}[1].conf"); + my $certfile = glob("${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1].p12"); + unlink ($certfile) or die "Removing $certfile fail: $!"; + unlink ($conffile) or die "Removing $conffile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$confighash{$cgiparams{'KEY'}}[1]") || die "Kann Verzeichnis nicht loeschen: $!"; + +} + + unlink ("${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem"); unlink ("${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1].p12"); delete $confighash{$cgiparams{'KEY'}}; my $temp2 = `/usr/bin/openssl ca -gencrl -out ${General::swroot}/ovpn/crls/cacrl.pem -config ${General::swroot}/ovpn/openssl/ovpn.cnf`; @@ -1443,6 +1738,8 @@ END } else { $errormessage = $Lang::tr{'invalid key'}; } + + ### ### Download PKCS12 file ### @@ -1799,13 +2096,14 @@ END ### ### Enable/Disable connection ### + } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'toggle enable disable'}) {
&General::readhash("${General::swroot}/ovpn/settings", %vpnsettings); &General::readhasharray("${General::swroot}/ovpn/ovpnconfig", %confighash);
if ($confighash{$cgiparams{'KEY'}}) { - if ($confighash{$cgiparams{'KEY'}}[0] eq 'off') { + if ($confighash{$cgiparams{'KEY'}}[0] eq 'off') { $confighash{$cgiparams{'KEY'}}[0] = 'on'; &General::writehasharray("${General::swroot}/ovpn/ovpnconfig", %confighash); #&writeserverconf(); @@ -1862,6 +2160,356 @@ END } else { $errormessage = $Lang::tr{'invalid key'}; } +#test33 + +### +### Choose between adding a host-net or net-net connection +### + +### +# m.a.d net2net +### + +} elsif ($cgiparams{'ACTION'} eq $Lang::tr{'add'} && $cgiparams{'TYPE'} eq '') { + &General::readhash("${General::swroot}/ovpn/settings", %vpnsettings); + &Header::showhttpheaders(); + &Header::openpage($Lang::tr{'vpn configuration main'}, 1, ''); + &Header::openbigbox('100%', 'LEFT', '', ''); + &Header::openbox('100%', 'LEFT', $Lang::tr{'connection type'}); + +if ( -s "${General::swroot}/ovpn/settings") { + + print <<END + <b>$Lang::tr{'connection type'}:</b><br /> + <table><form method='post' ENCTYPE="multipart/form-data"> + <tr><td><input type='radio' name='TYPE' value='host' checked /></td> + <td class='base'>$Lang::tr{'host to net vpn'}</td></tr> + <tr><td><input type='radio' name='TYPE' value='net' /></td> + <td class='base'>$Lang::tr{'net to net vpn'}</td></tr> + <tr><td><input type='radio' name='TYPE' value='net2net' /></td> + <td class='base'>$Lang::tr{'net to net vpn'} (Upload Client Package)</td></tr> + <tr><td> </td><td class='base'><input type='file' name='FH' size='30'></td></tr> + <tr><td align='center'><input type='submit' name='ACTION' value='$Lang::tr{'add'}' /></td></tr> + </form></table> +END + ; + +} else { + print <<END + <b>$Lang::tr{'connection type'}:</b><br /> + <table><form method='post' ENCTYPE="multipart/form-data"> + <tr><td><input type='radio' name='TYPE' value='host' checked /></td> <td class='base'>$Lang::tr{'host to net vpn'}</td></tr> + <tr><td align='center'><input type='submit' name='ACTION' value='$Lang::tr{'add'}' /></td></tr> + </form></table> +END + ; + +} + + &Header::closebox(); + &Header::closebigbox(); + &Header::closepage(); + exit (0); + +### +# m.a.d net2net +### + +} elsif (($cgiparams{'ACTION'} eq $Lang::tr{'add'}) && ($cgiparams{'TYPE'} eq 'net2net')){ + + my @firen2nconf; + my @confdetails; + my $uplconffilename =''; + my $uplp12name = ''; + my @rem_subnet; + my @rem_subnet2; + my @tmposupnet3; + my $key; + + &General::readhasharray("${General::swroot}/ovpn/ovpnconfig", %confighash); + +# Check if a file is uploaded + + if (ref ($cgiparams{'FH'}) ne 'Fh') { + $errormessage = $Lang::tr{'there was no file upload'}; + goto N2N_ERROR; + } + +# Move uploaded IPfire n2n package to temporary file + + (my $fh, my $filename) = tempfile( ); + if (copy ($cgiparams{'FH'}, $fh) != 1) { + $errormessage = $!; + goto N2N_ERROR; + } + + my $zip = Archive::Zip->new(); + my $zipName = $filename; + my $status = $zip->read( $zipName ); + if ($status != AZ_OK) { + $errormessage = "Read of $zipName failed\n"; + goto N2N_ERROR; + } + + my $tempdir = tempdir( CLEANUP => 1 ); + my @files = $zip->memberNames(); + for(@files) { + $zip->extractMemberWithoutPaths($_,"$tempdir/$_"); + } + my $countfiles = @files; + +# Check if we have not more then 2 files + + if ( $countfiles == 2){ + foreach (@files){ + if ( $_ =~ /.conf$/){ + $uplconffilename = $_; + } + if ( $_ =~ /.p12$/){ + $uplp12name = $_; + } + } + if (($uplconffilename eq '') || ($uplp12name eq '')){ + $errormessage = "Either no *.conf or no *.p12 file found\n"; + goto N2N_ERROR; + } + + open(FILE, "$tempdir/$uplconffilename") or die 'Unable to open*.conf file'; + @firen2nconf = <FILE>; + close (FILE); + chomp(@firen2nconf); + + } else { + + $errormessage = "Filecount does not match only 2 files are allowed\n"; + goto N2N_ERROR; + } + +### +# m.a.d net2net +### + + my @n2nname = split(/./,$uplconffilename); + $n2nname[0] =~ s/\n|\r//g; + + unless(-d "${General::swroot}/ovpn/n2nconf/"){mkdir "${General::swroot}/ovpn/n2nconf", 0755 or die "Unable to create dir $!";} + unless(-d "${General::swroot}/ovpn/n2nconf/$n2nname[0]"){mkdir "${General::swroot}/ovpn/n2nconf/$n2nname[0]", 0770 or die "Unable to create dir $!";} + + move("$tempdir/$uplconffilename", "${General::swroot}/ovpn/n2nconf/$n2nname[0]/$uplconffilename"); + + if ($? ne 0) { + $errormessage = "*.conf move failed: $!"; + unlink ($filename); + goto N2N_ERROR; + } + + move("$tempdir/$uplp12name", "${General::swroot}/ovpn/certs/$uplp12name"); + chmod 0600, "${General::swroot}/ovpn/certs/$uplp12name"; + + if ($? ne 0) { + $errormessage = "$Lang::tr{'certificate file move failed'}: $!"; + unlink ($filename); + goto N2N_ERROR; + } + +my $complzoactive; +my $mssfixactive; +my $n2nfragment; +my @n2nproto = split(/ /, (grep { /^proto/ } @firen2nconf)[0]); +my @n2nport = split(/ /, (grep { /^port/ } @firen2nconf)[0]); +my @n2ntunmtu = split(/ /, (grep { /^tun-mtu/ } @firen2nconf)[0]); +my @n2ncomplzo = grep { /^comp-lzo/ } @firen2nconf; +if ($n2ncomplzo[0] =~ /comp-lzo/){$complzoactive = "on";} else {$complzoactive = "off";} +my @n2nmssfix = grep { /^mssfix/ } @firen2nconf; +if ($n2nmssfix[0] =~ /mssfix/){$mssfixactive = "on";} else {$mssfixactive = "off";} +my @n2nfragment = split(/ /, (grep { /^fragment/ } @firen2nconf)[0]); +my @n2nremote = split(/ /, (grep { /^remote/ } @firen2nconf)[0]); +my @n2novpnsuball = split(/ /, (grep { /^ifconfig/ } @firen2nconf)[0]); +my @n2novpnsub = split(/./,$n2novpnsuball[1]); +my @n2nremsub = split(/ /, (grep { /^route/ } @firen2nconf)[0]); +my @n2nlocalsub = split(/ /, (grep { /^# remsub/ } @firen2nconf)[0]); + +### +# m.a.d delete CR and LF from arrays for this chomp doesnt work +### + +$n2nremote[1] =~ s/\n|\r//g; +$n2novpnsub[0] =~ s/\n|\r//g; +$n2novpnsub[1] =~ s/\n|\r//g; +$n2novpnsub[2] =~ s/\n|\r//g; +$n2nproto[1] =~ s/\n|\r//g; +$n2nport[1] =~ s/\n|\r//g; +$n2ntunmtu[1] =~ s/\n|\r//g; +$n2nremsub[1] =~ s/\n|\r//g; +$n2nremsub[2] =~ s/\n|\r//g; +$n2nlocalsub[2] =~ s/\n|\r//g; +$n2nfragment[1] =~ s/\n|\r//g; +chomp ($complzoactive); +chomp ($mssfixactive); + +### +# m.a.d net2net +### + +### +# Check if there is no other entry with this name +### + + foreach my $dkey (keys %confighash) { + if ($confighash{$dkey}[1] eq $n2nname[0]) { + $errormessage = $Lang::tr{'a connection with this name already exists'}; + unlink ("${General::swroot}/ovpn/n2nconf/$n2nname[0]/$n2nname[0].conf") or die "Removing Configfile fail: $!"; + unlink ("${General::swroot}/ovpn/certs/$n2nname[0].p12") or die "Removing Certfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$n2nname[0]") || die "Removing Directory fail: $!"; + goto N2N_ERROR; + } + } + +### +# Check if OpenVPN Subnet is valid +### + +foreach my $dkey (keys %confighash) { + if ($confighash{$dkey}[27] eq "$n2novpnsub[0].$n2novpnsub[1].$n2novpnsub[2].0/255.255.255.0") { + $errormessage = 'The OpenVPN Subnet is already in use'; + unlink ("${General::swroot}/ovpn/n2nconf/$n2nname[0]/$n2nname[0].conf") or die "Removing Configfile fail: $!"; + unlink ("${General::swroot}/ovpn/certs/$n2nname[0].p12") or die "Removing Certfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$n2nname[0]") || die "Removing Directory fail: $!"; + goto N2N_ERROR; + } + } + +### +# Check im Dest Port is vaild +### + +foreach my $dkey (keys %confighash) { + if ($confighash{$dkey}[29] eq $n2nport[1] ) { + $errormessage = 'The OpenVPN Port is already in use'; + unlink ("${General::swroot}/ovpn/n2nconf/$n2nname[0]/$n2nname[0].conf") or die "Removing Configfile fail: $!"; + unlink ("${General::swroot}/ovpn/certs/$n2nname[0].p12") or die "Removing Certfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$n2nname[0]") || die "Removing Directory fail: $!"; + goto N2N_ERROR; + } + } + + + + $key = &General::findhasharraykey (%confighash); + + foreach my $i (0 .. 31) { $confighash{$key}[$i] = "";} + $confighash{$key}[0] = 'off'; + $confighash{$key}[1] = $n2nname[0]; + $confighash{$key}[2] = $n2nname[0]; + $confighash{$key}[3] = 'net'; + $confighash{$key}[4] = 'cert'; + $confighash{$key}[6] = 'client'; + $confighash{$key}[8] = $n2nlocalsub[2]; + $confighash{$key}[10] = $n2nremote[1]; + $confighash{$key}[11] = "$n2nremsub[1]/$n2nremsub[2]"; + $confighash{$key}[23] = $mssfixactive; + $confighash{$key}[24] = $n2nfragment[1]; + $confighash{$key}[25] = 'IPFire n2n Client'; + $confighash{$key}[26] = 'red'; + $confighash{$key}[27] = "$n2novpnsub[0].$n2novpnsub[1].$n2novpnsub[2].0/255.255.255.0"; + $confighash{$key}[28] = $n2nproto[1]; + $confighash{$key}[29] = $n2nport[1]; + $confighash{$key}[30] = $complzoactive; + $confighash{$key}[31] = $n2ntunmtu[1]; + + + &General::writehasharray("${General::swroot}/ovpn/ovpnconfig", %confighash); + + N2N_ERROR: + + &Header::showhttpheaders(); + &Header::openpage('Validate imported configuration', 1, ''); + &Header::openbigbox('100%', 'LEFT', '', $errormessage); + if ($errormessage) { + &Header::openbox('100%', 'LEFT', $Lang::tr{'error messages'}); + print "<class name='base'>$errormessage"; + print " </class>"; + &Header::closebox(); + + } else + { + &Header::openbox('100%', 'LEFT', 'import ipfire net2net config'); + } + if ($errormessage eq ''){ + print <<END + <!-- ipfire net2net config gui --> + <table width='100%'> + <tr><td width='25%'> </td><td width='25%'> </td></tr> + <tr><td class='boldbase'>$Lang::tr{'name'}:</td><td><b>$n2nname[0]</b></td></tr> + <tr><td> </td><td> </td></tr> + <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'Act as'}</td><td><b>$confighash{$key}[6]</b></td></tr> + <tr><td class='boldbase' nowrap='nowrap'>Remote Host </td><td><b>$confighash{$key}[10]</b></td></tr> + <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'local subnet'}</td><td><b>$confighash{$key}[8]</b></td></tr> + <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'remote subnet'}</td><td><b>$confighash{$key}[11]</b></td></tr> + <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'ovpn subnet'}</td><td><b>$confighash{$key}[27]</b></td></tr> + <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'protocol'}</td><td><b>$confighash{$key}[28]</b></td></tr> + <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'destination port'}:</td><td><b>$confighash{$key}[29]</b></td></tr> + <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'comp-lzo'}</td><td><b>$confighash{$key}[30]</b></td></tr> + <tr><td class='boldbase' nowrap='nowrap'>MSSFIX </td><td><b>$confighash{$key}[23]</b></td></tr> + <tr><td class='boldbase' nowrap='nowrap'>Fragment </td><td><b>$confighash{$key}[24]</b></td></tr> + <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'MTU'}</td><td><b>$confighash{$key}[31]</b></td></tr> + <tr><td> </td><td> </td></tr> + </table> +END +; + &Header::closebox(); + } + + if ($errormessage) { + print "<div align='center'><a href='/cgi-bin/ovpnmain.cgi'>$Lang::tr{'back'}</a></div>"; + } else { + print "<div align='center'><form method='post' ENCTYPE='multipart/form-data'><input type='submit' name='ACTION' value='$Lang::tr{'add'}' />"; + print "<input type='hidden' name='TYPE' value='net2netakn' />"; + print "<input type='hidden' name='KEY' value='$key' />"; + print "<input type='submit' name='ACTION' value='$Lang::tr{'cancel'}' /></div></form>"; + } + &Header::closebigbox(); + &Header::closepage(); + exit(0); + + +## +### Accept IPFire n2n Package Settings +### + + } elsif (($cgiparams{'ACTION'} eq $Lang::tr{'add'}) && ($cgiparams{'TYPE'} eq 'net2netakn')){ + +### +### Discard and Rollback IPFire n2n Package Settings +### + + } elsif (($cgiparams{'ACTION'} eq $Lang::tr{'cancel'}) && ($cgiparams{'TYPE'} eq 'net2netakn')){ + + &General::readhasharray("${General::swroot}/ovpn/ovpnconfig", %confighash); + +if ($confighash{$cgiparams{'KEY'}}) { + + my $conffile = glob("${General::swroot}/ovpn/n2nconf/$confighash{$cgiparams{'KEY'}}[1]/$confighash{$cgiparams{'KEY'}}[1].conf"); + my $certfile = glob("${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1].p12"); + unlink ($certfile) or die "Removing $certfile fail: $!"; + unlink ($conffile) or die "Removing $conffile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$confighash{$cgiparams{'KEY'}}[1]") || die "Kann Verzeichnis nicht loeschen: $!"; + delete $confighash{$cgiparams{'KEY'}}; + &General::writehasharray("${General::swroot}/ovpn/ovpnconfig", %confighash); + + } else { + $errormessage = $Lang::tr{'invalid key'}; + } + + +### +# m.a.d net2net +### + + +### +### Adding a new connection +### } elsif (($cgiparams{'ACTION'} eq $Lang::tr{'add'}) || ($cgiparams{'ACTION'} eq $Lang::tr{'edit'}) || ($cgiparams{'ACTION'} eq $Lang::tr{'save'} && $cgiparams{'ADVANCED'} eq '')) { @@ -1875,16 +2523,18 @@ END $errormessage = $Lang::tr{'invalid key'}; goto VPNCONF_END; } - $cgiparams{'ENABLED'} = $confighash{$cgiparams{'KEY'}}[0]; $cgiparams{'NAME'} = $confighash{$cgiparams{'KEY'}}[1]; - $cgiparams{'TYPE'} = 'host'; + $cgiparams{'TYPE'} = $confighash{$cgiparams{'KEY'}}[3]; $cgiparams{'AUTH'} = $confighash{$cgiparams{'KEY'}}[4]; $cgiparams{'PSK'} = $confighash{$cgiparams{'KEY'}}[5]; $cgiparams{'SIDE'} = $confighash{$cgiparams{'KEY'}}[6]; $cgiparams{'LOCAL_SUBNET'} = $confighash{$cgiparams{'KEY'}}[8]; - $cgiparams{'REMOTE'} = $confighash{$cgiparams{'KEY'}}[10]; - $cgiparams{'REMOTE_SUBNET'} = $confighash{$cgiparams{'KEY'}}[11]; + $cgiparams{'REMOTE'} = $confighash{$cgiparams{'KEY'}}[10]; + $cgiparams{'REMOTE_SUBNET'} = $confighash{$cgiparams{'KEY'}}[11]; +# n2n m.a.d new fields + $cgiparams{'MSSFIX'} = $confighash{$cgiparams{'KEY'}}[23]; + $cgiparams{'FRAGMENT'} = $confighash{$cgiparams{'KEY'}}[24]; $cgiparams{'REMARK'} = $confighash{$cgiparams{'KEY'}}[25]; $cgiparams{'INTERFACE'} = $confighash{$cgiparams{'KEY'}}[26]; #new fields @@ -1893,49 +2543,150 @@ END $cgiparams{'DEST_PORT'} = $confighash{$cgiparams{'KEY'}}[29]; $cgiparams{'COMPLZO'} = $confighash{$cgiparams{'KEY'}}[30]; $cgiparams{'MTU'} = $confighash{$cgiparams{'KEY'}}[31]; + #new fields #ab hiere error uebernehmen + } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'save'}) { $cgiparams{'REMARK'} = &Header::cleanhtml($cgiparams{'REMARK'}); - if ($cgiparams{'TYPE'} !~ /^(host|net)$/) { + + if ($cgiparams{'TYPE'} !~ /^(host|net)$/) { $errormessage = $Lang::tr{'connection type is invalid'}; + if ($cgiparams{'TYPE'} eq 'net') { + unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!"; + } goto VPNCONF_ERROR; }
if ($cgiparams{'NAME'} !~ /^[a-zA-Z0-9]+$/) { $errormessage = $Lang::tr{'name must only contain characters'}; - goto VPNCONF_ERROR; - } + if ($cgiparams{'TYPE'} eq 'net') { + unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!"; + } + goto VPNCONF_ERROR; + }
if ($cgiparams{'NAME'} =~ /^(host|01|block|private|clear|packetdefault)$/) { $errormessage = $Lang::tr{'name is invalid'}; + if ($cgiparams{'TYPE'} eq 'net') { + unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!"; + } goto VPNCONF_ERROR; }
if (length($cgiparams{'NAME'}) >60) { $errormessage = $Lang::tr{'name too long'}; + if ($cgiparams{'TYPE'} eq 'net') { + unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!"; + } goto VPNCONF_ERROR; }
+### +# m.a.d net2net +### + +if ($cgiparams{'TYPE'} eq 'net') { + + if ($cgiparams{'DEST_PORT'} eq $vpnsettings{'DDEST_PORT'}) { + $errormessage = 'The Destination Port is used by the OpenVPN Server please change'; + unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!"; + goto VPNCONF_ERROR; + } + + if ($cgiparams{'OVPN_SUBNET'} eq $vpnsettings{'DOVPN_SUBNET'}) { + $errormessage = 'The OpenVPN Subnet is used by the OpenVPN Server please change'; + unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!"; + goto VPNCONF_ERROR; + } + + if (($cgiparams{'PROTOCOL'} eq 'tcp') && ($cgiparams{'MSSFIX'} eq 'on')) { + $errormessage = 'mssfix only allowed with udp'; + unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!"; + goto VPNCONF_ERROR; + } + + if (($cgiparams{'PROTOCOL'} eq 'tcp') && ($cgiparams{'FRAGMENT'} ne '')) { + $errormessage = 'fragment only allowed with udp'; + unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!"; + goto VPNCONF_ERROR; + } + + if ( &validdotmask ($cgiparams{'LOCAL_SUBNET'})) { + $errormessage = 'Prefix not allowed for Local Subnet. Please enter Subnet Mask e.g. 255.255.255.0'; + unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!"; + goto VPNCONF_ERROR; + } + + if ( &validdotmask ($cgiparams{'OVPN_SUBNET'})) { + $errormessage = 'Prefix not allowed for OpenVPN Subnet. Please enter Subnet Mask e.g. 255.255.255.0'; + unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!"; + goto VPNCONF_ERROR; + } + + if ( &validdotmask ($cgiparams{'REMOTE_SUBNET'})) { + $errormessage = 'Prefix not allowed for Remote Subnet. Please enter Subnet Mask e.g. 255.255.255.0'; + unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!"; + goto VPNCONF_ERROR; + } +} + +# if (($cgiparams{'TYPE'} eq 'net') && ($cgiparams{'SIDE'} !~ /^(left|right)$/)) { +# $errormessage = $Lang::tr{'ipfire side is invalid'}; +# goto VPNCONF_ERROR; +# } + # Check if there is no other entry with this name if (! $cgiparams{'KEY'}) { foreach my $key (keys %confighash) { if ($confighash{$key}[1] eq $cgiparams{'NAME'}) { $errormessage = $Lang::tr{'a connection with this name already exists'}; + if ($cgiparams{'TYPE'} eq 'net') { + unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!"; + } goto VPNCONF_ERROR; } } }
+ if (($cgiparams{'TYPE'} eq 'net') && (! $cgiparams{'REMOTE'})) { + $errormessage = $Lang::tr{'invalid input for remote host/ip'}; + if ($cgiparams{'TYPE'} eq 'net') { + unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!"; + } + goto VPNCONF_ERROR; + } + if ($cgiparams{'REMOTE'}) { if (! &General::validip($cgiparams{'REMOTE'})) { if (! &General::validfqdn ($cgiparams{'REMOTE'})) { $errormessage = $Lang::tr{'invalid input for remote host/ip'}; + if ($cgiparams{'TYPE'} eq 'net') { + unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!"; + } goto VPNCONF_ERROR; } else { if (&valid_dns_host($cgiparams{'REMOTE'})) { $warnmessage = "$Lang::tr{'check vpn lr'} $cgiparams{'REMOTE'}. $Lang::tr{'dns check failed'}"; + if ($cgiparams{'TYPE'} eq 'net') { + unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!"; + } } } } @@ -1943,6 +2694,10 @@ END if ($cgiparams{'TYPE'} ne 'host') { unless (&General::validipandmask($cgiparams{'LOCAL_SUBNET'})) { $errormessage = $Lang::tr{'local subnet is invalid'}; + if ($cgiparams{'TYPE'} eq 'net') { + unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!"; + } goto VPNCONF_ERROR;} } # Check if there is no other entry without IP-address and PSK @@ -1956,6 +2711,12 @@ END } } } + if (($cgiparams{'TYPE'} eq 'net') && (! &General::validipandmask($cgiparams{'REMOTE_SUBNET'}))) { + $errormessage = $Lang::tr{'remote subnet is invalid'}; + unlink ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}/$cgiparams{'NAME'}.conf") or die "Removing Configfile fail: $!"; + rmdir ("${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}") || die "Removing Directory fail: $!"; + goto VPNCONF_ERROR; + }
if ($cgiparams{'ENABLED'} !~ /^(on|off)$/) { $errormessage = $Lang::tr{'invalid input'}; @@ -2079,9 +2840,6 @@ END goto VPNCONF_ERROR; } } elsif ($cgiparams{'AUTH'} eq 'certgen') { - - $cgiparams{'CERT_NAME'} =~ s/ //g; - if ($cgiparams{'KEY'}) { $errormessage = $Lang::tr{'cant change certificates'}; goto VPNCONF_ERROR; @@ -2240,15 +2998,25 @@ END if ((! $cgiparams{'KEY'}) && $cgiparams{'AUTH'} ne 'psk') { $confighash{$key}[2] = $cgiparams{'CERT_NAME'}; } - $confighash{$key}[3] = 'host'; + $confighash{$key}[3] = $cgiparams{'TYPE'}; if ($cgiparams{'AUTH'} eq 'psk') { $confighash{$key}[4] = 'psk'; $confighash{$key}[5] = $cgiparams{'PSK'}; } else { $confighash{$key}[4] = 'cert'; } + if ($cgiparams{'TYPE'} eq 'net') { + $confighash{$key}[6] = $cgiparams{'SIDE'}; + $confighash{$key}[11] = $cgiparams{'REMOTE_SUBNET'}; + } $confighash{$key}[8] = $cgiparams{'LOCAL_SUBNET'}; $confighash{$key}[10] = $cgiparams{'REMOTE'}; + $confighash{$key}[23] = $cgiparams{'MSSFIX'}; + if ($cgiparams{'FRAGMENT'} eq '') { + $confighash{$key}[24] = '1300'; + } else { + $confighash{$key}[24] = $cgiparams{'FRAGMENT'}; + } $confighash{$key}[25] = $cgiparams{'REMARK'}; $confighash{$key}[26] = $cgiparams{'INTERFACE'}; # new fields @@ -2259,6 +3027,33 @@ END $confighash{$key}[31] = $cgiparams{'MTU'}; # new fileds &General::writehasharray("${General::swroot}/ovpn/ovpnconfig", %confighash); + +### +# m.a.d n2n begin +### + + if ($cgiparams{'TYPE'} eq 'net') { + + if (-e "/var/run/$confighash{$key}[1]n2n.pid") { + system('/usr/local/bin/openvpnctrl', '-kn2n', $confighash{$cgiparams{'KEY'}}[1]); + + &General::readhasharray("${General::swroot}/ovpn/ovpnconfig", %confighash); + my $key = $cgiparams{'KEY'}; + if (! $key) { + $key = &General::findhasharraykey (%confighash); + foreach my $i (0 .. 31) { $confighash{$key}[$i] = "";} + } + $confighash{$key}[0] = 'on'; + &General::writehasharray("${General::swroot}/ovpn/ovpnconfig", %confighash); + + system('/usr/local/bin/openvpnctrl', '-sn2n', $confighash{$cgiparams{'KEY'}}[1]); + } + } + +### +# m.a.d n2n end +### + if ($cgiparams{'EDIT_ADVANCED'} eq 'on') { $cgiparams{'KEY'} = $key; $cgiparams{'ACTION'} = $Lang::tr{'advanced'}; @@ -2300,6 +3095,11 @@ END $selected{'SIDE'}{'server'} = ''; $selected{'SIDE'}{'client'} = ''; $selected{'SIDE'}{$cgiparams{'SIDE'}} = 'SELECTED'; + + $selected{'PROTOCOL'}{'udp'} = ''; + $selected{'PROTOCOL'}{'tcp'} = ''; + $selected{'PROTOCOL'}{$cgiparams{'PROTOCOL'}} = 'SELECTED'; +
$checked{'AUTH'}{'psk'} = ''; $checked{'AUTH'}{'certreq'} = ''; @@ -2313,6 +3113,10 @@ END $checked{'COMPLZO'}{'on'} = ''; $checked{'COMPLZO'}{$cgiparams{'COMPLZO'}} = 'CHECKED';
+ $checked{'MSSFIX'}{'off'} = ''; + $checked{'MSSFIX'}{'on'} = ''; + $checked{'MSSFIX'}{$cgiparams{'MSSFIX'}} = 'CHECKED'; +
if (1) { &Header::showhttpheaders(); @@ -2333,7 +3137,7 @@ END }
print "<form method='post' enctype='multipart/form-data'>"; - print "<input type='hidden' name='TYPE' value='host' />"; + print "<input type='hidden' name='TYPE' value='$cgiparams{'TYPE'}' />";
if ($cgiparams{'KEY'}) { print "<input type='hidden' name='KEY' value='$cgiparams{'KEY'}' />"; @@ -2343,6 +3147,7 @@ END &Header::openbox('100%', 'LEFT', "$Lang::tr{'connection'}:"); print "<table width='100%'>\n"; print "<tr><td width='25%' class='boldbase'>$Lang::tr{'name'}:</td>"; + if ($cgiparams{'TYPE'} eq 'host') { if ($cgiparams{'KEY'}) { print "<td width='35%' class='base'><input type='hidden' name='NAME' value='$cgiparams{'NAME'}' />$cgiparams{'NAME'}</td>\n"; } else { @@ -2358,12 +3163,59 @@ END # print "<option value='ORANGE' $selected{'INTERFACE'}{'ORANGE'}>ORANGE</option>"; # print "</select></td></tr>"; # print <<END + } else { + print "<input type='hidden' name='INTERFACE' value='red' />"; + if ($cgiparams{'KEY'}) { + print "<td width='25%' class='base' nowrap='nowrap'><input type='hidden' name='NAME' value='$cgiparams{'NAME'}' />$cgiparams{'NAME'}</td>"; + } else { + print "<td width='25%'><input type='text' name='NAME' value='$cgiparams{'NAME'}' maxlength='20' /></td>"; + } + print <<END + <td width='25%'> </td> + <td width='25%'> </td></tr> + <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'Act as'}</td> + <td><select name='SIDE'><option value='server' $selected{'SIDE'}{'server'}>OpenVPN Server</option> + <option value='client' $selected{'SIDE'}{'client'}>OpenVPN Client</option></select></td> + <td class='boldbase'>$Lang::tr{'remote host/ip'}:</td> + <td><input type='TEXT' name='REMOTE' value='$cgiparams{'REMOTE'}' /></td></tr> + <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'local subnet'}</td> + <td><input type='TEXT' name='LOCAL_SUBNET' value='$cgiparams{'LOCAL_SUBNET'}' /></td> + <td class='boldbase' nowrap='nowrap'>$Lang::tr{'remote subnet'}</td> + <td><input type='text' name='REMOTE_SUBNET' value='$cgiparams{'REMOTE_SUBNET'}' /></td></tr> + <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'ovpn subnet'}</td> + <td><input type='TEXT' name='OVPN_SUBNET' value='$cgiparams{'OVPN_SUBNET'}' /></td></tr> + <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'protocol'}</td> + + <td><select name='PROTOCOL'><option value='udp' $selected{'PROTOCOL'}{'udp'}>UDP</option> + <option value='tcp' $selected{'PROTOCOL'}{'tcp'}>TCP</option></select></td> + + <td class='boldbase'>$Lang::tr{'destination port'}:</td> + <td><input type='TEXT' name='DEST_PORT' value='$cgiparams{'DEST_PORT'}' size='5' /></td></tr> + <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'comp-lzo'} <img src='/blob.gif'</td> + <td><input type='checkbox' name='COMPLZO' $checked{'COMPLZO'}{'on'} /></td> + + <tr><td class='boldbase' nowrap='nowrap'>mssfix <img src='/blob.gif' /></td> + <td><input type='checkbox' name='MSSFIX' $checked{'MSSFIX'}{'on'} /></td> + + <tr><td class='boldbase' nowrap='nowrap'>Fragment <img src='/blob.gif' /></td> + <td><input type='TEXT' name='FRAGMENT' VALUE='$cgiparams{'FRAGMENT'}'size='5' /></td> + <td>Default: <span class="base">1300</span></td> + + <tr><td class='boldbase' nowrap='nowrap'>$Lang::tr{'MTU'} <img src='/blob.gif' /></td> + <td> <input type='TEXT' name='MTU' VALUE='$cgiparams{'MTU'}'size='5' /></TD> + +END + ; + } + print "<tr><td class='boldbase'>$Lang::tr{'remark title'} <img src='/blob.gif' /></td>"; print "<td colspan='3'><input type='text' name='REMARK' value='$cgiparams{'REMARK'}' size='55' maxlength='50' /></td></tr>"; -# if ($cgiparams{'TYPE'} eq 'net') { - print "<tr><td>$Lang::tr{'enabled'} <input type='checkbox' name='ENABLED' $checked{'ENABLED'}{'on'} /></td>\n"; - + if ($cgiparams{'TYPE'} eq 'host') { + + print "<tr><td>$Lang::tr{'enabled'} <input type='checkbox' name='ENABLED' $checked{'ENABLED'}{'on'} /></td>\n"; + } + # if ($cgiparams{'KEY'}) { # print "<td colspan='3'> </td></tr></table>"; # } else { @@ -2394,41 +3246,54 @@ END if ( ! -f "${General::swroot}/ovpn/ca/cakey.pem" ) { $cakeydisabled = "disabled='disabled'" } else { $cakeydisabled = "" }; if ( ! -f "${General::swroot}/ovpn/ca/cacert.pem" ) { $cacrtdisabled = "disabled='disabled'" } else { $cacrtdisabled = "" }; &Header::openbox('100%', 'LEFT', $Lang::tr{'authentication'}); - print <<END + + + if ($cgiparams{'TYPE'} eq 'host') { + +print <<END <table width='100%' cellpadding='0' cellspacing='5' border='0'> <tr><td colspan='3' bgcolor='#000000'><img src='/images/null.gif' width='1' height='1' border='0' /></td></tr> - <tr><td><input type='radio' name='AUTH' value='certreq' $checked{'AUTH'}{'certreq'} $cakeydisabled /></td> - <td class='base'>$Lang::tr{'upload a certificate request'}</td> - <td class='base' rowspan='2'><input type='file' name='FH' size='30' $cacrtdisabled></td></tr> - <tr><td><input type='radio' name='AUTH' value='certfile' $checked{'AUTH'}{'certfile'} $cacrtdisabled /></td> - <td class='base'>$Lang::tr{'upload a certificate'}</td></tr> + <tr><td><input type='radio' name='AUTH' value='certreq' $checked{'AUTH'}{'certreq'} $cakeydisabled /></td><td class='base'>$Lang::tr{'upload a certificate request'}</td><td class='base' rowspan='2'><input type='file' name='FH' size='30' $cacrtdisabled></td></tr> + <tr><td><input type='radio' name='AUTH' value='certfile' $checked{'AUTH'}{'certfile'} $cacrtdisabled /></td><td class='base'>$Lang::tr{'upload a certificate'}</td></tr> <tr><td colspan='3' bgcolor='#000000'><img src='/images/null.gif' width='1' height='1' BORDER='0' /></td></tr> - <tr><td><input type='radio' name='AUTH' value='certgen' $checked{'AUTH'}{'certgen'} $cakeydisabled /></td> - <td class='base'>$Lang::tr{'generate a certificate'}</td><td> </td></tr> - <tr><td> </td> - <td class='base'>$Lang::tr{'users fullname or system hostname'}:</td> - <td class='base' nowrap='nowrap'><input type='text' name='CERT_NAME' value='$cgiparams{'CERT_NAME'}' SIZE='32' $cakeydisabled /></td></tr> - <tr><td> </td> - <td class='base'>$Lang::tr{'users email'}: <img src='/blob.gif' /></td> - <td class='base' nowrap='nowrap'><input type='text' name='CERT_EMAIL' value='$cgiparams{'CERT_EMAIL'}' SIZE='32' $cakeydisabled /></td></tr> - <tr><td> </td> - <td class='base'>$Lang::tr{'users department'}: <img src='/blob.gif' /></td> - <td class='base' nowrap='nowrap'><input type='text' name='CERT_OU' value='$cgiparams{'CERT_OU'}' SIZE='32' $cakeydisabled /></td></tr> - <tr><td> </td> - <td class='base'>$Lang::tr{'organization name'}: <img src='/blob.gif' /></td> - <td class='base' nowrap='nowrap'><input type='text' name='CERT_ORGANIZATION' value='$cgiparams{'CERT_ORGANIZATION'}' SIZE='32' $cakeydisabled /></td></tr> - <tr><td> </td> - <td class='base'>$Lang::tr{'city'}: <img src='/blob.gif'></td> - <td class='base' nowrap='nowrap'><input type='text' name='CERT_CITY' value='$cgiparams{'CERT_CITY'}' SIZE='32' $cakeydisabled /></td></tr> - <tr><td> </td> - <td class='base'>$Lang::tr{'state or province'}: <img src='/blob.gif' /></td> - <td class='base' nowrap='nowrap'><input type='text' name='CERT_STATE' value='$cgiparams{'CERT_STATE'}' SIZE='32' $cakeydisabled /></td></tr> - <tr><td> </td> - <td class='base'>$Lang::tr{'country'}:</td> - <td class='base'><select name='CERT_COUNTRY' $cakeydisabled> + <tr><td><input type='radio' name='AUTH' value='certgen' $checked{'AUTH'}{'certgen'} $cakeydisabled /></td><td class='base'>$Lang::tr{'generate a certificate'}</td><td> </td></tr> + <tr><td> </td><td class='base'>$Lang::tr{'users fullname or system hostname'}:</td><td class='base' nowrap='nowrap'><input type='text' name='CERT_NAME' value='$cgiparams{'CERT_NAME'}' SIZE='32' $cakeydisabled /></td></tr> + <tr><td> </td><td class='base'>$Lang::tr{'users email'}: <img src='/blob.gif' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_EMAIL' value='$cgiparams{'CERT_EMAIL'}' SIZE='32' $cakeydisabled /></td></tr> + <tr><td> </td><td class='base'>$Lang::tr{'users department'}: <img src='/blob.gif' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_OU' value='$cgiparams{'CERT_OU'}' SIZE='32' $cakeydisabled /></td></tr> + <tr><td> </td><td class='base'>$Lang::tr{'organization name'}: <img src='/blob.gif' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_ORGANIZATION' value='$cgiparams{'CERT_ORGANIZATION'}' SIZE='32' $cakeydisabled /></td></tr> + <tr><td> </td><td class='base'>$Lang::tr{'city'}: <img src='/blob.gif'></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_CITY' value='$cgiparams{'CERT_CITY'}' SIZE='32' $cakeydisabled /></td></tr> + <tr><td> </td><td class='base'>$Lang::tr{'state or province'}: <img src='/blob.gif' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_STATE' value='$cgiparams{'CERT_STATE'}' SIZE='32' $cakeydisabled /></td></tr> + <tr><td> </td><td class='base'>$Lang::tr{'country'}:</td><td class='base'><select name='CERT_COUNTRY' $cakeydisabled> END +; + +### +# m.a.d net2net +### + +} else { + +print <<END + <table width='100%' cellpadding='0' cellspacing='5' border='0'> + + <tr><td><input type='radio' name='AUTH' value='certgen' $checked{'AUTH'}{'certgen'} $cakeydisabled /></td><td class='base'>$Lang::tr{'generate a certificate'}</td><td> </td></tr> + <tr><td> </td><td class='base'>$Lang::tr{'users fullname or system hostname'}:</td><td class='base' nowrap='nowrap'><input type='text' name='CERT_NAME' value='$cgiparams{'CERT_NAME'}' SIZE='32' $cakeydisabled /></td></tr> + <tr><td> </td><td class='base'>$Lang::tr{'users email'}: <img src='/blob.gif' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_EMAIL' value='$cgiparams{'CERT_EMAIL'}' SIZE='32' $cakeydisabled /></td></tr> + <tr><td> </td><td class='base'>$Lang::tr{'users department'}: <img src='/blob.gif' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_OU' value='$cgiparams{'CERT_OU'}' SIZE='32' $cakeydisabled /></td></tr> + <tr><td> </td><td class='base'>$Lang::tr{'organization name'}: <img src='/blob.gif' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_ORGANIZATION' value='$cgiparams{'CERT_ORGANIZATION'}' SIZE='32' $cakeydisabled /></td></tr> + <tr><td> </td><td class='base'>$Lang::tr{'city'}: <img src='/blob.gif'></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_CITY' value='$cgiparams{'CERT_CITY'}' SIZE='32' $cakeydisabled /></td></tr> + <tr><td> </td><td class='base'>$Lang::tr{'state or province'}: <img src='/blob.gif' /></td><td class='base' nowrap='nowrap'><input type='text' name='CERT_STATE' value='$cgiparams{'CERT_STATE'}' SIZE='32' $cakeydisabled /></td></tr> + <tr><td> </td><td class='base'>$Lang::tr{'country'}:</td><td class='base'><select name='CERT_COUNTRY' $cakeydisabled> + +END +; + +} + +### +# m.a.d net2net +###
- ; foreach my $country (sort keys %{Countries::countries}) { print "<option value='$Countries::countries{$country}'"; if ( $Countries::countries{$country} eq $cgiparams{'CERT_COUNTRY'} ) { @@ -2436,20 +3301,36 @@ END } print ">$country</option>"; } +### +# m.a.d net2net +### + +if ($cgiparams{'TYPE'} eq 'host') { print <<END </select></td></tr> - <tr><td> </td> - - <td class='base'>$Lang::tr{'valid till'} (days):</td> - <td class='base' nowrap='nowrap'><input type='text' name='DAYS_VALID' value='$cgiparams{'DAYS_VALID'}' size='32' $cakeydisabled /></td></tr> - - <tr><td> </td> + + <td class='base'>$Lang::tr{'valid till'} (days):</td> + <td class='base' nowrap='nowrap'><input type='text' name='DAYS_VALID' value='$cgiparams{'DAYS_VALID'}' size='32' $cakeydisabled /></td></tr> + <tr><td> </td> <td class='base'>$Lang::tr{'pkcs12 file password'}:</td> <td class='base' nowrap='nowrap'><input type='password' name='CERT_PASS1' value='$cgiparams{'CERT_PASS1'}' size='32' $cakeydisabled /></td></tr> <tr><td> </td><td class='base'>$Lang::tr{'pkcs12 file password'}:<BR>($Lang::tr{'confirmation'})</td> <td class='base' nowrap='nowrap'><input type='password' name='CERT_PASS2' value='$cgiparams{'CERT_PASS2'}' size='32' $cakeydisabled /></td></tr> - </table> + </table> +END +}else{ + print <<END + </select></td></tr> + <tr><td> </td><td> </td><td> </td></tr> + <tr><td> </td><td> </td><td> </td></tr> + </table> + END +} + +### +# m.a.d net2net +### ; &Header::closebox(); } @@ -2517,9 +3398,6 @@ END $checked{'ENABLED_ORANGE'}{'off'} = ''; $checked{'ENABLED_ORANGE'}{'on'} = ''; $checked{'ENABLED_ORANGE'}{$cgiparams{'ENABLED_ORANGE'}} = 'CHECKED'; - - -#new settings $selected{'DDEVICE'}{'tun'} = ''; $selected{'DDEVICE'}{'tap'} = ''; $selected{'DDEVICE'}{$cgiparams{'DDEVICE'}} = 'SELECTED'; @@ -2544,7 +3422,10 @@ END $checked{'DCOMPLZO'}{'off'} = ''; $checked{'DCOMPLZO'}{'on'} = ''; $checked{'DCOMPLZO'}{$cgiparams{'DCOMPLZO'}} = 'CHECKED'; - +# m.a.d + $checked{'MSSFIX'}{'off'} = ''; + $checked{'MSSFIX'}{'on'} = ''; + $checked{'MSSFIX'}{$cgiparams{'MSSFIX'}} = 'CHECKED'; #new settings &Header::showhttpheaders(); &Header::openpage($Lang::tr{'status ovpn'}, 1, ''); @@ -2791,8 +3672,15 @@ END print "<div align='center'><form method='post'><input type='submit' name='ACTION' value='$Lang::tr{'reset'}' /></div></form>\n"; } if ( -f "${General::swroot}/ovpn/ca/cacert.pem" ) { + +### +# m.a.d net2net +### + &Header::openbox('100%', 'LEFT', $Lang::tr{'Client status and controlc' }); print <<END + + <table width='100%' border='0' cellspacing='1' cellpadding='0'> <tr> <td width='10%' class='boldbase' align='center'><b>$Lang::tr{'name'}</b></td> @@ -2827,13 +3715,40 @@ END $cavalid = $1; print "<td align='center'>$cavalid</td>"; print "<td align='center'>$confighash{$key}[25]</td>"; + my $active = "<table cellpadding='2' cellspacing='0' bgcolor='${Header::colourred}' width='100%'><tr><td align='center'><b><font color='#FFFFFF'>$Lang::tr{'capsclosed'}</font></b></td></tr></table>"; + if ($confighash{$key}[0] eq 'off') { $active = "<table cellpadding='2' cellspacing='0' bgcolor='${Header::colourblue}' width='100%'><tr><td align='center'><b><font color='#FFFFFF'>$Lang::tr{'capsclosed'}</font></b></td></tr></table>"; } else { - my $cn; + +### +# m.a.d net2net +### + + if ($confighash{$key}[3] eq 'net') { +# my @tempovpnsubnet = split("/",$confighash{$key}[27]); +# my @ovpnip = split /./,$tempovpnsubnet[0]; +# my $pingip = ""; +# if ($confighash{$key}[6] eq 'server') { +# $pingip = "$ovpnip[0].$ovpnip[1].$ovpnip[2].2"; +# } else { +# $pingip = "$ovpnip[0].$ovpnip[1].$ovpnip[2].1"; +# } +# my $p = Net::Ping->new("udp",1); +# if ($p->ping($pingip)) { +# $active = "<table cellpadding='2' cellspacing='0' bgcolor='${Header::colourgreen}' width='100%'><tr><td align='center'><b><font color='#FFFFFF'>$Lang::tr{'capsopen'}</font></b></td></tr></table>"; +# } +# $p->close(); + + if (-e "/var/run/$confighash{$key}[1]n2n.pid") { + $active = "<table cellpadding='2' cellspacing='0' bgcolor='${Header::colourgreen}' width='100%'><tr><td align='center'><b><font color='#FFFFFF'>$Lang::tr{'capsopen'}</font></b></td></tr></table>"; + } + } + + my $cn; my @match = (); - foreach my $line (@status) { + foreach my $line (@status) { chomp($line); if ( $line =~ /^(.+),(\d+.\d+.\d+.\d+:\d+),(\d+),(\d+),(.+)/) { @match = split(m/^(.+),(\d+.\d+.\d+.\d+:\d+),(\d+),(\d+),(.+)/, $line); @@ -2844,9 +3759,13 @@ END if ($cn eq "$confighash{$key}[2]") { $active = "<table cellpadding='2' cellspacing='0' bgcolor='${Header::colourgreen}' width='100%'><tr><td align='center'><b><font color='#FFFFFF'>$Lang::tr{'capsopen'}</font></b></td></tr></table>"; } - } - } + + } +} +} + + my $disable_clientdl = "disabled='disabled'"; if (( $cgiparams{'ENABLED'} eq 'on') || ( $cgiparams{'ENABLED_BLUE'} eq 'on') || @@ -2958,3 +3877,6 @@ END &Header::closebox(); } &Header::closepage(); + + + diff --git a/html/cgi-bin/pakfire.cgi b/html/cgi-bin/pakfire.cgi index 124f912..5903d85 100644 --- a/html/cgi-bin/pakfire.cgi +++ b/html/cgi-bin/pakfire.cgi @@ -43,7 +43,6 @@ $pakfiresettings{'VALID'} = ''; $pakfiresettings{'INSPAKS'} = ''; $pakfiresettings{'DELPAKS'} = ''; $pakfiresettings{'AUTOUPDATE'} = 'off'; -$pakfiresettings{'AUTOUPGRADE'} = 'off'; $pakfiresettings{'HEALTHCHECK'} = 'on'; $pakfiresettings{'UUID'} = 'on';
@@ -153,12 +152,6 @@ END system("/usr/local/bin/pakfire disable updates >/dev/null 2>&1"); }
- if ($pakfiresettings{'AUTOUPGRADE'} eq 'on') { - system("/usr/local/bin/pakfire enable upgrades >/dev/null 2>&1"); - } else { - system("/usr/local/bin/pakfire disable upgrades >/dev/null 2>&1"); - } - &General::writehash("${General::swroot}/pakfire/settings", %pakfiresettings); }
@@ -170,9 +163,6 @@ my %checked=(); $checked{'AUTOUPDATE'}{'off'} = ''; $checked{'AUTOUPDATE'}{'on'} = ''; $checked{'AUTOUPDATE'}{$pakfiresettings{'AUTOUPDATE'}} = "checked='checked'"; -$checked{'AUTOUPGRADE'}{'off'} = ''; -$checked{'AUTOUPGRADE'}{'on'} = ''; -$checked{'AUTOUPGRADE'}{$pakfiresettings{'AUTOUPGRADE'}} = "checked='checked'"; $checked{'HEALTHCHECK'}{'off'} = ''; $checked{'HEALTHCHECK'}{'on'} = ''; $checked{'HEALTHCHECK'}{$pakfiresettings{'HEALTHCHECK'}} = "checked='checked'"; @@ -302,9 +292,6 @@ print <<END; <tr><td align='left' width='45%'>$Lang::tr{'pakfire update daily'}</td><td width="55%" align="left"> on <input type='radio' name='AUTOUPDATE' value='on' $checked{'AUTOUPDATE'}{'on'} /> | <input type='radio' name='AUTOUPDATE' value='off' $checked{'AUTOUPDATE'}{'off'} /> off </td></tr> - <tr><td align='left' width='45%'>$Lang::tr{'pakfire core update auto'}</td><td align="left"> - on <input type='radio' name='AUTOUPGRADE' value='on' $checked{'AUTOUPGRADE'}{'on'} /> | - <input type='radio' name='AUTOUPGRADE' value='off' $checked{'AUTOUPGRADE'}{'off'} /> off </td></tr> <tr><td align='left' width='45%'>$Lang::tr{'pakfire health check'}</td><td align="left"> on <input type='radio' name='HEALTHCHECK' value='on' $checked{'HEALTHCHECK'}{'on'} /> | <input type='radio' name='HEALTHCHECK' value='off' $checked{'HEALTHCHECK'}{'off'} /> off </td></tr> diff --git a/html/cgi-bin/routing.cgi b/html/cgi-bin/routing.cgi new file mode 100644 index 0000000..86e0429 --- /dev/null +++ b/html/cgi-bin/routing.cgi @@ -0,0 +1,446 @@ +#!/usr/bin/perl +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007-2011 IPFire Team info@ipfire.org # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see http://www.gnu.org/licenses/. # +# # +############################################################################### + +use strict; + +# enable only the following on debugging purpose +#use warnings; +#use CGI::Carp 'fatalsToBrowser'; + +require '/var/ipfire/general-functions.pl'; +require "${General::swroot}/lang.pl"; +require "${General::swroot}/header.pl"; + +#workaround to suppress a warning when a variable is used only once +my @dummy = ( ${Header::colouryellow} ); +undef (@dummy); + +# Files used +my $setting = "${General::swroot}/main/settings"; +our $datafile = "${General::swroot}/main/routing"; #(our: used in subroutine) + +my %color = (); +my %mainsettings = (); +&General::readhash("${General::swroot}/main/settings", %mainsettings); +&General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", %color); + +our %settings = (); + +$settings{'EN'} = ''; # reuse for dummy field in position zero +$settings{'IP'} = ''; +$settings{'GATEWAY'} = ''; +$settings{'REMARK'} = ''; +my @nosaved=('EN','IP','GATEWAY','REMARK'); # List here ALL setting2 fields. Mandatory + +$settings{'ACTION'} = ''; # add/edit/remove +$settings{'KEY1'} = ''; # point record for ACTION + +#Define each field that can be used to sort columns +my $sortstring='^IP|^GATEWAY|^REMARK'; +$settings{'SORT_GATEWAYLIST'} = 'GATEWAY'; +my $errormessage = ''; +my $warnmessage = ''; + +&Header::showhttpheaders(); + +#Get GUI values +&Header::getcgihash(%settings); + +############### +# DEBUG DEBUG +#&Header::openbox('100%', 'left', 'DEBUG'); +#my $debugCount = 0; +#foreach my $line (sort keys %settings) { +#print "$line = $settings{$line}<br />\n"; +# $debugCount++; +#} +#print " Count: $debugCount\n"; +#&Header::closebox(); +# DEBUG DEBUG +############### + +# Load multiline data +our @current = (); +if (open(FILE, "$datafile")) { + @current = <FILE>; + close (FILE); +} + +## Settings1 Box not used... +&General::readhash("${General::swroot}/main/settings", %settings); + + +## Now manipulate the multi-line list with Settings2 +# Basic actions are: +# toggle the check box +# add/update a new line +# begin editing a line +# remove a line + + +# Toggle enable/disable field. Field is in second position +if ($settings{'ACTION'} eq $Lang::tr{'toggle enable disable'}) { + #move out new line + chomp(@current[$settings{'KEY1'}]); + my @temp = split(/,/,@current[$settings{'KEY1'}]); + + $temp[0] = $temp[0] ne '' ? '' : 'on'; # Toggle the field + @current[$settings{'KEY1'}] = join (',',@temp)."\n"; + $settings{'KEY1'} = ''; # End edit mode + + &General::log($Lang::tr{'routing config changed'}); + + #Save current + open(FILE, ">$datafile") or die 'routing datafile error'; + print FILE @current; + close(FILE); + + # Rebuild configuration file + &BuildConfiguration; +} + +if ($settings{'ACTION'} eq $Lang::tr{'add'}) { + +# Validate inputs + if (( !&General::validip($settings{'IP'})) and ( !&General::validipandmask($settings{'IP'}))){ + $errormessage = $Lang::tr{'invalid ip'}." / ".$Lang::tr{'invalid netmask'}; + } + + if ($settings{'IP'} =~ /0.0.0.0/){ + $errormessage = $Lang::tr{'invalid ip'}." - 0.0.0.0"; + } + + if( !&General::validip($settings{'GATEWAY'}) ) { + $errormessage = $Lang::tr{'invalid ip'}. " - ".$Lang::tr{'gateway ip'}; + } + + unless ($errormessage) { + if ($settings{'KEY1'} eq '') { #add or edit ? + unshift (@current, "$settings{'EN'},$settings{'IP'},$settings{'GATEWAY'},$settings{'REMARK'}\n"); + &General::log($Lang::tr{'routing config added'}); + } else { + @current[$settings{'KEY1'}] = "$settings{'EN'},$settings{'IP'},$settings{'GATEWAY'},$settings{'REMARK'}\n"; + $settings{'KEY1'} = ''; # End edit mode + &General::log($Lang::tr{'routing config changed'}); + } + + # Write changes to config file. + &SortDataFile; # sort newly added/modified entry + &BuildConfiguration; # then re-build routing + + #map ($settings{$_}='' ,@nosaved); # Clear fields + } +} + +if ($settings{'ACTION'} eq $Lang::tr{'edit'}) { + #move out new line + my $line = @current[$settings{'KEY1'}]; # KEY1 is the index in current + chomp($line); + my @temp = split(/,/, $line); + $settings{'EN'}=$temp[0]; # Prepare the screen for editing + $settings{'IP'}=$temp[1]; + $settings{'GATEWAY'}=$temp[2]; + $settings{'REMARK'}=$temp[3]; + &BuildConfiguration; +} + +if ($settings{'ACTION'} eq $Lang::tr{'remove'}) { + splice (@current,$settings{'KEY1'},1); # Delete line + open(FILE, ">$datafile") or die 'route datafile error'; + print FILE @current; + close(FILE); + $settings{'KEY1'} = ''; # End remove mode + &General::log($Lang::tr{'route config changed'}); + + &BuildConfiguration; # then re-build conf which use new data +} + +## Check if sorting is asked +# If same column clicked, reverse the sort. +if ($ENV{'QUERY_STRING'} =~ /$sortstring/ ) { + my $newsort=$ENV{'QUERY_STRING'}; + my $actual=$settings{'SORT_GATEWAYLIST'}; + #Reverse actual sort ? + if ($actual =~ $newsort) { + my $Rev=''; + if ($actual !~ 'Rev') { + $Rev='Rev'; + } + $newsort.=$Rev; + } + $settings{'SORT_GATEWAYLIST'}=$newsort; + map (delete ($settings{$_}) ,(@nosaved,'ACTION','KEY1'));# Must never be saved + &General::writehash($setting, %settings); + &SortDataFile; + $settings{'ACTION'} = 'SORT'; # Create an 'ACTION' + map ($settings{$_} = '' ,@nosaved,'KEY1'); # and reinit vars to empty +} + +if ($settings{'ACTION'} eq '' ) { # First launch from GUI + # Place here default value when nothing is initialized + $settings{'EN'} = 'on'; + $settings{'GATEWAY'} = ''; + $settings{'IP'} = ''; +} + +&Header::openpage($Lang::tr{'routing table entries'}, 1, ''); +&Header::openbigbox('100%', 'left', '', $errormessage); +my %checked=(); # Checkbox manipulations + +if ($errormessage) { + &Header::openbox('100%', 'left', $Lang::tr{'error messages'}); + print "<font class='base'>$errormessage </font>"; + &Header::closebox(); +} + +# + +$checked{'EN'}{'on'} = ($settings{'EN'} eq '' ) ? '' : "checked='checked'"; + +my $buttontext = $Lang::tr{'add'}; +if ($settings{'KEY1'} ne '') { + $buttontext = $Lang::tr{'update'}; + &Header::openbox('100%', 'left', $Lang::tr{'Edit an existing route'}); +} else { + &Header::openbox('100%', 'left', $Lang::tr{'Add a route'}); +} + +#Edited line number (KEY1) passed until cleared by 'save' or 'remove' or 'new sort order' +print <<END +<form method='post' action='$ENV{'SCRIPT_NAME'}'> +<input type='hidden' name='KEY1' value='$settings{'KEY1'}' /> +<table width='100%'> +<tr> + <td class='base'>$Lang::tr{'host ip'} / $Lang::tr{'network'}: </td> + <td><input type='text' name='IP' value='$settings{'IP'}' size='25'/></td> +</tr><tr> + <td class='base'>$Lang::tr{'gateway'}: </td> + <td><input type='text' name='GATEWAY' value='$settings{'GATEWAY'}' size='25'/></td> + <td class='base'>$Lang::tr{'enabled'}</td> + <td><input type='checkbox' name='EN' $checked{'EN'}{'on'} /></td> +</tr> +</tr> + <td class='base'>$Lang::tr{'remark'}: </td> + <td><input type='text' name='REMARK' value='$settings{'REMARK'}' size='25'/></td> +</tr> +</table> +<hr /> +<table width='100%'> +<tr> + <td width='50%' align='center'><input type='hidden' name='ACTION' value='$Lang::tr{'add'}' /><input type='submit' name='SUBMIT' value='$buttontext' /></td> +</tr> +</table> +</form> +END +; +&Header::closebox(); + +&Header::openbox('100%', 'left', $Lang::tr{'routing table'}); +print <<END +<hr /> +<table width='100%'> +<tr> + <td width='30%' align='center'><a href='$ENV{'SCRIPT_NAME'}?IP'><b>$Lang::tr{'host ip'} / $Lang::tr{'network'}</b></a></td> + <td width='30%' align='center'><a href='$ENV{'SCRIPT_NAME'}?GATEWAY'><b>$Lang::tr{'gateway'}</b></a></td> + <td width='30%' align='center'><a href='$ENV{'SCRIPT_NAME'}?REMARK'><b>$Lang::tr{'remark'}</b></a></td> + <td width='10%' colspan='3' class='boldbase' align='center'><b>$Lang::tr{'action'}</b></td> +</tr> +END +; + +# +# Print each line of @current list +# + +my $key = 0; +foreach my $line (@current) { + chomp($line); # remove newline + my @temp=split(/,/,$line); + $temp[2] ='' unless defined $temp[2]; # not always populated + $temp[3] ='' unless defined $temp[2]; # not always populated + + #Choose icon for checkbox + my $gif = ''; + my $gdesc = ''; + if ($temp[0] ne '' ) { + $gif = 'on.gif'; + $gdesc = $Lang::tr{'click to disable'}; + } else { + $gif = 'off.gif'; + $gdesc = $Lang::tr{'click to enable'}; + } + + #Colorize each line + if ($settings{'KEY1'} eq $key) { + print "<tr bgcolor='${Header::colouryellow}'>"; + } elsif ($key % 2) { + print "<tr bgcolor='$color{'color22'}'>"; + } else { + print "<tr bgcolor='$color{'color20'}'>"; + } + print <<END +<td align='center'>$temp[1]</td> +<td align='center'>$temp[2]</td> +<td align='center'>$temp[3]</td> +<td align='center'> +<form method='post' action='$ENV{'SCRIPT_NAME'}'> +<input type='hidden' name='ACTION' value='$Lang::tr{'toggle enable disable'}' /> +<input type='image' name='$Lang::tr{'toggle enable disable'}' src='/images/$gif' alt='$gdesc' title='$gdesc' /> +<input type='hidden' name='KEY1' value='$key' /> +</form> +</td> + +<td align='center'> +<form method='post' action='$ENV{'SCRIPT_NAME'}'> +<input type='hidden' name='ACTION' value='$Lang::tr{'edit'}' /> +<input type='image' name='$Lang::tr{'edit'}' src='/images/edit.gif' alt='$Lang::tr{'edit'}' title='$Lang::tr{'edit'}' /> +<input type='hidden' name='KEY1' value='$key' /> +</form> +</td> + +<td align='center'> +<form method='post' action='$ENV{'SCRIPT_NAME'}'> +<input type='hidden' name='ACTION' value='$Lang::tr{'remove'}' /> +<input type='image' name='$Lang::tr{'remove'}' src='/images/delete.gif' alt='$Lang::tr{'remove'}' title='$Lang::tr{'remove'}' /> +<input type='hidden' name='KEY1' value='$key' /> +</form> +</td> +</tr> +END +; + $key++; +} +print "</table>"; + +# If table contains entries, print 'Key to action icons' +if ($key) { +print <<END +<table> +<tr> + <td class='boldbase'> <b>$Lang::tr{'legend'}: </b></td> + <td><img src='/images/on.gif' alt='$Lang::tr{'click to disable'}' /></td> + <td class='base'>$Lang::tr{'click to disable'}</td> + <td> </td> + <td><img src='/images/off.gif' alt='$Lang::tr{'click to enable'}' /></td> + <td class='base'>$Lang::tr{'click to enable'}</td> + <td> </td> + <td><img src='/images/edit.gif' alt='$Lang::tr{'edit'}' /></td> + <td class='base'>$Lang::tr{'edit'}</td> + <td> </td> + <td><img src='/images/delete.gif' alt='$Lang::tr{'remove'}' /></td> + <td class='base'>$Lang::tr{'remove'}</td> +</tr> +</table> +END +; +} + +&Header::closebox(); + +my $output = `/sbin/ip route show table static`; +$output = &Header::cleanhtml($output,"y"); + +if ( $output != "" ) { + &Header::openbox('100%', 'left', $Lang::tr{'routing table entries'}); + print "<pre>$output</pre>\n"; + &Header::closebox(); +} + +&Header::closebigbox(); +&Header::closepage(); + +## Ouf it's the end ! + +# Sort the "current" array according to choices +sub SortDataFile +{ + our %entries = (); + + # Sort pair of record received in $a $b special vars. + # When IP is specified use numeric sort else alpha. + # If sortname ends with 'Rev', do reverse sort. + # + sub fixedleasesort { + my $qs=''; # The sort field specified minus 'Rev' + if (rindex ($settings{'SORT_GATEWAYLIST'},'Rev') != -1) { + $qs=substr ($settings{'SORT_GATEWAYLIST'},0,length($settings{'SORT_GATEWAYLIST'})-3); + if ($qs eq 'IP') { + my @a = split(/./,$entries{$a}->{$qs}); + my @b = split(/./,$entries{$b}->{$qs}); + ($b[0]<=>$a[0]) || + ($b[1]<=>$a[1]) || + ($b[2]<=>$a[2]) || + ($b[3]<=>$a[3]); + } else { + $entries{$b}->{$qs} cmp $entries{$a}->{$qs}; + } + } else { #not reverse + $qs=$settings{'SORT_GATEWAYLIST'}; + if ($qs eq 'IP') { + my @a = split(/./,$entries{$a}->{$qs}); + my @b = split(/./,$entries{$b}->{$qs}); + ($a[0]<=>$b[0]) || + ($a[1]<=>$b[1]) || + ($a[2]<=>$b[2]) || + ($a[3]<=>$b[3]); + } else { + $entries{$a}->{$qs} cmp $entries{$b}->{$qs}; + } + } + } + + #Use an associative array (%entries) + my $key = 0; + foreach my $line (@current) { + chomp( $line); #remove newline because can be on field 5 or 6 (addition of REMARK) + my @temp = ( '','','', ''); + @temp = split (',',$line); + + # Build a pair 'Field Name',value for each of the data dataline. + # Each SORTABLE field must have is pair. + # Other data fields (non sortable) can be grouped in one + + my @record = ('KEY',$key++,'EN',$temp[0],'IP',$temp[1],'GATEWAY',$temp[2],'REMARK',$temp[3]); + my $record = {}; # create a reference to empty hash + %{$record} = @record; # populate that hash with @record + $entries{$record->{KEY}} = $record; # add this to a hash of hashes + } + + open(FILE, ">$datafile") or die 'routing datafile error'; + + # Each field value is printed , with the newline ! Don't forget separator and order of them. + foreach my $entry (sort fixedleasesort keys %entries) { + print FILE "$entries{$entry}->{EN},$entries{$entry}->{IP},$entries{$entry}->{GATEWAY},$entries{$entry}->{REMARK}\n"; + } + + close(FILE); + # Reload sorted @current + open (FILE, "$datafile"); + @current = <FILE>; + close (FILE); +} + +# +# Build the configuration file +# +sub BuildConfiguration { + system '/usr/local/bin/rebuildroutes'; +} \ No newline at end of file diff --git a/html/cgi-bin/vpnmain.cgi b/html/cgi-bin/vpnmain.cgi index 76b408d..e1a8200 100644 --- a/html/cgi-bin/vpnmain.cgi +++ b/html/cgi-bin/vpnmain.cgi @@ -111,6 +111,7 @@ $cgiparams{'ROOTCERT_EMAIL'} = ''; $cgiparams{'ROOTCERT_OU'} = ''; $cgiparams{'ROOTCERT_CITY'} = ''; $cgiparams{'ROOTCERT_STATE'} = ''; +$cgiparams{'RW_NET'} = '';
&Header::getcgihash(%cgiparams, {'wantfile' => 1, 'filevar' => 'FH'});
@@ -395,8 +396,11 @@ sub writeipsecfiles { print CONF "\tpfsgroup=$lconfighash{$key}[23]\n"; }
- # IKE V1 - print CONF "\tkeyexchange=ikev1\n"; + # IKE V1 or V2 + if (! $lconfighash{$key}[29]) { + $lconfighash{$key}[29] = "ikev1"; + } + print CONF "\tkeyexchange=$lconfighash{$key}[29]\n";
# Lifetimes print CONF "\tikelifetime=$lconfighash{$key}[16]h\n" if ($lconfighash{$key}[16]); @@ -435,6 +439,7 @@ sub writeipsecfiles { # Automatically start only if a net-to-net connection if ($lconfighash{$key}[3] eq 'host') { print CONF "\tauto=add\n"; + print CONF "\trightsourceip=$lvpnsettings{'RW_NET'}\n"; } else { print CONF "\tauto=start\n"; } @@ -471,6 +476,11 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'save'} && $cgiparams{'TYPE'} eq '' && $cg goto SAVE_ERROR; }
+ if ( $cgiparams{'RW_NET'} ne '' and !&General::validipandmask($cgiparams{'RW_NET'}) ) { + $errormessage = $Lang::tr{'urlfilter invalid ip or mask error'}; + goto SAVE_ERROR; + } + map ($vpnsettings{$_} = $cgiparams{$_}, ('ENABLED','DBG_CRYPT','DBG_PARSING','DBG_EMITTING','DBG_CONTROL', 'DBG_DNS')); @@ -479,6 +489,7 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'save'} && $cgiparams{'TYPE'} eq '' && $cg $vpnsettings{'VPN_DELAYED_START'} = $cgiparams{'VPN_DELAYED_START'}; $vpnsettings{'VPN_OVERRIDE_MTU'} = $cgiparams{'VPN_OVERRIDE_MTU'}; $vpnsettings{'VPN_WATCH'} = $cgiparams{'VPN_WATCH'}; + $vpnsettings{'RW_NET'} = $cgiparams{'RW_NET'}; &General::writehash("${General::swroot}/vpn/settings", %vpnsettings); &writeipsecfiles(); if (&vpnenabled) { @@ -1288,6 +1299,7 @@ END $cgiparams{'REMARK'} = $confighash{$cgiparams{'KEY'}}[25]; $cgiparams{'INTERFACE'} = $confighash{$cgiparams{'KEY'}}[26]; $cgiparams{'DPD_ACTION'} = $confighash{$cgiparams{'KEY'}}[27]; + $cgiparams{'IKE_VERSION'} = $confighash{$cgiparams{'KEY'}}[29]; $cgiparams{'IKE_ENCRYPTION'} = $confighash{$cgiparams{'KEY'}}[18]; $cgiparams{'IKE_INTEGRITY'} = $confighash{$cgiparams{'KEY'}}[19]; $cgiparams{'IKE_GROUPTYPE'} = $confighash{$cgiparams{'KEY'}}[20]; @@ -1790,6 +1802,7 @@ END $confighash{$key}[25] = $cgiparams{'REMARK'}; $confighash{$key}[26] = $cgiparams{'INTERFACE'}; $confighash{$key}[27] = $cgiparams{'DPD_ACTION'}; + $confighash{$key}[29] = $cgiparams{'IKE_VERSION'};
#dont forget advanced value $confighash{$key}[18] = $cgiparams{'IKE_ENCRYPTION'}; @@ -1845,6 +1858,11 @@ END $cgiparams{'DPD_ACTION'} = 'restart'; }
+ # Default IKE Version to V1 + if (! $cgiparams{'IKE_VERSION'}) { + $cgiparams{'IKE_VERSION'} = 'ikev1'; + } + # Default is yes for 'pfs' $cgiparams{'PFS'} = 'on'; @@ -1895,6 +1913,10 @@ END $selected{'DPD_ACTION'}{'restart'} = ''; $selected{'DPD_ACTION'}{$cgiparams{'DPD_ACTION'}} = "selected='selected'";
+ $selected{'IKE_VERSION'}{'ikev1'} = ''; + $selected{'IKE_VERSION'}{'ikev2'} = ''; + $selected{'IKE_VERSION'}{$cgiparams{'IKE_VERSION'}} = "selected='selected'"; + &Header::showhttpheaders(); &Header::openpage($Lang::tr{'vpn configuration main'}, 1, ''); &Header::openbigbox('100%', 'left', '', $errormessage); @@ -1974,6 +1996,12 @@ END <td><input type='text' name='REMOTE_ID' value='$cgiparams{'REMOTE_ID'}' /></td> </tr><tr> </tr><td><br /></td><tr> + <td>$Lang::tr{'vpn keyexchange'}:</td> + <td><select name='IKE_VERSION'> + <option value='ikev1' $selected{'IKE_VERSION'}{'ikev1'}>IKEv1</option> + <option value='ikev2' $selected{'IKE_VERSION'}{'ikev2'}>IKEv2</option> + </select></a> + </td> <td>$Lang::tr{'dpd action'}:</td> <td><select name='DPD_ACTION'> <option value='clear' $selected{'DPD_ACTION'}{'clear'}>clear</option> @@ -2458,6 +2486,10 @@ print <<END <td class='base' nowrap='nowrap'>$Lang::tr{'vpn delayed start'}: <img src='/blob.gif' alt='*' /><img src='/blob.gif' alt='*' /></td> <td ><input type='text' name='VPN_DELAYED_START' value='$cgiparams{'VPN_DELAYED_START'}' /></td> </tr> + <tr> + <td class='base' nowrap='nowrap'>$Lang::tr{'host to net vpn'}: <img src='/blob.gif' alt='*' /></td> + <td ><input type='text' name='RW_NET' value='$cgiparams{'RW_NET'}' /></td> + </tr> </table> <p>$Lang::tr{'vpn watch'}:<input type='checkbox' name='VPN_WATCH' $checked{'VPN_WATCH'} /></p> <p>PLUTO DEBUG = @@ -2507,7 +2539,7 @@ END print "<tr bgcolor='$color{'color22'}'>\n"; } print "<td align='center' nowrap='nowrap'>$confighash{$key}[1]</td>"; - print "<td align='center' nowrap='nowrap'>" . $Lang::tr{"$confighash{$key}[3]"} . " (" . $Lang::tr{"$confighash{$key}[4]"} . ")</td>"; + print "<td align='center' nowrap='nowrap'>" . $Lang::tr{"$confighash{$key}[3]"} . " (" . $Lang::tr{"$confighash{$key}[4]"} . ") $confighash{$key}[29]</td>"; if ($confighash{$key}[2] eq '%auth-dn') { print "<td align='left' nowrap='nowrap'>$confighash{$key}[9]</td>"; } elsif ($confighash{$key}[4] eq 'cert') { @@ -2519,7 +2551,9 @@ END # get real state my $active = "<table cellpadding='2' cellspacing='0' bgcolor='${Header::colourred}' width='100%'><tr><td align='center'><b><font color='#FFFFFF'>$Lang::tr{'capsclosed'}</font></b></td></tr></table>"; foreach my $line (@status) { - if ($line =~ /"$confighash{$key}[1]".*IPsec SA established/) { + if (($line =~ /"$confighash{$key}[1]".*IPsec SA established/) || + ($line =~ /$confighash{$key}[1]{.*INSTALLED/)) + { $active = "<table cellpadding='2' cellspacing='0' bgcolor='${Header::colourgreen}' width='100%'><tr><td align='center'><b><font color='#FFFFFF'>$Lang::tr{'capsopen'}</font></b></td></tr></table>"; } } diff --git a/langs/de/cgi-bin/de.pl b/langs/de/cgi-bin/de.pl index 6a9e04b..f7aef31 100644 --- a/langs/de/cgi-bin/de.pl +++ b/langs/de/cgi-bin/de.pl @@ -5,6 +5,7 @@ 'Add Level7 rule' => 'Level7-Regel hinzufügen', 'Add Port Rule' => 'Port Regel hinzufügen', 'Add Rule' => 'Regel hinzufügen', +'Add a route' => 'Eine Route hinzufügen', 'Async logging enabled' => 'Aktiviere asynchrones schreiben des Syslogs', 'Choose Rule' => 'Wählen sie <u>eine</u> der untenstehenden Regeln aus.', 'Class' => 'Klasse', @@ -24,6 +25,7 @@ 'ConnSched time' => 'Zeit:', 'ConnSched up' => 'Hoch', 'ConnSched weekdays' => 'Wochentage:', +'Edit an existing route' => 'Eine existierende Route editieren', 'Enter TOS' => 'Aktivieren oder deaktivieren sie die TOS-Bits <br /> und klicken Sie danach auf <i>Speichern</i>.', 'Existing Files' => 'Dateien in der Datenbank', 'HDD temperature' => 'HDD-Temperatur', @@ -775,7 +777,16 @@ 'external access rule removed' => ' Regel für externen Zugang entfernt; Starte Zugangskontroller neu', 'external aliases configuration' => 'Externe Alias-Konfiguration', 'extrahd' => 'ExtraHD', +'extrahd because there is already a device mounted' => ' mounten, weil bereits ein Geräte gemountet ist', +'extrahd cant umount' => 'Konnte', 'extrahd detected drives' => 'gefundene Laufwerke', +'extrahd install or load driver' => 'Wenn Ihre Festplatte nicht angezeigt wird, müssen Sie zuerst den Treiber laden oder ggf. auch nach installieren. Wenn diese jedoch angezeigt wird, aber keine Partitionen zu sehen sind, müssen diese erst angelegt werden.', +'extrahd maybe the device is in use' => 'nicht mounten. Vielleicht wird das Gerät bereits verwendet', +'extrahd to' => 'nicht nach', +'extrahd to root' => 'nicht nach root mounten', +'extrahd unable to read' => 'Lesefehler von', +'extrahd unable to write' => 'Schreibfehler von', +'extrahd you cant mount' => 'Sie können', 'false classnumber' => 'Die Klassennummer passt nicht zum angegebenen Interface.', 'false max bandwith' => 'Maximalbandbreite ist ungültig.', 'false min bandwith' => 'Mindestbandbreite ist ungültig.', @@ -1643,6 +1654,7 @@ 'start ovpn server' => 'Starte OpenVPN Server', 'state or province' => 'Bundesstat oder Provinz', 'static ip' => 'Statisch IP', +'static routes' => 'Statische Routen', 'status' => 'Status', 'status information' => 'Statusinformationen', 'status ovpn' => 'OpenVPN', @@ -2081,6 +2093,7 @@ 'vpn delayed start' => 'Verzögerung bevor VPN gestartet wird (Sekunden)', 'vpn delayed start help' => 'Falls notwendig, kann diese Verzögerung dazu verwendet werden, um Dynamic DNS Updates ordnungsgemäß anzuwenden. 60 ist ein gängiger Wert, wenn ROT (RED) eine dynamische IP Adresse ist.', 'vpn incompatible use of defaultroute' => 'Hostname=%defaultroute nicht zulässig', +'vpn keyexchange' => 'Schlüsseltausch', 'vpn local id' => 'Lokale ID', 'vpn missing remote id' => 'Sie müssen einen korrekten Distinguished Name (DN) für diese Authentifikation eingeben.', 'vpn mtu invalid' => 'MTU muß ein numerischer Wert sein!', diff --git a/langs/en/cgi-bin/en.pl b/langs/en/cgi-bin/en.pl index 041659b..62925ce 100644 --- a/langs/en/cgi-bin/en.pl +++ b/langs/en/cgi-bin/en.pl @@ -5,6 +5,7 @@ 'Add Level7 rule' => 'Add Level7 rule', 'Add Port Rule' => 'Add port rule', 'Add Rule' => 'Add rule', +'Add a route' => 'Add a route', 'Async logging enabled' => 'Enable asynchronous writing of the syslog file', 'Choose Rule' => 'Choose <u>one</u> of the following rules.', 'Class' => 'Class', @@ -24,6 +25,7 @@ 'ConnSched time' => 'Time:', 'ConnSched up' => 'Up', 'ConnSched weekdays' => 'Days of the week:', +'Edit an existing route' => 'Edit an existing route', 'Enter TOS' => 'Activate or deactivate TOS-bits <br /> and then press <i>Save</i>.', 'Existing Files' => 'Files in database', 'HDD temperature' => 'HDD temperature', @@ -799,7 +801,16 @@ 'external access rule removed' => ' External access rule removed; restarting access controller', 'external aliases configuration' => 'External aliases configuration', 'extrahd' => 'ExtraHD', +'extrahd because there is already a device mounted' => ', because there is already a device mounted', +'extrahd cant umount' => 'Can't umount', 'extrahd detected drives' => 'detected drives', +'extrahd install or load driver' => 'If your device isn't listed here, you need to install or load the driver.<br />If you can see your device but no partitions you have to create them first.', +'extrahd maybe the device is in use' => '. Maybe the device is in use', +'extrahd to' => 'to', +'extrahd to root' => 'to root', +'extrahd unable to read' => 'Unable to read', +'extrahd unable to write' => 'Unable to write', +'extrahd you cant mount' => 'You can't mount', 'false classnumber' => 'The Class-Number does not match the interface.', 'false max bandwith' => 'Maximum bandwith is false.', 'false min bandwith' => 'Minimum bandwith is false.', @@ -1676,6 +1687,7 @@ 'start ovpn server' => 'Start OpenVPN Server', 'state or province' => 'State or Province', 'static ip' => 'Static IP', +'static routes' => 'Static routes', 'status' => 'Status', 'status information' => 'Status information', 'status ovpn' => '4. OpenVPN Status / Configuration:', @@ -2115,6 +2127,7 @@ 'vpn delayed start' => 'Delay before launching VPN (seconds)', 'vpn delayed start help' => 'If required, this delay can be used to allow dynamic DNS updates to propagate properly. 60 is a common value when RED is a dynamic IP.', 'vpn incompatible use of defaultroute' => 'hostname=%defaultroute not allowed', +'vpn keyexchange' => 'Keyexchange', 'vpn local id' => 'Local ID', 'vpn missing remote id' => 'You must specify a correct Distinguished Name (DN) for this authentication.', 'vpn mtu invalid' => 'MTU must be a numeric value!', diff --git a/langs/es/cgi-bin/es.pl b/langs/es/cgi-bin/es.pl index 0433ed5..d410a56 100644 --- a/langs/es/cgi-bin/es.pl +++ b/langs/es/cgi-bin/es.pl @@ -5,6 +5,7 @@ 'Add Level7 rule' => 'añadir regla de Nivel 7', 'Add Port Rule' => 'Añadir Regla de Puerto', 'Add Rule' => 'Añadir Regla', +'Add a route' => 'Añadir una route', 'Choose Rule' => 'Seleccione <u>una</u> de las siguientes reglas.', 'Class' => 'Clase', 'Class was deleted' => 'con subclases potenciales fué eliminado', @@ -23,6 +24,7 @@ 'ConnSched time' => 'Tiempo:', 'ConnSched up' => 'Arriba', 'ConnSched weekdays' => 'Días de las semana:', +'Edit an existing route' => 'Editar una route existente', 'Enter TOS' => 'Activar o desactivar bits TOS<br /> y después presione <i>Guardar</i>', 'Existing Files' => 'Archivos en la base de datos', 'HDD temperature' => 'Temperatura de HDD', @@ -797,7 +799,16 @@ 'external access rule removed' => '"Reglas de acceso externo eliminadas; reiniciando controlador de acceso"', 'external aliases configuration' => 'Configuración de Alias externo', 'extrahd' => 'Disco duro Adicional', +'extrahd because there is already a device mounted' => ', because there is already a device mounted', +'extrahd cant umount' => 'Can't umount', 'extrahd detected drives' => 'Unidades encontradas', +'extrahd install or load driver' => 'If your device isn't listed here, you need to install or load the driver.<br />If you can see your device but no partitions you have to create them first.', +'extrahd maybe the device is in use' => '. Maybe the device is in use', +'extrahd to' => 'to', +'extrahd to root' => 'to root', +'extrahd unable to read' => 'Unable to read', +'extrahd unable to write' => 'Unable to write', +'extrahd you cant mount' => 'You can't mount', 'false classnumber' => 'El número de clase no coincide con la interfaz', 'false max bandwith' => 'El ancho de banda máximo es falso', 'false min bandwith' => 'El ancho de banda mínimo es falso', diff --git a/langs/fr/cgi-bin/fr.pl b/langs/fr/cgi-bin/fr.pl index cbdeda4..daeb9f2 100644 --- a/langs/fr/cgi-bin/fr.pl +++ b/langs/fr/cgi-bin/fr.pl @@ -5,6 +5,7 @@ 'Add Level7 rule' => 'Ajouter une règle Level7', 'Add Port Rule' => 'Ajouter une règle de port', 'Add Rule' => 'Ajouter une règle', +'Add a route' => 'Ajouter une route', 'Async logging enabled' => 'Activer l'écriture asynchrone du fichier syslog', 'Choose Rule' => 'Choisissez <u>une</u> des règles suivantes.', 'Class' => 'Classe', @@ -24,6 +25,7 @@ 'ConnSched time' => 'Temps :', 'ConnSched up' => 'Actif', 'ConnSched weekdays' => 'Jours de la semaine :', +'Edit an existing route' => 'Modifier une route existante', 'Enter TOS' => 'Activer ou désactiver TOS-Bits <br /> puis appuyez sur <i> Enregistrer </i>.', 'Existing Files' => 'Fichiers dans la base de donnée', 'HDD temperature' => 'Température Disque Dur', @@ -798,7 +800,16 @@ 'external access rule removed' => 'Règle d'accès externe supprimée; redémarrage du controleur d'accès', 'external aliases configuration' => 'Configuration des alias externes', 'extrahd' => 'ExtraHD', -'extrahd founded drives' => 'Périphériques trouvés', +'extrahd because there is already a device mounted' => ' car vous avez déjà un support de monté', +'extrahd cant umount' => 'Impossible de démonter', +'extrahd detected drives' => 'Périphériques trouvés', +'extrahd install or load driver' => 'Si votre support n'est pas visible ici, vous devez installer ou charger son pilote.<br />Si vous voyez votre support mais pas de partitions, vous devez tout d'abord les créer.', +'extrahd maybe the device is in use' => '. Votre support est peut-être en cours d'utilisation', +'extrahd to' => 'vers', +'extrahd to root' => 'vers root', +'extrahd unable to read' => 'Impossible de lire', +'extrahd unable to write' => 'Impossible d'écrire', +'extrahd you cant mount' => 'Vous ne pouvez pas monter', 'false classnumber' => 'Le numéro de classe ne correspond pas à l'interface.', 'false max bandwith' => 'La bande passante maximum est fausse.', 'false min bandwith' => 'La bande passante minimum est fausse.', diff --git a/langs/pl/cgi-bin/pl.pl b/langs/pl/cgi-bin/pl.pl index 76c49bb..14160de 100644 --- a/langs/pl/cgi-bin/pl.pl +++ b/langs/pl/cgi-bin/pl.pl @@ -5,6 +5,7 @@ 'Add Level7 rule' => 'Dodaj regułę L7', 'Add Port Rule' => 'Dodaj regułę portu', 'Add Rule' => 'Dodaj regułę', +'Add a route' => 'Dodaj trase', 'Async logging enabled' => 'Włącz asynchroniczny zapis do pliku syslog', 'Choose Rule' => 'Wybierz <u>jedną</u> z poniższych reguł.', 'Class' => 'Klasa', @@ -24,6 +25,7 @@ 'ConnSched time' => 'Czas:', 'ConnSched up' => 'Wyżej', 'ConnSched weekdays' => 'Dni tygodnia:', +'Edit an existing route' => 'Edytuj istniejaca trase', 'Enter TOS' => 'Aktywuj lub deaktywuj bity TOS <br /> a następnie kliknij <i>Zapisz</i>.', 'Existing Files' => 'Plików w bazie', 'HDD temperature' => 'Temperatura HDD', diff --git a/lfs/bash b/lfs/bash index 976d425..afdb511 100644 --- a/lfs/bash +++ b/lfs/bash @@ -48,6 +48,8 @@ else EXTRA_INSTALL = endif
+EXTRA_CONFIG += --build=$(BUILDTARGET) + ############################################################################### # Top-level Rules ############################################################################### diff --git a/lfs/binutils b/lfs/binutils index 464ac52..b6b2c19 100644 --- a/lfs/binutils +++ b/lfs/binutils @@ -24,7 +24,7 @@
include Config
-VER = 2.17 +VER = 2.18
THISAPP = binutils-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -34,23 +34,10 @@ DIR_APP = $(DIR_SRC)/$(THISAPP) # Normal build or /tools build. # ifeq "$(ROOT)" "" -ifeq "$(LFS_PASS)" "install" - TARGET = $(DIR_INFO)/$(THISAPP)-install - EXTRA_CONFIG = --prefix=/opt/$(MACHINE)-uClibc \ - --build=$(MACHINE)-pc-linux-gnu \ - --host=$(MACHINE)-pc-linux-gnu \ - --target=$(MACHINE)-linux-uclibc \ - --disable-nls \ - --enable-multilib \ - --disable-werror - EXTRA_MAKE = all - EXTRA_INSTALL = -else TARGET = $(DIR_INFO)/$(THISAPP) EXTRA_CONFIG = --prefix=/usr --enable-shared --disable-nls EXTRA_MAKE = tooldir=/usr EXTRA_INSTALL = tooldir=/usr -endif else ifeq "$(PASS)" "1" TARGET = $(DIR_INFO)/$(THISAPP)-tools1 @@ -65,6 +52,8 @@ else endif endif
+EXTRA_CONFIG += --build=$(BUILDTARGET) + ############################################################################### # Top-level Rules ############################################################################### @@ -73,7 +62,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = e26e2e06b6e4bf3acf1dc8688a94c0d1 +$(DL_FILE)_MD5 = 9d22ee4dafa3a194457caf4706f9cf01
install : $(TARGET)
@@ -104,6 +93,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) $(DIR_SRC)/binutils-build && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) @mkdir $(DIR_SRC)/binutils-build + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-configure-1.patch cd $(DIR_SRC)/binutils-build && $(DIR_APP)/configure $(EXTRA_CONFIG) ifeq "$(PASS)" "1" cd $(DIR_SRC)/binutils-build && make configure-host @@ -111,9 +101,7 @@ endif cd $(DIR_SRC)/binutils-build && make $(EXTRA_MAKE) $(MAKETUNING) cd $(DIR_SRC)/binutils-build && make $(EXTRA_INSTALL) install ifeq "$(ROOT)" "" -ifneq "$(LFS_PASS)" "install" cp -v $(DIR_APP)/include/libiberty.h /usr/include -endif else ifeq "$(PASS)" "1" cd $(DIR_SRC)/binutils-build && make -C ld clean diff --git a/lfs/ccache b/lfs/ccache index 2407320..6ae5233 100644 --- a/lfs/ccache +++ b/lfs/ccache @@ -24,7 +24,7 @@
include Config
-VER = 3.1 +VER = 3.1.6
THISAPP = ccache-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 7961852e1e36f11559039c32142f58df +$(DL_FILE)_MD5 = 343dc9b642e1d2af1e6bd8e474dde92e
install : $(TARGET)
diff --git a/lfs/cleanup-toolchain b/lfs/cleanup-toolchain index 06d4231..cc66a2d 100644 --- a/lfs/cleanup-toolchain +++ b/lfs/cleanup-toolchain @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2011 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -51,14 +51,14 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) ifeq "$(PASS)" "1" mv -v /tools/bin/{ld,ld-old} - mv -v /tools/i686-pc-linux-gnu/bin/{ld,ld-old} + mv -v /tools/$(BUILDTARGET)/bin/{ld,ld-old} cp -v /tools/bin/{ld-new,ld} - ln -sv /tools/bin/ld /tools/i686-pc-linux-gnu/bin/ld - gcc -dumpspecs > /tools/lib/gcc/i686-pc-linux-gnu/4.0.4/specs - sed 's@^/lib/ld-linux.so.2@/tools&@g' /tools/lib/gcc/i686-pc-linux-gnu/4.0.4/specs > tempspecfile - mv -vf tempspecfile /tools/lib/gcc/i686-pc-linux-gnu/4.0.4/specs - find /tools/lib/gcc/i686-pc-linux-gnu/4.0.4/include/* -maxdepth 0 -xtype d -exec rm -rvf '{}' ; - rm -vf `grep -l "DO NOT EDIT THIS FILE" /tools/lib/gcc/i686-pc-linux-gnu/4.0.4/include/*` + ln -sv /tools/bin/ld /tools/$(BUILDTARGET)/bin/ld + gcc -dumpspecs > /tools/lib/gcc/$(BUILDTARGET)/4.1.2/specs + sed 's@^/lib/ld-linux.so@/tools&@g' /tools/lib/gcc/$(BUILDTARGET)/4.1.2/specs > tempspecfile + mv -vf tempspecfile /tools/lib/gcc/$(BUILDTARGET)/4.1.2/specs + find /tools/lib/gcc/$(BUILDTARGET)/4.1.2/include/* -maxdepth 0 -xtype d -exec rm -rvf '{}' ; + rm -vf `grep -l "DO NOT EDIT THIS FILE" /tools/lib/gcc/$(BUILDTARGET)/4.1.2/include/*` endif ifeq "$(PASS)" "2" -strip --strip-debug /tools/lib/* @@ -68,12 +68,12 @@ ifeq "$(PASS)" "2" endif ifeq "$(PASS)" "3" mv -v /tools/bin/{ld,ld-old} - mv -v /tools/i686-pc-linux-gnu/bin/{ld,ld-old} + mv -v /tools/$(BUILDTARGET)/bin/{ld,ld-old} mv -v /tools/bin/{ld-new,ld} - ln -sv /tools/bin/ld /tools/i686-pc-linux-gnu/bin/ld + ln -sv /tools/bin/ld /tools/$(BUILDTARGET)/bin/ld gcc -dumpspecs | \ - perl -p -e 's@/tools/lib/ld-linux.so.2@/lib/ld-linux.so.2@g;' \ + perl -p -e 's@/tools/lib/ld-linux.so@/lib/ld-linux.so@g;' \ -e 's@*startfile_prefix_spec:\n@$$_/usr/lib/ @g;' > \ - /tools/lib/gcc/i686-pc-linux-gnu/4.0.4/specs + /tools/lib/gcc/$(BUILDTARGET)/4.1.2/specs endif @$(POSTBUILD) diff --git a/lfs/compat-wireless b/lfs/compat-wireless index 71f3bc9..370f06b 100644 --- a/lfs/compat-wireless +++ b/lfs/compat-wireless @@ -34,7 +34,7 @@ else endif endif
-VER = 2.6.39-1-sn +VER = 3.0-2
THISAPP = compat-wireless-$(VER) DL_FILE = compat-wireless-$(VER).tar.bz2 @@ -51,7 +51,7 @@ objects = $(DL_FILE) asix-3.5.0a.tar.bz2 $(DL_FILE) = $(DL_FROM)/$(DL_FILE) asix-3.5.0a.tar.bz2 = $(DL_FROM)/asix-3.5.0a.tar.bz2
-$(DL_FILE)_MD5 = ac2b20607d75de8ce2b30b74995383a6 +$(DL_FILE)_MD5 = 7f2d0de30bf9c3e9a941d9e67971e9b3 asix-3.5.0a.tar.bz2_MD5=cc57513505d3ad1a43b58add91d2bba7
install : $(TARGET) diff --git a/lfs/configroot b/lfs/configroot index 43c2d21..f353614 100644 --- a/lfs/configroot +++ b/lfs/configroot @@ -65,7 +65,7 @@ $(TARGET) : certs/index.txt ddns/config ddns/noipsettings ddns/settings ddns/ipcache dhcp/settings \ dhcp/fixleases dhcp/advoptions dhcp/dhcpd.conf.local dmzholes/config dns/settings ethernet/aliases ethernet/settings ethernet/known_nics ethernet/scanned_nics \ extrahd/scan extrahd/devices extrahd/partitions extrahd/settings fwlogs/ipsettings fwlogs/portsettings \ - isdn/settings mac/settings main/disable_nf_sip main/hosts main/settings net-traffic/settings optionsfw/settings outgoing/settings outgoing/rules \ + isdn/settings mac/settings main/disable_nf_sip main/hosts main/routing main/settings net-traffic/settings optionsfw/settings outgoing/settings outgoing/rules \ pakfire/settings portfw/config ppp/settings-1 ppp/settings-2 ppp/settings-3 ppp/settings-4 \ ppp/settings-5 ppp/settings proxy/settings proxy/advanced/settings proxy/advanced/cre/enable remote/settings qos/settings qos/classes qos/subclasses qos/level7config qos/portconfig \ qos/tosconfig snort/settings tripwire/settings upnp/settings vpn/config vpn/settings vpn/ipsec.conf \ diff --git a/lfs/coreutils b/lfs/coreutils index 9b6ddc7..7128233 100644 --- a/lfs/coreutils +++ b/lfs/coreutils @@ -40,11 +40,13 @@ ifeq "$(ROOT)" "" EXTRA_INSTALL = else TARGET = $(DIR_INFO)/$(THISAPP)-tools - EXTRA_CONFIG = --prefix=/tools --disable-nls --host=$(MACHINE) + EXTRA_CONFIG = --prefix=/tools --disable-nls EXTRA_MAKE = EXTRA_INSTALL = endif
+EXTRA_CONFIG += --build=$(BUILDTARGET) + ############################################################################### # Top-level Rules ############################################################################### @@ -105,14 +107,16 @@ ifeq "$(ROOT)" "" #ln -sf ../../bin/install /usr/bin mv -f /bin/uname /bin/uname.bak echo '#!/bin/bash' > /bin/uname - echo '/bin/uname.bak $$* | sed 's/i.86/$(MACHINE)/g'' >> /bin/uname + echo 'kernel=`/bin/uname.bak -r`' >> /bin/uname + echo '/bin/uname.bak $$* | sed 's/i.86/$(MACHINE)/g' | sed "s/$$kernel/2.6.32.45-ipfire/g"' >> /bin/uname chmod 755 /bin/uname dircolors -p > /etc/dircolors else rm /tools/bin/hostname mv -f /tools/bin/uname /tools/bin/uname.bak echo '#!/bin/bash' > /tools/bin/uname - echo '/tools/bin/uname.bak $$* | sed 's/i.86/$(MACHINE)/g'' >> /tools/bin/uname + echo 'kernel=`/tools/bin/uname.bak -r`' >> /tools/bin/uname + echo '/tools/bin/uname.bak $$* | sed 's/i.86/$(MACHINE)/g' | sed "s/$$kernel/2.6.32.45-ipfire/g"' >> /tools/bin/uname chmod 755 /tools/bin/uname endif @rm -rf $(DIR_APP) diff --git a/lfs/gcc b/lfs/gcc index b6a261a..95cc681 100644 --- a/lfs/gcc +++ b/lfs/gcc @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2011 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,55 +24,16 @@
include Config
-VER = 4.0.4 +VER = 4.1.2
THISAPP = gcc-$(VER) DL_FILE = $(THISAPP).tar.bz2 DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) -CFLAGS = -CXXFLAGS = -TARGET_PATH = /opt/$(MACHINE)-uClibc/bin:$(PATH)
# Normal build or /tools build. # ifeq "$(ROOT)" "" -ifeq "$(INST)" "1" - TARGET = $(DIR_INFO)/$(THISAPP)-install1 - EXTRA_CONFIG = --prefix=/opt/$(MACHINE)-uClibc \ - --build=$(MACHINE)-pc-linux-gnu \ - --host=$(MACHINE)-pc-linux-gnu \ - --target=$(MACHINE)-linux-uclibc \ - --enable-languages=c \ - --with-sysroot=$(DIR_SRC)/uClibc_dev \ - --disable-__cxa_atexit \ - --enable-target-optspace \ - --with-gnu-ld \ - --disable-shared \ - --enable-threads \ - --enable-multilib \ - --disable-nls - EXTRA_MAKE = - EXTRA_INSTALL = -else -ifeq "$(INST)" "2" - TARGET = $(DIR_INFO)/$(THISAPP)-install2 - EXTRA_CONFIG = --prefix=/opt/$(MACHINE)-uClibc \ - --build=$(MACHINE)-pc-linux-gnu \ - --host=$(MACHINE)-pc-linux-gnu \ - --target=$(MACHINE)-linux-uclibc \ - --enable-languages=c,c++ \ - --with-sysroot=$(DIR_SRC)/uClibc_dev \ - --disable-__cxa_atexit \ - --enable-target-optspace \ - --with-gnu-ld \ - --enable-shared \ - --disable-nls \ - --enable-threads \ - --enable-multilib - EXTRA_MAKE = - EXTRA_INSTALL = -else TARGET = $(DIR_INFO)/$(THISAPP) EXTRA_CONFIG = --prefix=/usr \ --libexecdir=/usr/lib \ @@ -84,8 +45,6 @@ else --disable-nls EXTRA_MAKE = EXTRA_INSTALL = -endif -endif else ifeq "$(PASS)" "1" TARGET = $(DIR_INFO)/$(THISAPP)-tools1 @@ -94,8 +53,8 @@ ifeq "$(PASS)" "1" --disable-nls \ --enable-shared \ --enable-languages=c - EXTRA_MAKE = - #bootstrap BOOT_LDFLAGS="-static" + EXTRA_MAKE = bootstrap + # BOOT_LDFLAGS="-static" EXTRA_INSTALL = else TARGET = $(DIR_INFO)/$(THISAPP)-tools2 @@ -112,6 +71,8 @@ else endif endif
+EXTRA_CONFIG += --build=$(BUILDTARGET) --host=$(BUILDTARGET) --target=$(BUILDTARGET) + ############################################################################### # Top-level Rules ############################################################################### @@ -119,7 +80,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 8970debbc55bea85ee80961d733080f0 +$(DL_FILE)_MD5 = a4a3eb15c96030906d8494959eeda23c
install : $(TARGET)
@@ -149,31 +110,9 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) $(DIR_SRC)/gcc-build && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-fix_linker_version_detection.patch @mkdir $(DIR_SRC)/gcc-build ifeq "$(ROOT)" "" -ifeq "$(INST)" "1" - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc-uclibc-conf.patch - cd $(DIR_SRC)/gcc-build && $(DIR_APP)/configure $(EXTRA_CONFIG) - cd $(DIR_SRC)/gcc-build && PATH=$(TARGET_PATH) make $(MAKETUNING) all-gcc - cd $(DIR_SRC)/gcc-build && PATH=$(TARGET_PATH) make install-gcc - cd /opt/$(MACHINE)-uClibc/bin && for i in `ls -w1 $(MACHINE)-linux-uclibc-*`; do \ - ln -svf $$i $(MACHINE)-linux-`echo $$i | cut -c 19-`; \ - done - ln -svf $(MACHINE)-linux-uclibc /opt/$(MACHINE)-uClibc/$(MACHINE)-linux - ln -svf gcc /opt/$(MACHINE)-uClibc/$(MACHINE)-linux-uclibc/bin/cc -else -ifeq "$(INST)" "2" - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc-uclibc-conf.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc-uclibc-locale.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc-libstdc++-pic.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc-sdk-libstdc++-includes.patch - ln -snf ../include /opt/$(MACHINE)-uClibc/$(MACHINE)-linux-uclibc/sys-include - cd $(DIR_SRC)/gcc-build && $(DIR_APP)/configure $(EXTRA_CONFIG) - cd $(DIR_SRC)/gcc-build && PATH=$(TARGET_PATH) make $(MAKETUNING) $(EXTRA_MAKE) - cd $(DIR_SRC)/gcc-build && PATH=$(TARGET_PATH) make install $(EXTRA_INSTALL) - cp -f /opt/$(MACHINE)-uClibc/lib/libgcc_s.so /lib - cd /lib && ln -sf libgcc_s.so libgcc_s.so.1 -else cd $(DIR_APP) && sed -i 's/install_to_$$(INSTALL_DEST) //' libiberty/Makefile.in cd $(DIR_APP) && sed -i 's/^XCFLAGS =$$/& -fomit-frame-pointer/' gcc/Makefile.in cd $(DIR_APP) && sed -i 's@./fixinc.sh@-c true@' gcc/Makefile.in @@ -184,8 +123,6 @@ else cd $(DIR_SRC)/gcc-build && make $(EXTRA_INSTALL) install ln -sfv ../usr/bin/cpp /lib ln -sfv gcc /usr/bin/cc -endif -endif else ifeq "$(PASS)" "1" cd $(DIR_SRC)/gcc-build && $(DIR_APP)/configure $(EXTRA_CONFIG) diff --git a/lfs/glibc b/lfs/glibc index c540b98..a81419a 100644 --- a/lfs/glibc +++ b/lfs/glibc @@ -30,8 +30,6 @@ THISAPP = glibc-$(VER) DL_FILE = $(THISAPP).tar.bz2 DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) -CFLAGS = -CXXFLAGS =
# Normal build or /tools build. # @@ -53,6 +51,8 @@ else EXTRA_INSTALL = endif
+EXTRA_CONFIG += --build=$(BUILDTARGET) + ############################################################################### # Top-level Rules ############################################################################### diff --git a/lfs/groff b/lfs/groff index 194877e..1739fee 100644 --- a/lfs/groff +++ b/lfs/groff @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2011 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 1.18.1.1 +VER = 1.21
THISAPP = groff-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 511dbd64b67548c99805f1521f82cc5e +$(DL_FILE)_MD5 = 8b8cd29385b97616a0f0d96d0951c5bf
install : $(TARGET)
@@ -70,13 +70,10 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-debian_fixes-1.patch - cd $(DIR_APP) && sed -i -e 's/2010/002D/' -e 's/2212/002D/' \ - -e 's/2018/0060/' -e 's/2019/0027/' font/devutf8/R.proto cd $(DIR_APP) && PAGE=A4 ./configure --prefix=/usr --enable-multibyte --disable-nls cd $(DIR_APP) && make cd $(DIR_APP) && make install - ln -sv eqn /usr/bin/geqn - ln -sv tbl /usr/bin/gtbl + ln -svf eqn /usr/bin/geqn + ln -svf tbl /usr/bin/gtbl @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/lfs/iproute2 b/lfs/iproute2 index 3cc6844..50ccf40 100644 --- a/lfs/iproute2 +++ b/lfs/iproute2 @@ -76,5 +76,9 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) cd $(DIR_APP) && make $(MAKETUNING) SBINDIR=/sbin cd $(DIR_APP) && make SBINDIR=/sbin install cd $(DIR_APP) && mv -v /sbin/arpd /usr/sbin + + # Add table for static routing + echo "200 static" >> /etc/iproute2/rt_tables + @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/lfs/java b/lfs/java deleted file mode 100644 index 7c8d834..0000000 --- a/lfs/java +++ /dev/null @@ -1,83 +0,0 @@ -############################################################################### -# # -# IPFire.org - A linux based firewall # -# Copyright (C) 2007 Michael Tremer & Christian Schmidt # -# # -# This program is free software: you can redistribute it and/or modify # -# it under the terms of the GNU General Public License as published by # -# the Free Software Foundation, either version 3 of the License, or # -# (at your option) any later version. # -# # -# This program is distributed in the hope that it will be useful, # -# but WITHOUT ANY WARRANTY; without even the implied warranty of # -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # -# GNU General Public License for more details. # -# # -# You should have received a copy of the GNU General Public License # -# along with this program. If not, see http://www.gnu.org/licenses/. # -# # -############################################################################### - -############################################################################### -# Definitions -############################################################################### - -include Config - -VER = 1.6.0_12 - -THISAPP = java-$(VER)-for-ipfire -DL_FILE = $(THISAPP).tar.gz -DL_FROM = $(URL_IPFIRE) -DIR_APP = $(DIR_SRC)/$(THISAPP) -TARGET = $(DIR_INFO)/$(THISAPP) -PROG = java -PAK_VER = 2 - -DEPS = "" - -############################################################################### -# Top-level Rules -############################################################################### - -objects = $(DL_FILE) - -$(DL_FILE) = $(DL_FROM)/$(DL_FILE) - -$(DL_FILE)_MD5 = 260b644b3b9f5c4ddba09444db45e19e - -install : $(TARGET) - -check : $(patsubst %,$(DIR_CHK)/%,$(objects)) - -download :$(patsubst %,$(DIR_DL)/%,$(objects)) - -md5 : $(subst %,%_MD5,$(objects)) - -dist: - @$(PAK) - -############################################################################### -# Downloading, checking, md5sum -############################################################################### - -$(patsubst %,$(DIR_CHK)/%,$(objects)) : - @$(CHECK) - -$(patsubst %,$(DIR_DL)/%,$(objects)) : - @$(LOAD) - -$(subst %,%_MD5,$(objects)) : - @$(MD5) - -############################################################################### -# Installation Details -############################################################################### - -$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) - @$(PREBUILD) - @rm -rf $(DIR_APP) && cd $(DIR_SRC) - tar zxf $(DIR_DL)/$(DL_FILE) -C /usr - ln -s /usr/java/bin/java /usr/bin/java - @rm -rf $(DIR_APP) - @$(POSTBUILD) diff --git a/lfs/kvm-kmod b/lfs/kvm-kmod index b6418ac..7cb846e 100644 --- a/lfs/kvm-kmod +++ b/lfs/kvm-kmod @@ -34,7 +34,7 @@ else endif endif
-VER = 2.6.38.6 +VER = 3.0b
THISAPP = kvm-kmod-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -50,7 +50,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = b631ba6ba7b0d3c07de870c6104ffbd5 +$(DL_FILE)_MD5 = 19792041adc25779b31ea5c5fdca7d8c
install : $(TARGET)
@@ -83,7 +83,7 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)_remove_pvclock_scale_delta_redifinition.patch + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)_remove_pvclock_scale_delta_redefinition.patch cd $(DIR_APP) && ./configure --kerneldir=/usr/src/linux cd $(DIR_APP) && make $(MAKETUNING) cd $(DIR_APP) && install -m 644 x86/*.ko \ diff --git a/lfs/libsatsolver b/lfs/libsatsolver deleted file mode 100644 index 778375a..0000000 --- a/lfs/libsatsolver +++ /dev/null @@ -1,109 +0,0 @@ -############################################################################### -# # -# IPFire.org - A linux based firewall # -# Copyright (C) 2007-2011 IPFire Team info@ipfire.org # -# # -# This program is free software: you can redistribute it and/or modify # -# it under the terms of the GNU General Public License as published by # -# the Free Software Foundation, either version 3 of the License, or # -# (at your option) any later version. # -# # -# This program is distributed in the hope that it will be useful, # -# but WITHOUT ANY WARRANTY; without even the implied warranty of # -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # -# GNU General Public License for more details. # -# # -# You should have received a copy of the GNU General Public License # -# along with this program. If not, see http://www.gnu.org/licenses/. # -# # -############################################################################### - -############################################################################### -# Definitions -############################################################################### - -include Config - -VER = 0.16.4 - -THISAPP = libsatsolver-$(VER) -DL_FILE = $(THISAPP).tar.bz2 -DL_FROM = $(URL_IPFIRE) -DIR_APP = $(DIR_SRC)/$(THISAPP) -TARGET = $(DIR_INFO)/$(THISAPP) - -PROG = libsatsolver -DEPS = "" -PAK_VER = 1 - -############################################################################### -# Top-level Rules -############################################################################### - -objects = $(DL_FILE) - -$(DL_FILE) = $(DL_FROM)/$(DL_FILE) - -$(DL_FILE)_MD5 = 563414330c29e9b49be0e43358185a78 - -install : $(TARGET) - -check : $(patsubst %,$(DIR_CHK)/%,$(objects)) - -download :$(patsubst %,$(DIR_DL)/%,$(objects)) - -md5 : $(subst %,%_MD5,$(objects)) - -dist : - @$(PAK) - -############################################################################### -# Downloading, checking, md5sum -############################################################################### - -$(patsubst %,$(DIR_CHK)/%,$(objects)) : - @$(CHECK) - -$(patsubst %,$(DIR_DL)/%,$(objects)) : - @$(LOAD) - -$(subst %,%_MD5,$(objects)) : - @$(MD5) - -############################################################################### -# Installation Details -############################################################################### - -$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) - @$(PREBUILD) - @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/libsatsolver-Build-only-libraries.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/libsatsolver-Create-linker-scripts-that-do-only-export-the-needed.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/libsatsolver-Make-libsatsolver-ext-a-versioned-shared-lib.patch - - # Who releases code with -Werror? - cd $(DIR_APP) && sed -e "s/-Werror//g" -i CMakeLists.txt - - # Make sure that libsatsolverext is linked properly to all needed - # libraries. - cd $(DIR_APP) && echo "TARGET_LINK_LIBRARIES(satsolverext satsolver $${EXPAT_LIBRARY} $${ZLIB_LIBRARY})" \ - >> ext/CMakeLists.txt - - # Remove the RPM stuff when we build with -DFEDORA=1 because we - # do not support RPM. - cd $(DIR_APP) && sed -e "s/DEBIAN/FEDORA/g" -i ext/CMakeLists.txt - - # Our version of glibc has no __qsort_r - cd $(DIR_APP) && echo "#define USE_OWN_QSORT" >> src/util.h - - cd $(DIR_APP) && mkdir build - cd $(DIR_APP)/build && cmake .. -DFEDORA=1 \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_SKIP_RPATH=1 - cd $(DIR_APP)/build && make $(PARALELLISMFLAGS) - - cd $(DIR_APP)/build && make install - - @rm -rf $(DIR_APP) - @$(POSTBUILD) diff --git a/lfs/libsolv b/lfs/libsolv new file mode 100644 index 0000000..b602095 --- /dev/null +++ b/lfs/libsolv @@ -0,0 +1,111 @@ +############################################################################### +# # +# IPFire.org - A linux based firewall # +# Copyright (C) 2007-2011 IPFire Team info@ipfire.org # +# # +# This program is free software: you can redistribute it and/or modify # +# it under the terms of the GNU General Public License as published by # +# the Free Software Foundation, either version 3 of the License, or # +# (at your option) any later version. # +# # +# This program is distributed in the hope that it will be useful, # +# but WITHOUT ANY WARRANTY; without even the implied warranty of # +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # +# GNU General Public License for more details. # +# # +# You should have received a copy of the GNU General Public License # +# along with this program. If not, see http://www.gnu.org/licenses/. # +# # +############################################################################### + +############################################################################### +# Definitions +############################################################################### + +include Config + +VER = 0.0.0-0db9d7f + +THISAPP = libsolv-$(VER) +DL_FILE = $(THISAPP).tar.gz +DL_FROM = $(URL_IPFIRE) +DIR_APP = $(DIR_SRC)/$(THISAPP) +TARGET = $(DIR_INFO)/$(THISAPP) + +PROG = libsolv +DEPS = "" +PAK_VER = 1 + +############################################################################### +# Top-level Rules +############################################################################### + +objects = $(DL_FILE) + +$(DL_FILE) = $(DL_FROM)/$(DL_FILE) + +$(DL_FILE)_MD5 = ba95c404d807bc71297c508a7127a3d9 + +install : $(TARGET) + +check : $(patsubst %,$(DIR_CHK)/%,$(objects)) + +download :$(patsubst %,$(DIR_DL)/%,$(objects)) + +md5 : $(subst %,%_MD5,$(objects)) + +dist : + @$(PAK) + +############################################################################### +# Downloading, checking, md5sum +############################################################################### + +$(patsubst %,$(DIR_CHK)/%,$(objects)) : + @$(CHECK) + +$(patsubst %,$(DIR_DL)/%,$(objects)) : + @$(LOAD) + +$(subst %,%_MD5,$(objects)) : + @$(MD5) + +############################################################################### +# Installation Details +############################################################################### + +$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) + @$(PREBUILD) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + + # Who releases code with -Werror? + cd $(DIR_APP) && sed -e "s/-Werror//g" -i CMakeLists.txt + + # Disable bindings, examples and tools. + cd $(DIR_APP) && sed "/bindings/d" -i CMakeLists.txt + cd $(DIR_APP) && sed "/examples/d" -i CMakeLists.txt + cd $(DIR_APP) && sed "/tools/d" -i CMakeLists.txt + + # Make sure that libsatsolverext is linked properly to all needed + # libraries. + cd $(DIR_APP) && echo "TARGET_LINK_LIBRARIES(libsolvext libsolv $${EXPAT_LIBRARY} $${ZLIB_LIBRARY})" \ + >> ext/CMakeLists.txt + + # Remove the RPM stuff when we build with -DFEDORA=1 because we + # do not support RPM. + cd $(DIR_APP) && sed -e "s/DEBIAN/FEDORA/g" -i ext/CMakeLists.txt + + # Our version of glibc has no __qsort_r + cd $(DIR_APP) && echo "#define USE_OWN_QSORT" >> src/util.h + + cd $(DIR_APP) && mkdir build + cd $(DIR_APP)/build && cmake .. -DFEDORA=1 \ + -DCMAKE_INSTALL_PREFIX=/usr \ + -DCMAKE_BUILD_TYPE=Release \ + -DCMAKE_SKIP_RPATH=1 + cd $(DIR_APP)/build && make $(PARALELLISMFLAGS) + + cd $(DIR_APP)/build && make install + + @rm -rf $(DIR_APP) + @$(POSTBUILD) diff --git a/lfs/ncurses b/lfs/ncurses index 3c7be4d..0b7bbb7 100644 --- a/lfs/ncurses +++ b/lfs/ncurses @@ -48,6 +48,8 @@ else EXTRA_INSTALL = endif
+EXTRA_CONFIG += --build=$(BUILDTARGET) + ############################################################################### # Top-level Rules ############################################################################### diff --git a/lfs/openvpn b/lfs/openvpn index 792de60..41594b7 100644 --- a/lfs/openvpn +++ b/lfs/openvpn @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2011 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 2.1.2 +VER = 2.2.1
THISAPP = openvpn-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 543a30dafcdefe1d67c0e47b80741755 +$(DL_FILE)_MD5 = 500bee5449b29906150569aaf2eb2730
install : $(TARGET)
@@ -77,8 +77,11 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) cd $(DIR_APP) && cp -Rvf $(DIR_SRC)/config/ovpn /var/ipfire cd $(DIR_APP)/plugin/auth-pam && make cp -pvf $(DIR_APP)/plugin/auth-pam/openvpn-auth-pam.so /lib/ + cd $(DIR_APP)/plugin/down-root && make + cp -pvf $(DIR_APP)/plugin/down-root/openvpn-down-root.so /lib/ -mkdir -vp /var/ipfire/ovpn/ca -mkdir -vp /var/ipfire/ovpn/crls + -mkdir -vp /var/ipfire/ovpn/n2nconf touch /var/ipfire/ovpn/ovpn-leases.db chmod 700 /var/ipfire/ovpn/ovpn-leases.db chown -R nobody:nobody /var/ipfire/ovpn diff --git a/lfs/perl b/lfs/perl index f507544..c4ddc8e 100644 --- a/lfs/perl +++ b/lfs/perl @@ -80,6 +80,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) ifneq "$(ROOT)" "" cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-libc-2.patch endif + cd $(DIR_APP) && sed -i -e 's|-fstack-protector|-fno-stack-protector|g' Configure ifeq "$(ROOT)" "" cd $(DIR_APP) && ./configure.gnu --prefix=/usr -Dman1dir=/usr/share/man/man1 \ -Dman3dir=/usr/share/man/man3 -Dpager="/usr/bin/less -isR" -Dusethreads diff --git a/lfs/python-satsolver b/lfs/python-satsolver deleted file mode 100644 index 0974a15..0000000 --- a/lfs/python-satsolver +++ /dev/null @@ -1,102 +0,0 @@ -############################################################################### -# # -# IPFire.org - A linux based firewall # -# Copyright (C) 2007 Michael Tremer & Christian Schmidt # -# # -# This program is free software: you can redistribute it and/or modify # -# it under the terms of the GNU General Public License as published by # -# the Free Software Foundation, either version 3 of the License, or # -# (at your option) any later version. # -# # -# This program is distributed in the hope that it will be useful, # -# but WITHOUT ANY WARRANTY; without even the implied warranty of # -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # -# GNU General Public License for more details. # -# # -# You should have received a copy of the GNU General Public License # -# along with this program. If not, see http://www.gnu.org/licenses/. # -# # -############################################################################### - -############################################################################### -# Definitions -############################################################################### - -include Config - -VER = 0.16.0-20110429-868eae9 - -THISAPP = sat-solver-bindings-$(VER) -DL_FILE = $(THISAPP).tar.xz -DL_FROM = http://source.ipfire.org/source-3.x -DIR_APP = $(DIR_SRC)/$(THISAPP) -TARGET = $(DIR_INFO)/$(THISAPP) - -PROG = python-satsolver -DEPS = "libsatsolver" -PAK_VER = 1 - -############################################################################### -# Top-level Rules -############################################################################### - -objects = $(DL_FILE) - -$(DL_FILE) = $(DL_FROM)/$(DL_FILE) - -$(DL_FILE)_MD5 = 479f3b57a9f9a59c7b24e37aedda7469 - -install : $(TARGET) - -check : $(patsubst %,$(DIR_CHK)/%,$(objects)) - -download :$(patsubst %,$(DIR_DL)/%,$(objects)) - -md5 : $(subst %,%_MD5,$(objects)) - -dist : - $(PAK) - -############################################################################### -# Downloading, checking, md5sum -############################################################################### - -$(patsubst %,$(DIR_CHK)/%,$(objects)) : - @$(CHECK) - -$(patsubst %,$(DIR_DL)/%,$(objects)) : - @$(LOAD) - -$(subst %,%_MD5,$(objects)) : - @$(MD5) - -############################################################################### -# Installation Details -############################################################################### -$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) - @$(PREBUILD) - - # Workaround for weak tarball - @rm -rf $(DIR_APP) && mkdir $(DIR_APP) && cd $(DIR_SRC) && tar Jxf $(DIR_DL)/$(DL_FILE) -C $(DIR_APP) - - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/python-satsover-fix-building-without-rpm.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/python-satsolver-only-python-bindings.patch - - # Aaaahh! - cd $(DIR_APP) && sed -e "s/-Werror//g" -i CMakeLists.txt - - cd $(DIR_APP) && mkdir build - cd $(DIR_APP)/build && cmake .. -DDEBIAN=1 \ - -DCMAKE_INSTALL_PREFIX=/usr \ - -DCMAKE_BUILD_TYPE=Release \ - -DCMAKE_SKIP_RPATH=1 \ - -DPYTHON_LIBRARY=/usr/lib/libpython2.7.so \ - -DPYTHON_INCLUDE_PATH=/usr/include/python2.7 - - cd $(DIR_APP)/build && make $(PARALELLISMFLAGS) - - # Install only the python bindings. That's all we need. - cd $(DIR_APP)/build/bindings/python && make install - - @rm -rf $(DIR_APP) - @$(POSTBUILD) diff --git a/lfs/qemu b/lfs/qemu index 03c20d5..20f5942 100644 --- a/lfs/qemu +++ b/lfs/qemu @@ -24,15 +24,15 @@
include Config
-VER = 0.14.1 +VER = 0.15.0
-THISAPP = qemu-$(VER) +THISAPP = qemu-kvm-$(VER) DL_FILE = $(THISAPP).tar.gz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = qemu -PAK_VER = 11 +PAK_VER = 13
DEPS = "sdl"
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = b6c713a8db638e173af53a62d5178640 +$(DL_FILE)_MD5 = b45b0deebba4ce47dcaaab3807f6ed47
install : $(TARGET)
@@ -78,10 +78,11 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/qemu-0.14.1_missing_ATFCWD_hack.patch + cd $(DIR_APP) && sed -i -e 's|CFLAGS+="-march=i486"|CFLAGS+=""|g' configure + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/qemu-0.15.0_missing_definitions_hack.patch
cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/etc \ - --target-list="i386-linux-user i386-softmmu" + --target-list="i386-linux-user i386-softmmu arm-softmmu" cd $(DIR_APP) && make $(MAKETUNING) cd $(DIR_APP) && make install @rm -rf $(DIR_APP) diff --git a/lfs/strongswan b/lfs/strongswan index 380d351..1efd283 100644 --- a/lfs/strongswan +++ b/lfs/strongswan @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2010 Michael Tremer & Christian Schmidt # +# Copyright (C) 2007-2011 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 4.5.0 +VER = 4.5.3
THISAPP = strongswan-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = cfbd6efef87830a2e7cc4175bde7ac84 +$(DL_FILE)_MD5 = ee7c50a90c91307b111e8085f2479890
install : $(TARGET)
diff --git a/lfs/usb_modeswitch b/lfs/usb_modeswitch index 3046171..e5ae0ed 100644 --- a/lfs/usb_modeswitch +++ b/lfs/usb_modeswitch @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2010 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2011 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 1.1.6 +VER = 1.1.9
THISAPP = usb-modeswitch-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = be3c7fc908e6ab50eb9fd29d187ad176 +$(DL_FILE)_MD5 = 76f6978f18cac41f269a346a5d0f1052
install : $(TARGET)
@@ -73,6 +73,5 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) cd $(DIR_APP) && make clean cd $(DIR_APP) && make all $(MAKETUNING) $(EXTRA_MAKE) cd $(DIR_APP) && make install - cp -f $(DIR_APP)/device_reference.txt /etc/usb_modeswitch.setup.example @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/lfs/usb_modeswitch_data b/lfs/usb_modeswitch_data index f322080..486aa2d 100644 --- a/lfs/usb_modeswitch_data +++ b/lfs/usb_modeswitch_data @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2010 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2011 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -24,7 +24,7 @@
include Config
-VER = 20101222 +VER = 20110805
THISAPP = usb-modeswitch-data-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = e386386bc389c2a8184c7ea4136fde0e +$(DL_FILE)_MD5 = 0ed8a28f8efd3177a128ecd46fc8bf9f
install : $(TARGET)
@@ -70,6 +70,8 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) + # don't reload udev rules + cd $(DIR_APP) && sed -i -e "s|/issue|&-off|g" Makefile cd $(DIR_APP) && make clean cd $(DIR_APP) && make all $(MAKETUNING) $(EXTRA_MAKE) cd $(DIR_APP) && make install diff --git a/lfs/xen-image b/lfs/xen-image index caef972..1b123a7 100644 --- a/lfs/xen-image +++ b/lfs/xen-image @@ -155,10 +155,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) sed -i -e "s|^thermal|#thermal|g" $(MNThdd)/etc/sysconfig/modules sed -i -e "s|^video|#video|g" $(MNThdd)/etc/sysconfig/modules
- #Change pakfire trunk - sed -i -e "s|$(VERSION)|$(VERSION)-xen|g" \ - $(MNThdd)/opt/pakfire/etc/pakfire.conf - #Copy initramdisk, kernel and config #cp -f $(MNThdd)/boot/ipfirerd-$(KVER)-xen.img \ # /install/images/$(SNAME)/boot diff --git a/make.sh b/make.sh index 82a671a..3743867 100755 --- a/make.sh +++ b/make.sh @@ -24,7 +24,7 @@
NAME="IPFire" # Software name SNAME="ipfire" # Short name -VERSION="2.9" # Version number +VERSION="2.11" # Version number CORE="53" # Core Level (Filename) PAKFIRE_CORE="52" # Core Level (PAKFIRE) GIT_BRANCH=`git status | head -n1 | cut -d" " -f4` # Git Branch @@ -278,6 +278,7 @@ buildtoolchain() { lfsmake1 tar lfsmake1 texinfo lfsmake1 util-linux + lfsmake1 strip lfsmake1 cleanup-toolchain PASS=2 export PATH=$ORG_PATH } @@ -537,7 +538,6 @@ buildipfire() { ipfiremake wireless ipfiremake libsafe ipfiremake pakfire - ipfiremake java ipfiremake spandsp ipfiremake lzo ipfiremake openvpn @@ -693,8 +693,7 @@ buildipfire() { ipfiremake python-m2crypto ipfiremake wireless-regdb ipfiremake crda - ipfiremake libsatsolver - ipfiremake python-satsolver + ipfiremake libsolv ipfiremake python-distutils-extra ipfiremake python-lzma ipfiremake python-progressbar @@ -823,7 +822,7 @@ ipfirepackages() { case "$1" in build) clear - PACKAGE=`ls -v -r $BASEDIR/cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE.tar.gz 2> /dev/null | head -n 1` + PACKAGE=`ls -v -r $BASEDIR/cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$MACHINE.tar.gz 2> /dev/null | head -n 1` #only restore on a clean disk if [ ! -f log/cleanup-toolchain-2-tools ]; then if [ ! -n "$PACKAGE" ]; then @@ -953,27 +952,27 @@ toolchain) prepareenv beautify build_stage "Toolchain compilation - Native GCC: `gcc --version | grep GCC | awk {'print $3'}`" buildtoolchain - echo "`date -u '+%b %e %T'`: Create toolchain tar.gz for $BUILDMACHINE" | tee -a $LOGFILE + echo "`date -u '+%b %e %T'`: Create toolchain tar.gz for $MACHINE" | tee -a $LOGFILE test -d $BASEDIR/cache/toolchains || mkdir -p $BASEDIR/cache/toolchains - cd $BASEDIR && tar -zc --exclude='log/_build.*.log' -f cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE.tar.gz \ + cd $BASEDIR && tar -zc --exclude='log/_build.*.log' -f cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$MACHINE.tar.gz \ build/{bin,etc,usr/bin,usr/local} \ build/tools/{bin,etc,*-linux-gnu,include,lib,libexec,sbin,share,var} \ log >> $LOGFILE - md5sum cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE.tar.gz \ - > cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE.md5 + md5sum cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$MACHINE.tar.gz \ + > cache/toolchains/$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$MACHINE.md5 stdumount ;; gettoolchain) # arbitrary name to be updated in case of new toolchain package upload - PACKAGE=$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$BUILDMACHINE + PACKAGE=$SNAME-$VERSION-toolchain-$TOOLCHAINVER-$MACHINE if [ ! -f $BASEDIR/cache/toolchains/$PACKAGE.tar.gz ]; then URL_TOOLCHAIN=`grep URL_TOOLCHAIN lfs/Config | awk '{ print $3 }'` test -d $BASEDIR/cache/toolchains || mkdir -p $BASEDIR/cache/toolchains - echo "`date -u '+%b %e %T'`: Load toolchain tar.gz for $BUILDMACHINE" | tee -a $LOGFILE + echo "`date -u '+%b %e %T'`: Load toolchain tar.gz for $MACHINE" | tee -a $LOGFILE cd $BASEDIR/cache/toolchains wget -U "IPFireSourceGrabber/2.x" $URL_TOOLCHAIN/$PACKAGE.tar.gz $URL_TOOLCHAIN/$PACKAGE.md5 >& /dev/null if [ $? -ne 0 ]; then - echo "`date -u '+%b %e %T'`: error downloading $PACKAGE toolchain for $BUILDMACHINE machine" | tee -a $LOGFILE + echo "`date -u '+%b %e %T'`: error downloading $PACKAGE toolchain for $MACHINE machine" | tee -a $LOGFILE else if [ "`md5sum $PACKAGE.tar.gz | awk '{print $1}'`" = "`cat $PACKAGE.md5 | awk '{print $1}'`" ]; then echo "`date -u '+%b %e %T'`: toolchain md5 ok" | tee -a $LOGFILE diff --git a/src/initscripts/init.d/network b/src/initscripts/init.d/network index 7f27a65..5542214 100644 --- a/src/initscripts/init.d/network +++ b/src/initscripts/init.d/network @@ -51,6 +51,7 @@ init_networking() { fi
/etc/rc.d/init.d/dnsmasq start + /etc/rc.d/init.d/static-routes start }
DO="${1}" diff --git a/src/initscripts/init.d/networking/red b/src/initscripts/init.d/networking/red index 1e4af55..2b342c8 100644 --- a/src/initscripts/init.d/networking/red +++ b/src/initscripts/init.d/networking/red @@ -458,7 +458,7 @@ case "${1}" in PPP_STD_OPTIONS+=" default-asyncmap hide-password nodetach mtu ${MTU}" PPP_STD_OPTIONS+=" mru ${MRU} noaccomp nodeflate nopcomp novj novjccomp" PPP_STD_OPTIONS+=" nobsdcomp user ${USERNAME} lcp-echo-interval 20" - PPP_STD_OPTIONS+=" lcp-echo-failure 3 ${AUTH}" + PPP_STD_OPTIONS+=" lcp-echo-failure 5 ${AUTH}" ### Debugging # diff --git a/src/initscripts/init.d/networking/red.down/10-ovpn b/src/initscripts/init.d/networking/red.down/10-ovpn index 59e95ad..948d7b2 100644 --- a/src/initscripts/init.d/networking/red.down/10-ovpn +++ b/src/initscripts/init.d/networking/red.down/10-ovpn @@ -1,5 +1,6 @@ #!/bin/bash
/usr/local/bin/openvpnctrl -k & +/usr/local/bin/openvpnctrl -kn2n &
exit 0 diff --git a/src/initscripts/init.d/networking/red.up/50-ovpn b/src/initscripts/init.d/networking/red.up/50-ovpn index a53b920..f3db648 100644 --- a/src/initscripts/init.d/networking/red.up/50-ovpn +++ b/src/initscripts/init.d/networking/red.up/50-ovpn @@ -1,5 +1,6 @@ #!/bin/bash
/usr/local/bin/openvpnctrl -s > /dev/null 2>&1 +/usr/local/bin/openvpnctrl -sn2n > /dev/null 2>&1
exit 0 diff --git a/src/initscripts/init.d/static-routes b/src/initscripts/init.d/static-routes new file mode 100644 index 0000000..940a7b4 --- /dev/null +++ b/src/initscripts/init.d/static-routes @@ -0,0 +1,67 @@ +#!/bin/bash + +. /etc/sysconfig/rc +. ${rc_functions} + + +function init_table() { + # Check if table does already exist. If not we add it. + if (ip rule | grep -q "static" >/dev/null 2>&1); then + return + fi + + ip rule add table static +} + +function create_all_routes() { + local file=${1} + shift + + # Remote all routes. + ip route flush table static >/dev/null 2>&1 + + local status + local network + local gateway + local remark + + # Read all routes from the configuration file and add the enabled ones + # immediately. + while IFS=, read status network gateway remark; do + [ "${status}" = "on" ] || continue + + if [ -z "${network}" -o -z "${gateway}" ]; then + # Silently skipping invalid routes. + continue + fi + + ip route add ${network} via ${gateway} table static proto static + done < ${file} +} + +CONFIGFILE="/var/ipfire/main/routing" + +case "${1}" in + start) + boot_mesg "Adding static routes..." + + # First, initialize the table + init_table + + # Add all routes + create_all_routes ${CONFIGFILE} + + evaluate_retval + ;; + + stop) + boot_mesg "Removing static routes..." + ip route flush table static >/dev/null 2>&1 + evaluate_retval + ;; + + *) + echo "Usage: ${0} {start|stop}" + exit 1 + ;; +esac diff --git a/src/misc-progs/Makefile b/src/misc-progs/Makefile index 348f91c..9f1e3f0 100644 --- a/src/misc-progs/Makefile +++ b/src/misc-progs/Makefile @@ -32,7 +32,7 @@ SUID_PROGS = setdmzholes setportfw setxtaccess \ wirelessctrl getipstat getiptstate qosctrl launch-ether-wake \ redctrl syslogdctrl extrahdctrl sambactrl upnpctrl tripwirectrl \ smartctrl clamavctrl addonctrl pakfire mpfirectrl wlanapctrl \ - setaliases urlfilterctrl updxlratorctrl fireinfoctrl + setaliases urlfilterctrl updxlratorctrl fireinfoctrl rebuildroutes SUID_UPDX = updxsetperms
install : all @@ -158,3 +158,5 @@ updxsetperms: updxsetperms.c setuid.o ../install+setup/libsmooth/varval.o fireinfoctrl: fireinfoctrl.c setuid.o ../install+setup/libsmooth/varval.o $(COMPILE) -I../install+setup/libsmooth/ fireinfoctrl.c setuid.o ../install+setup/libsmooth/varval.o -o $@
+rebuildroutes: rebuildroutes.c setuid.o ../install+setup/libsmooth/varval.o + $(COMPILE) -I../install+setup/libsmooth/ rebuildroutes.c setuid.o ../install+setup/libsmooth/varval.o -o $@ diff --git a/src/misc-progs/ipsecctrl.c b/src/misc-progs/ipsecctrl.c index 51f6b5a..0b05177 100644 --- a/src/misc-progs/ipsecctrl.c +++ b/src/misc-progs/ipsecctrl.c @@ -59,9 +59,9 @@ void open_physical (char *interface, int nat_traversal_port) { // safe_system(str); // IKE
- sprintf(str, "/sbin/iptables -D IPSECINPUT -p udp -i %s --sport 500 --dport 500 -j ACCEPT >/dev/null 2>&1", interface); + sprintf(str, "/sbin/iptables -D IPSECINPUT -p udp -i %s --dport 500 -j ACCEPT >/dev/null 2>&1", interface); safe_system(str); - sprintf(str, "/sbin/iptables -A IPSECINPUT -p udp -i %s --sport 500 --dport 500 -j ACCEPT", interface); + sprintf(str, "/sbin/iptables -A IPSECINPUT -p udp -i %s --dport 500 -j ACCEPT", interface); safe_system(str);
if (! nat_traversal_port) @@ -142,10 +142,42 @@ int decode_line (char *s, */ void turn_connection_on (char *name, char *type) { /* - if you find a way to start a single connection without changing all add it - here. Change also vpn-watch. + Rename the connection and run ipsec update and rename it back to readd + a deleted connection. Because ipsec update ignores connection that have + not changed since last load. */ - safe_system("/etc/rc.d/init.d/ipsec restart >/dev/null"); + char command[STRING_SIZE]; + memset(command, 0, STRING_SIZE); + snprintf(command, STRING_SIZE - 1, + "sed -i -e 's|^conn %s$|conn %s-renamed|g' /var/ipfire/vpn/ipsec.conf >/dev/null", name, name); + safe_system(command); + + // Down and delete IKEv2 Tunnel before ipsec update + snprintf(command, STRING_SIZE - 1, + "/usr/sbin/ipsec stroke down %s >/dev/null", name); + safe_system(command); + snprintf(command, STRING_SIZE - 1, + "/usr/sbin/ipsec stroke delete %s >/dev/null", name); + safe_system(command); + + safe_system("/etc/rc.d/init.d/ipsec update >/dev/null"); + + sleep(1); + + // Back to original name + snprintf(command, STRING_SIZE - 1, + "sed -i -e 's|^conn %s-renamed$|conn %s|g' /var/ipfire/vpn/ipsec.conf >/dev/null", name, name); + safe_system(command); + + // Down and delete IKEv2 Tunnel before ipsec update + snprintf(command, STRING_SIZE - 1, + "/usr/sbin/ipsec stroke down %s-renamed >/dev/null", name); + safe_system(command); + snprintf(command, STRING_SIZE - 1, + "/usr/sbin/ipsec stroke delete %s-renamed >/dev/null", name); + safe_system(command); + + safe_system("/etc/rc.d/init.d/ipsec update >/dev/null"); } /* issue ipsec commmands to turn off connection 'name' @@ -156,7 +188,16 @@ void turn_connection_off (char *name) { snprintf(command, STRING_SIZE - 1, "/usr/sbin/ipsec whack --delete --name %s >/dev/null", name); safe_system(command); + snprintf(command, STRING_SIZE - 1, + "/usr/sbin/ipsec stroke down %s >/dev/null", name); + safe_system(command); + snprintf(command, STRING_SIZE - 1, + "/usr/sbin/ipsec stroke delete %s >/dev/null", name); + safe_system(command); + safe_system("/usr/sbin/ipsec whack --rereadall >/dev/null"); + safe_system("/usr/sbin/ipsec stroke rereadall >/dev/null"); + }
@@ -178,11 +219,13 @@ int main(int argc, char *argv[]) {
if (strcmp(argv[1], "I") == 0) { safe_system("/usr/sbin/ipsec whack --status"); + safe_system("/usr/sbin/ipsec stroke status"); exit(0); }
if (strcmp(argv[1], "R") == 0) { safe_system("/usr/sbin/ipsec whack --rereadall >/dev/null"); + safe_system("/usr/sbin/ipsec stroke rereadall >/dev/null"); exit(0); }
diff --git a/src/misc-progs/openvpnctrl.c b/src/misc-progs/openvpnctrl.c index 93aff3e..5207c24 100644 --- a/src/misc-progs/openvpnctrl.c +++ b/src/misc-progs/openvpnctrl.c @@ -1,3 +1,4 @@ +#include <signal.h> #include <stdio.h> #include <string.h> #include <unistd.h> @@ -24,7 +25,17 @@ char enableorange[STRING_SIZE] = "off"; char OVPNRED[STRING_SIZE] = "OVPN"; char OVPNBLUE[STRING_SIZE] = "OVPN_BLUE_"; char OVPNORANGE[STRING_SIZE] = "OVPN_ORANGE_"; -char WRAPPERVERSION[STRING_SIZE] = "2.0.1.6"; +char WRAPPERVERSION[STRING_SIZE] = "ipfire-2.2.1"; + +struct connection_struct { + char name[STRING_SIZE]; + char type[STRING_SIZE]; + char proto[STRING_SIZE]; + int port; + struct connection_struct *next; +}; + +typedef struct connection_struct connection;
void exithandler(void) { @@ -37,9 +48,9 @@ void exithandler(void) void usage(void) { #ifdef ovpndebug - printf("Wrapper for OpenVPN v%s-debug\n", WRAPPERVERSION); + printf("Wrapper for OpenVPN %s-debug\n", WRAPPERVERSION); #else - printf("Wrapper for OpenVPN v%s\n", WRAPPERVERSION); + printf("Wrapper for OpenVPN %s\n", WRAPPERVERSION); #endif printf("openvpnctrl <option>\n"); printf(" Valid options are:\n"); @@ -49,6 +60,12 @@ void usage(void) printf(" kills/stops OpenVPN\n"); printf(" -r --restart\n"); printf(" restarts OpenVPN (implicitly creates chains and firewall rules)\n"); + printf(" -sn2n --start-net-2-net\n"); + printf(" starts all net2net connections\n"); + printf(" you may pass a connection name to the switch to only start a specific one\n"); + printf(" -kn2n --kill-net-2-net\n"); + printf(" kills all net2net connections\n"); + printf(" you may pass a connection name to the switch to only start a specific one\n"); printf(" -d --display\n"); printf(" displays OpenVPN status to syslog\n"); printf(" -fwr --firewall-rules\n"); @@ -62,6 +79,85 @@ void usage(void) exit(1); }
+connection *getConnections() { + FILE *fp = NULL; + + if (!(fp = fopen(CONFIG_ROOT "/ovpn/ovpnconfig", "r"))) { + fprintf(stderr, "Could not open openvpn n2n configuration file.\n"); + exit(1); + } + + char line[STRING_SIZE] = ""; + char result[STRING_SIZE] = ""; + char *resultptr; + int count; + connection *conn_first = NULL; + connection *conn_last = NULL; + connection *conn_curr; + + while ((fgets(line, STRING_SIZE, fp) != NULL)) { + if (line[strlen(line) - 1] == '\n') + line[strlen(line) - 1] = '\0'; + + conn_curr = (connection *)malloc(sizeof(connection)); + memset(conn_curr, 0, sizeof(connection)); + + if (conn_first == NULL) { + conn_first = conn_curr; + } else { + conn_last->next = conn_curr; + } + conn_last = conn_curr; + + count = 0; + char *lineptr = &line; + while (1) { + if (*lineptr == NULL) + break; + + resultptr = result; + while (*lineptr != NULL) { + if (*lineptr == ',') { + lineptr++; + break; + } + *resultptr++ = *lineptr++; + } + *resultptr = '\0'; + + if (count == 2) { + strcpy(conn_curr->name, result); + } else if (count == 4) { + strcpy(conn_curr->type, result); + } else if (count == 29) { + strcpy(conn_curr->proto, result); + } else if (count == 30) { + conn_curr->port = atoi(result); + } + + count++; + } + } + + fclose(fp); + + return conn_first; +} + +int readPidFile(const char *pidfile) { + FILE *fp = fopen(pidfile, "r"); + if (fp == NULL) { + fprintf(stderr, "PID file not found: '%s'\n", pidfile); + exit(1); + } + + int pid = 0; + fscanf(fp, "%d", &pid); + fclose(fp); + + return pid; +} + void ovpnInit(void) { // Read OpenVPN configuration @@ -139,7 +235,7 @@ void executeCommand(char *command) { void setChainRules(char *chain, char *interface, char *protocol, char *port) { char str[STRING_SIZE]; - + sprintf(str, "/sbin/iptables -A %sINPUT -i %s -p %s --dport %s -j ACCEPT", chain, interface, protocol, port); executeCommand(str); sprintf(str, "/sbin/iptables -A %sINPUT -i tun+ -j ACCEPT", chain); @@ -208,39 +304,34 @@ void createChain(char *chain) { }
void createAllChains(void) { - if (!((strcmp(enablered, "on")==0) || (strcmp(enableblue, "on")==0) || (strcmp(enableorange, "on")==0))){ - fprintf(stderr, "OpenVPN is not enabled on any interface\n"); - exit(1); - } else { - // create chain and chain references - if (!strcmp(enableorange, "on")) { - if (strlen(orangeif)) { - createChain(OVPNORANGE); - createChainReference(OVPNORANGE); - } else { - fprintf(stderr, "OpenVPN enabled on orange but no orange interface found\n"); - //exit(1); - } + // create chain and chain references + if (!strcmp(enableorange, "on")) { + if (strlen(orangeif)) { + createChain(OVPNORANGE); + createChainReference(OVPNORANGE); + } else { + fprintf(stderr, "OpenVPN enabled on orange but no orange interface found\n"); + //exit(1); } - - if (!strcmp(enableblue, "on")) { - if (strlen(blueif)) { - createChain(OVPNBLUE); - createChainReference(OVPNBLUE); - } else { - fprintf(stderr, "OpenVPN enabled on blue but no blue interface found\n"); - //exit(1); - } + } + + if (!strcmp(enableblue, "on")) { + if (strlen(blueif)) { + createChain(OVPNBLUE); + createChainReference(OVPNBLUE); + } else { + fprintf(stderr, "OpenVPN enabled on blue but no blue interface found\n"); + //exit(1); } - - if (!strcmp(enablered, "on")) { - if (strlen(redif)) { - createChain(OVPNRED); - createChainReference(OVPNRED); - } else { - fprintf(stderr, "OpenVPN enabled on red but no red interface found\n"); - //exit(1); - } + } + + if (!strcmp(enablered, "on")) { + if (strlen(redif)) { + createChain(OVPNRED); + createChainReference(OVPNRED); + } else { + fprintf(stderr, "OpenVPN enabled on red but no red interface found\n"); + //exit(1); } } } @@ -250,12 +341,6 @@ void setFirewallRules(void) { char dport[STRING_SIZE] = ""; char dovpnip[STRING_SIZE] = "";
- /* check if it makes sence to proceed further */ - if (!((strcmp(enablered, "on")==0) || (strcmp(enableblue, "on")==0) || (strcmp(enableorange, "on")==0))){ - fprintf(stderr, "Config error, at least one device must be enabled\n"); - exit(1); - } - kv = initkeyvalues(); if (!readkeyvalues(kv, CONFIG_ROOT "/ovpn/settings")) { @@ -280,6 +365,11 @@ void setFirewallRules(void) { } freekeyvalues(kv);
+ // Flush all chains. + flushChain(OVPNRED); + flushChain(OVPNBLUE); + flushChain(OVPNORANGE); + // set firewall rules if (!strcmp(enablered, "on") && strlen(redif)) setChainRules(OVPNRED, redif, protocol, dport); @@ -287,17 +377,36 @@ void setFirewallRules(void) { setChainRules(OVPNBLUE, blueif, protocol, dport); if (!strcmp(enableorange, "on") && strlen(orangeif)) setChainRules(OVPNORANGE, orangeif, protocol, dport); + + // read connection configuration + connection *conn = getConnections(); + + // set firewall rules for n2n connections + char command[STRING_SIZE]; + while (conn != NULL) { + if (strcmp(conn->type, "net") == 0) { + sprintf(command, "/sbin/iptables -A %sINPUT -i %s -p %s --dport %d -j ACCEPT", + OVPNRED, redif, conn->proto, conn->port); + executeCommand(command); + } + + conn = conn->next; + } }
void stopDaemon(void) { char command[STRING_SIZE];
- snprintf(command, STRING_SIZE - 1, "/bin/killall openvpn"); - executeCommand(command); + int pid = readPidFile("/var/run/openvpn.pid"); + if (!pid > 0) { + exit(1); + } + + fprintf(stderr, "Killing PID %d.\n", pid); + kill(pid, SIGTERM); + snprintf(command, STRING_SIZE - 1, "/bin/rm -f /var/run/openvpn.pid"); executeCommand(command); - snprintf(command, STRING_SIZE-1, "/sbin/modprobe -r tun"); - executeCommand(command); }
void startDaemon(void) { @@ -314,6 +423,106 @@ void startDaemon(void) { } }
+void startNet2Net(char *name) { + connection *conn = NULL; + connection *conn_iter; + + conn_iter = getConnections(); + + while (conn_iter) { + if ((strcmp(conn_iter->type, "net") == 0) && (strcmp(conn_iter->name, name) == 0)) { + conn = conn_iter; + break; + } + conn_iter = conn_iter->next; + } + + if (conn == NULL) { + fprintf(stderr, "Connection not found.\n"); + exit(1); + } + + char configfile[STRING_SIZE]; + snprintf(configfile, STRING_SIZE - 1, CONFIG_ROOT "/ovpn/n2nconf/%s/%s.conf", + conn->name, conn->name); + + FILE *fp = fopen(configfile, "r"); + if (fp == NULL) { + fprintf(stderr, "Could not find configuration file for connection '%s' at '%s'.\n", + conn->name, configfile); + exit(2); + } + fclose(fp); + + // Make sure all firewall rules are up to date. + setFirewallRules(); + + char command[STRING_SIZE]; + snprintf(command, STRING_SIZE-1, "/sbin/modprobe tun"); + executeCommand(command); + snprintf(command, STRING_SIZE-1, "/usr/sbin/openvpn --config %s", configfile); + executeCommand(command); +} + +void killNet2Net(char *name) { + connection *conn = NULL; + connection *conn_iter; + + conn_iter = getConnections(); + + while (conn_iter) { + if (strcmp(conn_iter->name, name) == 0) { + conn = conn_iter; + break; + } + conn_iter = conn_iter->next; + } + + if (conn == NULL) { + fprintf(stderr, "Connection not found.\n"); + exit(1); + } + + char pidfile[STRING_SIZE]; + snprintf(pidfile, STRING_SIZE - 1, "/var/run/%sn2n.pid", conn->name); + + int pid = readPidFile(pidfile); + if (!pid > 0) { + exit(1); + } + + fprintf(stderr, "Killing PID %d.\n", pid); + kill(pid, SIGTERM); + + char command[STRING_SIZE]; + snprintf(command, STRING_SIZE - 1, "/bin/rm -f %s", pidfile); + executeCommand(command); + + exit(0); +} + +void startAllNet2Net() { + connection *conn = getConnections(); + + while(conn) { + startNet2Net(conn->name); + conn = conn->next; + } + + exit(0); +} + +void killAllNet2Net() { + connection *conn = getConnections(); + + while(conn) { + killNet2Net(conn->name); + conn = conn->next; + } + + exit(0); +} + void displayopenvpn(void) { char command[STRING_SIZE];
@@ -326,8 +535,23 @@ int main(int argc, char *argv[]) { exit(1); if(argc < 2) usage(); - - if(argc == 2) { + + if(argc == 3) { + ovpnInit(); + + if( (strcmp(argv[1], "-sn2n") == 0) || (strcmp(argv[1], "--start-net-2-net") == 0) ) { + startNet2Net(argv[2]); + return 0; + } + else if( (strcmp(argv[1], "-kn2n") == 0) || (strcmp(argv[1], "--kill-net-2-net") == 0) ) { + killNet2Net(argv[2]); + return 0; + } else { + usage(); + return 1; + } + } + else if(argc == 2) { if( (strcmp(argv[1], "-k") == 0) || (strcmp(argv[1], "--kill") == 0) ) { stopDaemon(); return 0; @@ -350,6 +574,14 @@ int main(int argc, char *argv[]) { startDaemon(); return 0; } + else if( (strcmp(argv[1], "-sn2n") == 0) || (strcmp(argv[1], "--start-net-2-net") == 0) ) { + startAllNet2Net(); + return 0; + } + else if( (strcmp(argv[1], "-kn2n") == 0) || (strcmp(argv[1], "--kill-net-2-net") == 0) ) { + killAllNet2Net(); + return 0; + } else if( (strcmp(argv[1], "-sdo") == 0) || (strcmp(argv[1], "--start-daemon-only") == 0) ) { startDaemon(); return 0; diff --git a/src/misc-progs/rebuildroutes.c b/src/misc-progs/rebuildroutes.c new file mode 100644 index 0000000..3655692 --- /dev/null +++ b/src/misc-progs/rebuildroutes.c @@ -0,0 +1,17 @@ +/* IPFire helper program - rebuildroutes + * + * This program is distributed under the terms of the GNU General Public + * Licence. See the file COPYING for details. + */ + +#include "libsmooth.h" +#include "setuid.h" + +int main(int argc, char *argv[]) { + if (!(initsetuid())) + exit(1); + + safe_system("/etc/init.d/static-routes start >/dev/null 2>&1"); + + return 0; +} diff --git a/src/pakfire/pakfire.conf b/src/pakfire/pakfire.conf index ae174af..7e7b8d5 100644 --- a/src/pakfire/pakfire.conf +++ b/src/pakfire/pakfire.conf @@ -2,7 +2,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2010 IPFire Team info@ipfire.org # +# Copyright (C) 2011 IPFire Team info@ipfire.org # # # # This program is free software: you can redistribute it and/or modify # # it under the terms of the GNU General Public License as published by # @@ -21,7 +21,7 @@
package Conf;
-$version = "2.9"; +$version = "2.11";
$mainserver = "pakfire.ipfire.org";
diff --git a/src/patches/binutils-2.18-configure-1.patch b/src/patches/binutils-2.18-configure-1.patch new file mode 100644 index 0000000..ae6aaa3 --- /dev/null +++ b/src/patches/binutils-2.18-configure-1.patch @@ -0,0 +1,19 @@ +Submitted By: Matt Burgess (matthew at linuxfromscratch dot org) +Date: 2007-11-19 +Initial Package Version: 2.18 +Origin: Upstream (http://sourceware.org/cgi-bin/cvsweb.cgi/src/configure.diff?r1=1.268&r2=...) +Upstream Status: Applied +Description: Fixes the configure script to correctly dictate Texinfo > 4.9. + +diff -Naur binutils-2.18.orig/configure binutils-2.18/configure +--- binutils-2.18.orig/configure 2007-08-06 20:29:40.000000000 +0000 ++++ binutils-2.18/configure 2007-11-18 22:37:58.000000000 +0000 +@@ -6128,7 +6128,7 @@ + # For an installed makeinfo, we require it to be from texinfo 4.4 or + # higher, else we use the "missing" dummy. + if ${MAKEINFO} --version \ +- | egrep 'texinfo[^0-9]*([1-3][0-9]|4.[4-9]|[5-9])' >/dev/null 2>&1; then ++ | egrep 'texinfo[^0-9]*(4.([4-9]|[1-9][0-9])|[5-9]|[1-9][0-9])' >/dev/null 2>&1; then + : + else + MAKEINFO="$MISSING makeinfo" diff --git a/src/patches/ccache-3.1-no_compiler_mtime.patch b/src/patches/ccache-3.1-no_compiler_mtime.patch deleted file mode 100644 index fd921cd..0000000 --- a/src/patches/ccache-3.1-no_compiler_mtime.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -Naur ccache-3.1.org/ccache.c ccache-3.1/ccache.c ---- ccache-3.1.org/ccache.c 2010-09-16 19:01:09.000000000 +0200 -+++ ccache-3.1/ccache.c 2010-10-21 21:41:08.000000000 +0200 -@@ -805,13 +805,16 @@ - */ - compilercheck = getenv("CCACHE_COMPILERCHECK"); - if (!compilercheck) { -- compilercheck = "mtime"; -+ compilercheck = "size"; - } - if (str_eq(compilercheck, "none")) { - /* Do nothing. */ - } else if (str_eq(compilercheck, "content")) { - hash_delimiter(hash, "cc_content"); - hash_file(hash, args->argv[0]); -+ } else if (str_eq(compilercheck, "size")) { -+ hash_delimiter(hash, "cc_size"); -+ hash_int(hash, st.st_size); - } else if (str_eq(compilercheck, "mtime")) { - hash_delimiter(hash, "cc_mtime"); - hash_int(hash, st.st_size); diff --git a/src/patches/ccache-3.1.6-no_compiler_mtime.patch b/src/patches/ccache-3.1.6-no_compiler_mtime.patch new file mode 100644 index 0000000..fd921cd --- /dev/null +++ b/src/patches/ccache-3.1.6-no_compiler_mtime.patch @@ -0,0 +1,21 @@ +diff -Naur ccache-3.1.org/ccache.c ccache-3.1/ccache.c +--- ccache-3.1.org/ccache.c 2010-09-16 19:01:09.000000000 +0200 ++++ ccache-3.1/ccache.c 2010-10-21 21:41:08.000000000 +0200 +@@ -805,13 +805,16 @@ + */ + compilercheck = getenv("CCACHE_COMPILERCHECK"); + if (!compilercheck) { +- compilercheck = "mtime"; ++ compilercheck = "size"; + } + if (str_eq(compilercheck, "none")) { + /* Do nothing. */ + } else if (str_eq(compilercheck, "content")) { + hash_delimiter(hash, "cc_content"); + hash_file(hash, args->argv[0]); ++ } else if (str_eq(compilercheck, "size")) { ++ hash_delimiter(hash, "cc_size"); ++ hash_int(hash, st.st_size); + } else if (str_eq(compilercheck, "mtime")) { + hash_delimiter(hash, "cc_mtime"); + hash_int(hash, st.st_size); diff --git a/src/patches/gcc-4.1.2-fix_linker_version_detection.patch b/src/patches/gcc-4.1.2-fix_linker_version_detection.patch new file mode 100644 index 0000000..c2f43be --- /dev/null +++ b/src/patches/gcc-4.1.2-fix_linker_version_detection.patch @@ -0,0 +1,12 @@ +diff -Naur gcc-4.1.2.org/libstdc++-v3/configure gcc-4.1.2/libstdc++-v3/configure +--- gcc-4.1.2.org/libstdc++-v3/configure 2007-01-29 11:51:01.000000000 +0100 ++++ gcc-4.1.2/libstdc++-v3/configure 2011-08-29 19:25:22.973430586 +0200 +@@ -8281,7 +8281,7 @@ + if test x"$with_gnu_ld" = x"yes"; then + + ldver=`$LD --version 2>/dev/null | head -1 | \ +- sed -e 's/GNU ld version ([0-9.][0-9.]*).*/\1/'` ++ sed -e 's/GNU ld (GNU binutils) ([0-9.][0-9.]*).*/\1/'` + + glibcxx_gnu_ld_version=`echo $ldver | \ + $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'` diff --git a/src/patches/gcc-4.1.2-specs-1.patch b/src/patches/gcc-4.1.2-specs-1.patch new file mode 100644 index 0000000..16eef76 --- /dev/null +++ b/src/patches/gcc-4.1.2-specs-1.patch @@ -0,0 +1,337 @@ +Submitted By: Robert Connolly <robert at linuxfromscratch dot org> (ashes) +Date: 2006-02-17 +Initial Package Version: 4.1.0 +Upstream Status: Not Sent - LFS Specific +Origin: Idea originally developed by Ryan Oliver and Greg Schafer for + the Pure LFS project. + More architectures added by Zack Winkles. + Further fine tunings by Greg Schafer. + Modified for gcc 3.3.2 by Oliver Brakmann. + Rediffed against gcc 3.4.0 by Zack Winkles. + Rediffed against gcc 3.4.3 by Jim Gifford. + Rediffed against gcc 4.0.0 by Robert Connolly. + Rediffed against gcc 4.1.0 by Chris Staub +Description: This patch modifies the location of the dynamic linker for + the GCC Pass 2 build in LFS Chapter 5. + +diff -Naur gcc-4.1.0.orig/gcc/config/alpha/linux-elf.h gcc-4.1.0/gcc/config/alpha/linux-elf.h +--- gcc-4.1.0.orig/gcc/config/alpha/linux-elf.h 2005-06-24 21:22:41.000000000 -0400 ++++ gcc-4.1.0/gcc/config/alpha/linux-elf.h 2006-02-28 22:02:20.000000000 -0500 +@@ -27,7 +27,7 @@ + #define SUBTARGET_EXTRA_SPECS \ + { "elf_dynamic_linker", ELF_DYNAMIC_LINKER }, + +-#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2" ++#define ELF_DYNAMIC_LINKER "/tools/lib/ld-linux.so.2" + + #define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \ + %{O*:-O3} %{!O*:-O1} \ +diff -Naur gcc-4.1.0.orig/gcc/config/arm/linux-elf.h gcc-4.1.0/gcc/config/arm/linux-elf.h +--- gcc-4.1.0.orig/gcc/config/arm/linux-elf.h 2005-10-09 21:04:31.000000000 -0400 ++++ gcc-4.1.0/gcc/config/arm/linux-elf.h 2006-02-28 22:02:20.000000000 -0500 +@@ -51,7 +51,7 @@ + + #define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc" + +-#define LINUX_TARGET_INTERPRETER "/lib/ld-linux.so.2" ++#define LINUX_TARGET_INTERPRETER "/tools/lib/ld-linux.so.2" + + #define LINUX_TARGET_LINK_SPEC "%{h*} %{version:-v} \ + %{b} \ +diff -Naur gcc-4.1.0.orig/gcc/config/frv/linux.h gcc-4.1.0/gcc/config/frv/linux.h +--- gcc-4.1.0.orig/gcc/config/frv/linux.h 2005-06-24 21:22:41.000000000 -0400 ++++ gcc-4.1.0/gcc/config/frv/linux.h 2006-02-28 22:02:20.000000000 -0500 +@@ -41,7 +41,7 @@ + %{mfdpic: -m elf32frvfd -z text} %{shared} %{pie} \ + %{!shared: %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \ ++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}} \ + %{static}}" + + /* Support for compile-time default CPU. */ +diff -Naur gcc-4.1.0.orig/gcc/config/i386/gnu.h gcc-4.1.0/gcc/config/i386/gnu.h +--- gcc-4.1.0.orig/gcc/config/i386/gnu.h 2004-09-07 20:17:19.000000000 -0400 ++++ gcc-4.1.0/gcc/config/i386/gnu.h 2006-02-28 22:02:21.000000000 -0500 +@@ -27,7 +27,7 @@ + %{!shared: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib/ld.so}} \ ++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so}} \ + %{static:-static}}" + + #undef STARTFILE_SPEC +diff -Naur gcc-4.1.0.orig/gcc/config/i386/linux.h gcc-4.1.0/gcc/config/i386/linux.h +--- gcc-4.1.0.orig/gcc/config/i386/linux.h 2005-08-10 13:53:01.000000000 -0400 ++++ gcc-4.1.0/gcc/config/i386/linux.h 2006-02-28 22:02:21.000000000 -0500 +@@ -105,7 +105,7 @@ + /* If ELF is the default format, we should not use /lib/elf. */ + + #define LINK_EMULATION "elf_i386" +-#define DYNAMIC_LINKER "/lib/ld-linux.so.2" ++#define DYNAMIC_LINKER "/tools/lib/ld-linux.so.2" + + #undef SUBTARGET_EXTRA_SPECS + #define SUBTARGET_EXTRA_SPECS \ +diff -Naur gcc-4.1.0.orig/gcc/config/i386/linux64.h gcc-4.1.0/gcc/config/i386/linux64.h +--- gcc-4.1.0.orig/gcc/config/i386/linux64.h 2005-08-10 13:53:01.000000000 -0400 ++++ gcc-4.1.0/gcc/config/i386/linux64.h 2006-02-28 22:02:21.000000000 -0500 +@@ -60,8 +60,8 @@ + %{!shared: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{m32:%{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ +- %{!m32:%{!dynamic-linker:-dynamic-linker /lib64/ld-linux-x86-64.so.2}}} \ ++ %{m32:%{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \ ++ %{!m32:%{!dynamic-linker:-dynamic-linker /tools/lib64/ld-linux-x86-64.so.2}}} \ + %{static:-static}}" + + /* Similar to standard Linux, but adding -ffast-math support. */ +diff -Naur gcc-4.1.0.orig/gcc/config/ia64/linux.h gcc-4.1.0/gcc/config/ia64/linux.h +--- gcc-4.1.0.orig/gcc/config/ia64/linux.h 2004-09-07 20:17:19.000000000 -0400 ++++ gcc-4.1.0/gcc/config/ia64/linux.h 2006-02-28 22:02:21.000000000 -0500 +@@ -43,7 +43,7 @@ + %{!shared: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib/ld-linux-ia64.so.2}} \ ++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux-ia64.so.2}} \ + %{static:-static}}" + + +diff -Naur gcc-4.1.0.orig/gcc/config/linux.h gcc-4.1.0/gcc/config/linux.h +--- gcc-4.1.0.orig/gcc/config/linux.h 2005-08-06 09:26:35.000000000 -0400 ++++ gcc-4.1.0/gcc/config/linux.h 2006-02-28 22:02:21.000000000 -0500 +@@ -104,3 +104,7 @@ + #define TARGET_C99_FUNCTIONS 1 + + #define TARGET_POSIX_IO ++ ++/* Remove /usr/include from the end of the include search path. */ ++#undef STANDARD_INCLUDE_DIR ++#define STANDARD_INCLUDE_DIR 0 +diff -Naur gcc-4.1.0.orig/gcc/config/m32r/linux.h gcc-4.1.0/gcc/config/m32r/linux.h +--- gcc-4.1.0.orig/gcc/config/m32r/linux.h 2005-07-08 06:00:15.000000000 -0400 ++++ gcc-4.1.0/gcc/config/m32r/linux.h 2006-02-28 22:02:21.000000000 -0500 +@@ -66,7 +66,7 @@ + %{!ibcs: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ ++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \ + %{static:-static}}}" + #else + #define LINK_SPEC "%(link_cpu) -m m32relf_linux %{shared:-shared} \ +@@ -74,7 +74,7 @@ + %{!ibcs: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ ++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \ + %{static:-static}}}" + #endif + +diff -Naur gcc-4.1.0.orig/gcc/config/m68k/linux.h gcc-4.1.0/gcc/config/m68k/linux.h +--- gcc-4.1.0.orig/gcc/config/m68k/linux.h 2005-06-24 21:22:41.000000000 -0400 ++++ gcc-4.1.0/gcc/config/m68k/linux.h 2006-02-28 22:02:21.000000000 -0500 +@@ -128,7 +128,7 @@ + %{!shared: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker*:-dynamic-linker /lib/ld.so.1}} \ ++ %{!dynamic-linker*:-dynamic-linker /tools/lib/ld.so.1}} \ + %{static}}" + + /* For compatibility with linux/a.out */ +diff -Naur gcc-4.1.0.orig/gcc/config/mips/linux.h gcc-4.1.0/gcc/config/mips/linux.h +--- gcc-4.1.0.orig/gcc/config/mips/linux.h 2005-06-24 21:22:41.000000000 -0400 ++++ gcc-4.1.0/gcc/config/mips/linux.h 2006-02-28 22:02:21.000000000 -0500 +@@ -112,7 +112,7 @@ + %{!ibcs: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \ ++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}} \ + %{static:-static}}}" + + #undef SUBTARGET_ASM_SPEC +diff -Naur gcc-4.1.0.orig/gcc/config/mips/linux64.h gcc-4.1.0/gcc/config/mips/linux64.h +--- gcc-4.1.0.orig/gcc/config/mips/linux64.h 2005-06-24 21:22:41.000000000 -0400 ++++ gcc-4.1.0/gcc/config/mips/linux64.h 2006-02-28 22:02:21.000000000 -0500 +@@ -47,9 +47,9 @@ + %{!static: \ + %{rdynamic:-export-dynamic} \ + %{!dynamic-linker: \ +- %{mabi=n32: -dynamic-linker /lib32/ld.so.1} \ +- %{mabi=64: -dynamic-linker /lib64/ld.so.1} \ +- %{mabi=32: -dynamic-linker /lib/ld.so.1}}} \ ++ %{mabi=n32: -dynamic-linker /tools/lib32/ld.so.1} \ ++ %{mabi=64: -dynamic-linker /tools/lib64/ld.so.1} \ ++ %{mabi=32: -dynamic-linker /tools/lib/ld.so.1}}} \ + %{static:-static}}} \ + %{mabi=n32:-melf32%{EB:b}%{EL:l}tsmipn32} \ + %{mabi=64:-melf64%{EB:b}%{EL:l}tsmip} \ +diff -Naur gcc-4.1.0.orig/gcc/config/mn10300/linux.h gcc-4.1.0/gcc/config/mn10300/linux.h +--- gcc-4.1.0.orig/gcc/config/mn10300/linux.h 2005-06-24 21:22:41.000000000 -0400 ++++ gcc-4.1.0/gcc/config/mn10300/linux.h 2006-02-28 22:02:21.000000000 -0500 +@@ -37,7 +37,7 @@ + #define LINK_SPEC "%{mrelax:--relax} %{shared:-shared} \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \ ++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}} \ + %{static:-static}" + + #undef PROCESSOR_DEFAULT +diff -Naur gcc-4.1.0.orig/gcc/config/pa/pa-linux.h gcc-4.1.0/gcc/config/pa/pa-linux.h +--- gcc-4.1.0.orig/gcc/config/pa/pa-linux.h 2005-11-17 22:22:18.000000000 -0500 ++++ gcc-4.1.0/gcc/config/pa/pa-linux.h 2006-02-28 22:02:21.000000000 -0500 +@@ -55,7 +55,7 @@ + %{!shared: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \ ++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}} \ + %{static:-static}}" + + /* glibc's profiling functions don't need gcc to allocate counters. */ +diff -Naur gcc-4.1.0.orig/gcc/config/rs6000/linux64.h gcc-4.1.0/gcc/config/rs6000/linux64.h +--- gcc-4.1.0.orig/gcc/config/rs6000/linux64.h 2006-02-10 15:58:33.000000000 -0500 ++++ gcc-4.1.0/gcc/config/rs6000/linux64.h 2006-02-28 22:02:21.000000000 -0500 +@@ -339,11 +339,11 @@ + + #define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux %{!shared: %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}" ++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}}}" + + #define LINK_OS_LINUX_SPEC64 "-m elf64ppc %{!shared: %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib64/ld64.so.1}}}" ++ %{!dynamic-linker:-dynamic-linker /tools/lib64/ld64.so.1}}}" + + #undef TOC_SECTION_ASM_OP + #define TOC_SECTION_ASM_OP \ +diff -Naur gcc-4.1.0.orig/gcc/config/rs6000/sysv4.h gcc-4.1.0/gcc/config/rs6000/sysv4.h +--- gcc-4.1.0.orig/gcc/config/rs6000/sysv4.h 2006-02-10 15:58:33.000000000 -0500 ++++ gcc-4.1.0/gcc/config/rs6000/sysv4.h 2006-02-28 22:02:21.000000000 -0500 +@@ -1041,7 +1041,7 @@ + + #define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}" ++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}}}" + + #if defined(HAVE_LD_EH_FRAME_HDR) + # define LINK_EH_SPEC "%{!static:--eh-frame-hdr} " +@@ -1072,7 +1072,7 @@ + + #define LINK_OS_GNU_SPEC "-m elf32ppclinux %{!shared: %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}" ++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}}}" + + #define CPP_OS_GNU_SPEC "-D__unix__ -D__gnu_hurd__ -D__GNU__ \ + %{!undef: \ +diff -Naur gcc-4.1.0.orig/gcc/config/s390/linux.h gcc-4.1.0/gcc/config/s390/linux.h +--- gcc-4.1.0.orig/gcc/config/s390/linux.h 2006-02-11 03:38:51.000000000 -0500 ++++ gcc-4.1.0/gcc/config/s390/linux.h 2006-02-28 22:02:21.000000000 -0500 +@@ -86,8 +86,8 @@ + %{!static: \ + %{rdynamic:-export-dynamic} \ + %{!dynamic-linker: \ +- %{m31:-dynamic-linker /lib/ld.so.1} \ +- %{m64:-dynamic-linker /lib/ld64.so.1}}}}" ++ %{m31:-dynamic-linker /tools/lib/ld.so.1} \ ++ %{m64:-dynamic-linker /tools/lib/ld64.so.1}}}}" + + + #define TARGET_ASM_FILE_END file_end_indicate_exec_stack +diff -Naur gcc-4.1.0.orig/gcc/config/sh/linux.h gcc-4.1.0/gcc/config/sh/linux.h +--- gcc-4.1.0.orig/gcc/config/sh/linux.h 2005-06-24 21:22:41.000000000 -0400 ++++ gcc-4.1.0/gcc/config/sh/linux.h 2006-02-28 22:02:21.000000000 -0500 +@@ -60,7 +60,7 @@ + "%{shared:-shared} \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ ++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \ + %{static:-static}" + + /* Output assembler code to STREAM to call the profiler. */ +diff -Naur gcc-4.1.0.orig/gcc/config/sparc/linux.h gcc-4.1.0/gcc/config/sparc/linux.h +--- gcc-4.1.0.orig/gcc/config/sparc/linux.h 2006-02-11 03:38:51.000000000 -0500 ++++ gcc-4.1.0/gcc/config/sparc/linux.h 2006-02-28 22:02:21.000000000 -0500 +@@ -126,13 +126,13 @@ + /* If ELF is the default format, we should not use /lib/elf. */ + + #undef LINK_SPEC +-#define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \ ++#define LINK_SPEC "-m elf32_sparc -Y P,/tools/lib %{shared:-shared} \ + %{!mno-relax:%{!r:-relax}} \ + %{!shared: \ + %{!ibcs: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ ++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \ + %{static:-static}}}" + + /* The sun bundled assembler doesn't accept -Yd, (and neither does gas). +diff -Naur gcc-4.1.0.orig/gcc/config/sparc/linux64.h gcc-4.1.0/gcc/config/sparc/linux64.h +--- gcc-4.1.0.orig/gcc/config/sparc/linux64.h 2006-02-11 03:38:51.000000000 -0500 ++++ gcc-4.1.0/gcc/config/sparc/linux64.h 2006-02-28 22:02:21.000000000 -0500 +@@ -162,21 +162,21 @@ + { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \ + { "link_arch", LINK_ARCH_SPEC }, + +-#define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \ ++#define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,/tools/lib %{shared:-shared} \ + %{!shared: \ + %{!ibcs: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \ ++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \ + %{static:-static}}} \ + " + +-#define LINK_ARCH64_SPEC "-m elf64_sparc -Y P,/usr/lib64 %{shared:-shared} \ ++#define LINK_ARCH64_SPEC "-m elf64_sparc -Y P,/tools/lib64 %{shared:-shared} \ + %{!shared: \ + %{!ibcs: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib64/ld-linux.so.2}} \ ++ %{!dynamic-linker:-dynamic-linker /tools/lib64/ld-linux.so.2}} \ + %{static:-static}}} \ + " + +@@ -252,12 +252,12 @@ + #else /* !SPARC_BI_ARCH */ + + #undef LINK_SPEC +-#define LINK_SPEC "-m elf64_sparc -Y P,/usr/lib64 %{shared:-shared} \ ++#define LINK_SPEC "-m elf64_sparc -Y P,/tools/lib64 %{shared:-shared} \ + %{!shared: \ + %{!ibcs: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib64/ld-linux.so.2}} \ ++ %{!dynamic-linker:-dynamic-linker /tools/lib64/ld-linux.so.2}} \ + %{static:-static}}} \ + %{mlittle-endian:-EL} \ + %{!mno-relax:%{!r:-relax}} \ +diff -Naur gcc-4.1.0.orig/gcc/config/xtensa/linux.h gcc-4.1.0/gcc/config/xtensa/linux.h +--- gcc-4.1.0.orig/gcc/config/xtensa/linux.h 2005-06-24 21:22:41.000000000 -0400 ++++ gcc-4.1.0/gcc/config/xtensa/linux.h 2006-02-28 22:02:21.000000000 -0500 +@@ -50,7 +50,7 @@ + %{!ibcs: \ + %{!static: \ + %{rdynamic:-export-dynamic} \ +- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \ ++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}} \ + %{static:-static}}}" + + #undef LOCAL_LABEL_PREFIX diff --git a/src/patches/kvm-kmod-3.0b_remove_pvclock_scale_delta_redefinition.patch b/src/patches/kvm-kmod-3.0b_remove_pvclock_scale_delta_redefinition.patch new file mode 100644 index 0000000..87effb3 --- /dev/null +++ b/src/patches/kvm-kmod-3.0b_remove_pvclock_scale_delta_redefinition.patch @@ -0,0 +1,12 @@ +diff -Naur kvm-kmod-3.0b.org/x86/external-module-compat.h kvm-kmod-3.0b/x86/external-module-compat.h +--- kvm-kmod-3.0b.org/x86/external-module-compat.h 2011-07-23 16:39:10.000000000 +0200 ++++ kvm-kmod-3.0b/x86/external-module-compat.h 2011-08-13 21:37:56.046677541 +0200 +@@ -1095,7 +1095,7 @@ + + #endif /* >= 2.6.36 */ + +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,37) || \ ++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,37) && \ + (LINUX_VERSION_CODE == KERNEL_VERSION(2,6,32) && KERNEL_EXTRAVERSION < 40) + static inline u64 pvclock_scale_delta(u64 delta, u32 mul_frac, int shift) + { diff --git a/src/patches/libsatsolver-Build-only-libraries.patch b/src/patches/libsatsolver-Build-only-libraries.patch deleted file mode 100644 index 47e24e4..0000000 --- a/src/patches/libsatsolver-Build-only-libraries.patch +++ /dev/null @@ -1,26 +0,0 @@ -diff -Nur old/CMakeLists.txt new/CMakeLists.txt ---- old/CMakeLists.txt 2011-04-10 23:55:09.506257000 +0200 -+++ new/CMakeLists.txt 2011-04-10 23:46:30.612257002 +0200 -@@ -32,7 +32,7 @@ - INCLUDE( ${CMAKE_SOURCE_DIR}/VERSION.cmake ) - - FIND_PACKAGE(EXPAT REQUIRED) --FIND_PACKAGE(Check REQUIRED) -+#FIND_PACKAGE(Check REQUIRED) - FIND_PACKAGE(ZLIB REQUIRED) - - IF ( FEDORA ) -@@ -190,10 +190,10 @@ - - ADD_SUBDIRECTORY(src) - ADD_SUBDIRECTORY(ext) --ADD_SUBDIRECTORY(tools) --ADD_SUBDIRECTORY(tests) --ADD_SUBDIRECTORY(examples) --ADD_SUBDIRECTORY(doc) -+#ADD_SUBDIRECTORY(tools) -+#ADD_SUBDIRECTORY(tests) -+#ADD_SUBDIRECTORY(examples) -+#ADD_SUBDIRECTORY(doc) - - MESSAGE(STATUS "version: ${VERSION}") diff --git a/src/patches/libsatsolver-Create-linker-scripts-that-do-only-export-the-needed.patch b/src/patches/libsatsolver-Create-linker-scripts-that-do-only-export-the-needed.patch deleted file mode 100644 index 5ba4fa2..0000000 --- a/src/patches/libsatsolver-Create-linker-scripts-that-do-only-export-the-needed.patch +++ /dev/null @@ -1,439 +0,0 @@ ->From a42d7e17fa3e39a8306126c19f1b3b54f1fdd79e Mon Sep 17 00:00:00 2001 -From: Michael Tremer michael.tremer@ipfire.org -Date: Thu, 21 Apr 2011 16:40:11 +0200 -Subject: [PATCH] Create linker-scripts that do only export the needed symbols - of libsatsolver{,ext}. - -See these posts for reference: - http://lists.opensuse.org/zypp-devel/2011-04/msg00012.html - http://lists.opensuse.org/zypp-devel/2011-04/msg00014.html - -Signed-off-by: Michael Tremer michael.tremer@ipfire.org ---- - ext/CMakeLists.txt | 1 + - ext/libsatsolverext.ver | 25 ++++ - src/CMakeLists.txt | 1 + - src/libsatsolver.ver | 355 +++++++++++++++++++++++++++++++++++++++++++++++ - 4 files changed, 382 insertions(+), 0 deletions(-) - create mode 100644 ext/libsatsolverext.ver - create mode 100644 src/libsatsolver.ver - -diff --git a/ext/CMakeLists.txt b/ext/CMakeLists.txt -index 68e1c3c..d51a43b 100644 ---- a/ext/CMakeLists.txt -+++ b/ext/CMakeLists.txt -@@ -21,6 +21,7 @@ SET(libsatsolverext_HEADERS - tools_util.h repo_deb.h sat_xfopen.h) - - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC") -+SET(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS} -Wl,--version-script=${satsolver_SOURCE_DIR}/ext/libsatsolverext.ver") - - INSTALL(FILES ${libsatsolverext_HEADERS} DESTINATION "${CMAKE_INSTALL_PREFIX}/include/satsolver") - INSTALL(TARGETS satsolverext LIBRARY DESTINATION ${LIB_INSTALL_DIR} ARCHIVE DESTINATION ${LIB_INSTALL_DIR}) -diff --git a/ext/libsatsolverext.ver b/ext/libsatsolverext.ver -new file mode 100644 -index 0000000..4869d37 ---- /dev/null -+++ b/ext/libsatsolverext.ver -@@ -0,0 +1,25 @@ -+EXT1.0 { -+ global: -+ repo_add_code11_products; -+ repo_add_content; -+ repo_add_deb; -+ repo_add_debdb; -+ repo_add_debpackages; -+ repo_add_debs; -+ repo_add_deltainfoxml; -+ repo_add_helix; -+ repo_add_products; -+ repo_add_releasefile_products; -+ repo_add_repomdxml; -+ repo_add_rpmmd; -+ repo_add_susetags; -+ repo_add_updateinfoxml; -+ repo_add_zyppdb_products; -+ repodata_write; -+ repo_write; -+ repo_write_stdkeyfilter; -+ sat_xfopen; -+ sat_xfopen_fd; -+ local: -+ *; -+}; -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 6a14d10..b54d01d 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -20,6 +20,7 @@ SET(libsatsolver_HEADERS - chksum.h md5.h sha1.h sha2.h ${CMAKE_BINARY_DIR}/src/satversion.h) - - SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC") -+SET(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS} -Wl,--version-script=${satsolver_SOURCE_DIR}/src/libsatsolver.ver") - - INSTALL(FILES ${libsatsolver_HEADERS} DESTINATION "${CMAKE_INSTALL_PREFIX}/include/satsolver") - INSTALL(TARGETS satsolver LIBRARY DESTINATION ${LIB_INSTALL_DIR} ARCHIVE DESTINATION ${LIB_INSTALL_DIR}) -diff --git a/src/libsatsolver.ver b/src/libsatsolver.ver -new file mode 100644 -index 0000000..dab3576 ---- /dev/null -+++ b/src/libsatsolver.ver -@@ -0,0 +1,355 @@ -+SAT1.0 { -+ global: -+ dataiterator_clonepos; -+ dataiterator_entersub; -+ dataiterator_free; -+ dataiterator_init; -+ dataiterator_init_clone; -+ dataiterator_jump_to_repo; -+ dataiterator_jump_to_solvid; -+ dataiterator_match; -+ dataiterator_prepend_keyname; -+ dataiterator_seek; -+ dataiterator_set_keyname; -+ dataiterator_set_match; -+ dataiterator_setpos; -+ dataiterator_setpos_parent; -+ dataiterator_set_search; -+ dataiterator_skip_attribute; -+ dataiterator_skip_repo; -+ dataiterator_skip_solvable; -+ dataiterator_step; -+ datamatcher_free; -+ datamatcher_init; -+ datamatcher_match; -+ data_read_idarray; -+ data_read_rel_idarray; -+ data_skip_key; -+ dep2str; -+ dirpool_add_dir; -+ dirpool_free; -+ dirpool_init; -+ dirpool_make_dirtraverse; -+ evrcmp; -+ evrmatch; -+ id2str; -+ map_free; -+ map_grow; -+ map_init; -+ map_init_clone; -+ policy_create_obsolete_index; -+ policy_filter_unwanted; -+ policy_findupdatepackages; -+ policy_illegal2str; -+ policy_illegal_archchange; -+ policy_illegal_vendorchange; -+ policy_is_illegal; -+ pool_add_fileconflicts_deps; -+ pool_addfileprovides; -+ pool_addfileprovides_ids; -+ pool_addrelproviders; -+ pool_add_solvable; -+ pool_add_solvable_block; -+ pool_alloctmpspace; -+ pool_arch2color_slow; -+ pool_bin2hex; -+ pool_calc_duchanges; -+ pool_calc_installsizechange; -+ pool_clear_pos; -+ pool_create; -+ pool_create_state_maps; -+ pool_createwhatprovides; -+ pool_debug; -+ pool_free; -+ pool_freeidhashes; -+ pool_free_solvable_block; -+ pool_freetmpspace; -+ pool_freewhatprovides; -+ pool_id2langid; -+ pool_job2str; -+ pool_lookup_bin_checksum; -+ pool_lookup_checksum; -+ pool_lookup_id; -+ pool_lookup_num; -+ pool_lookup_str; -+ pool_lookup_void; -+ pool_match_dep; -+ pool_match_nevr_rel; -+ pool_queuetowhatprovides; -+ pool_search; -+ pool_setarch; -+ pool_setarchpolicy; -+ pool_setdebuglevel; -+ pool_set_installed; -+ pool_set_languages; -+ pool_setvendorclasses; -+ pool_shrink_rels; -+ pool_shrink_strings; -+ pool_tmpappend; -+ pool_tmpjoin; -+ pool_trivial_installable; -+ pool_trivial_installable_noobsoletesmap; -+ pool_vendor2mask; -+ prune_best_arch_name_version; -+ prune_to_best_arch; -+ prune_to_best_version; -+ queue_alloc_one; -+ queue_alloc_one_head; -+ queue_delete; -+ queue_delete2; -+ queue_deleten; -+ queue_free; -+ queue_init; -+ queue_init_buffer; -+ queue_init_clone; -+ queue_insert; -+ queue_insert2; -+ queue_insertn; -+ rel2id; -+ repo_addid; -+ repo_addid_dep; -+ repo_add_poolstr_array; -+ repo_add_repodata; -+ repo_add_solv; -+ repo_add_solv_flags; -+ repo_create; -+ repodata_add_dirnumnum; -+ repodata_add_dirstr; -+ repodata_add_fixarray; -+ repodata_add_flexarray; -+ repodata_add_idarray; -+ repodata_add_poolstr_array; -+ repodata_chk2str; -+ repodata_create; -+ repodata_create_stubs; -+ repodata_delete; -+ repodata_delete_uninternalized; -+ repodata_dir2str; -+ repodata_disable_paging; -+ repodata_empty; -+ repodata_extend; -+ repodata_extend_block; -+ repodata_filelistfilter_matches; -+ repodata_free; -+ repodata_freedata; -+ repodata_free_schemahash; -+ repodata_globalize_id; -+ repodata_initdata; -+ repodata_internalize; -+ repodata_key2id; -+ repodata_localize_id; -+ repodata_lookup_bin_checksum; -+ repodata_lookup_id; -+ repodata_lookup_idarray; -+ repodata_lookup_num; -+ repodata_lookup_str; -+ repodata_lookup_type; -+ repodata_lookup_void; -+ repodata_merge_attrs; -+ repodata_merge_some_attrs; -+ repodata_new_handle; -+ repodata_schema2id; -+ repodata_search; -+ repodata_set_binary; -+ repodata_set_bin_checksum; -+ repodata_set_checksum; -+ repodata_set_constant; -+ repodata_set_constantid; -+ repodata_set_id; -+ repodata_set_idarray; -+ repodata_set_location; -+ repodata_set_num; -+ repodata_set_poolstr; -+ repodata_setpos_kv; -+ repodata_set_str; -+ repodata_set_void; -+ repodata_shrink; -+ repodata_str2dir; -+ repodata_stringify; -+ repo_disable_paging; -+ repo_empty; -+ repo_fix_conflicts; -+ repo_fix_supplements; -+ repo_free; -+ repo_freeallrepos; -+ repo_free_solvable_block; -+ repo_internalize; -+ repo_last_repodata; -+ repo_lookup_bin_checksum; -+ repo_lookup_checksum; -+ repo_lookup_id; -+ repo_lookup_idarray; -+ repo_lookup_num; -+ repo_lookup_str; -+ repo_lookup_type; -+ repo_lookup_void; -+ repo_matchvalue; -+ repopagestore_compress_page; -+ repopagestore_disable_paging; -+ repopagestore_free; -+ repopagestore_init; -+ repopagestore_load_page_range; -+ repopagestore_read_or_setup_pages; -+ repo_reserve_ids; -+ repo_search; -+ repo_set_id; -+ repo_set_num; -+ repo_set_poolstr; -+ repo_set_str; -+ repo_sidedata_create; -+ repo_sidedata_extend; -+ sat_bin2hex; -+ sat_calloc; -+ sat_chksum_add; -+ sat_chksum_create; -+ sat_chksum_create_from_bin; -+ sat_chksum_free; -+ sat_chksum_get; -+ sat_chksum_get_type; -+ sat_chksum_isfinished; -+ sat_chksum_str2type; -+ sat_chksum_type2str; -+ sat_dupappend; -+ sat_dupjoin; -+ sat_free; -+ sat_hex2bin; -+ sat_malloc; -+ sat_malloc2; -+ sat_MD5_Final; -+ sat_MD5_Init; -+ sat_MD5_Update; -+ sat_oom; -+ sat_realloc; -+ sat_realloc2; -+ sat_SHA1_Final; -+ sat_SHA1_Init; -+ sat_SHA1_Update; -+ sat_SHA256_Data; -+ sat_SHA256_End; -+ sat_SHA256_Final; -+ sat_SHA256_Init; -+ sat_SHA256_Update; -+ sat_SHA384_Data; -+ sat_SHA384_End; -+ sat_SHA384_Final; -+ sat_SHA384_Init; -+ sat_SHA384_Update; -+ sat_SHA512_Data; -+ sat_SHA512_End; -+ sat_SHA512_Final; -+ sat_SHA512_Init; -+ sat_SHA512_Update; -+ sat_sort; -+ sat_timems; -+ sat_version; -+ sat_version_major; -+ sat_version_minor; -+ sat_version_patch; -+ solvable2str; -+ solvable_get_location; -+ solvable_identical; -+ solvable_lookup_bin_checksum; -+ solvable_lookup_bool; -+ solvable_lookup_checksum; -+ solvable_lookup_id; -+ solvable_lookup_idarray; -+ solvable_lookup_num; -+ solvable_lookup_str; -+ solvable_lookup_str_lang; -+ solvable_lookup_str_poollang; -+ solvable_lookup_void; -+ solvable_selfprovidedep; -+ solvable_trivial_installable_map; -+ solvable_trivial_installable_queue; -+ solvable_trivial_installable_repo; -+ solver_addchoicerules; -+ solver_addduprules; -+ solver_addinfarchrules; -+ solver_addrpmrulesforsolvable; -+ solver_addrpmrulesforupdaters; -+ solver_addrpmrulesforweak; -+ solver_addrule; -+ solver_addupdaterule; -+ solver_allruleinfos; -+ solver_calc_duchanges; -+ solver_calc_installsizechange; -+ solver_calculate_noobsmap; -+ solver_create; -+ solver_create_decisions_obsoletesmap; -+ solver_createdupmaps; -+ solver_dep_installed; -+ solver_disablechoicerules; -+ solver_disablepolicyrules; -+ solver_disableproblem; -+ solver_enableproblem; -+ solver_findallproblemrules; -+ solver_findproblemrule; -+ solver_free; -+ solver_freedupmaps; -+ solver_next_problem; -+ solver_next_solution; -+ solver_next_solutionelement; -+ solver_prepare_solutions; -+ solver_printallsolutions; -+ solver_printcompleteprobleminfo; -+ solver_printdecisionq; -+ solver_printdecisions; -+ solver_printproblem; -+ solver_printprobleminfo; -+ solver_printproblemruleinfo; -+ solver_printrule; -+ solver_printruleclass; -+ solver_printruleelement; -+ solver_printsolution; -+ solver_printtransaction; -+ solver_printtrivial; -+ solver_printwatches; -+ solver_problem_count; -+ solver_problemruleinfo; -+ solver_problemruleinfo2str; -+ solver_reenablepolicyrules; -+ solver_reset; -+ solver_ruleinfo; -+ solver_run_sat; -+ solver_samerule; -+ solver_select2str; -+ solver_solution_count; -+ solver_solutionelement2str; -+ solver_solutionelement_count; -+ solver_solve; -+ solver_splitprovides; -+ solver_take_solution; -+ solver_take_solutionelement; -+ solver_trivial_installable; -+ solver_unifyrules; -+ str2id; -+ strn2id; -+ stringpool_clone; -+ stringpool_free; -+ stringpool_freehash; -+ stringpool_init; -+ stringpool_init_empty; -+ stringpool_shrink; -+ stringpool_str2id; -+ stringpool_strn2id; -+ transaction_add_obsoleted; -+ transaction_all_obs_pkgs; -+ transaction_calc_duchanges; -+ transaction_calc_installsizechange; -+ transaction_calculate; -+ transaction_check_order; -+ transaction_classify; -+ transaction_classify_pkgs; -+ transaction_free; -+ transaction_free_orderdata; -+ transaction_init; -+ transaction_init_clone; -+ transaction_installedresult; -+ transaction_obs_pkg; -+ transaction_order; -+ transaction_order_add_choices; -+ transaction_type; -+ vercmp; -+ local: -+ *; -+}; --- -1.7.4.4 - diff --git a/src/patches/libsatsolver-Make-libsatsolver-ext-a-versioned-shared-lib.patch b/src/patches/libsatsolver-Make-libsatsolver-ext-a-versioned-shared-lib.patch deleted file mode 100644 index 449275c..0000000 --- a/src/patches/libsatsolver-Make-libsatsolver-ext-a-versioned-shared-lib.patch +++ /dev/null @@ -1,94 +0,0 @@ ->From 1f9659b55013f222046b9d161fd5a0f2fc399cb8 Mon Sep 17 00:00:00 2001 -From: Michael Tremer michael.tremer@ipfire.org -Date: Thu, 21 Apr 2011 12:48:41 +0200 -Subject: [PATCH] Make libsatsolver{,ext} a versioned shared lib. - -Most distributions only do accept shared libraries because of -relro and hardening stuff. - -Previously, libsatsolver was statically compiled because the ABI -was assumed to be changed from time to time but has now become -very stable. - -Signed-off-by: Michael Tremer michael.tremer@ipfire.org ---- - ext/CMakeLists.txt | 6 +++++- - src/CMakeLists.txt | 6 +++++- - tools/CMakeLists.txt | 12 ++++++------ - 3 files changed, 16 insertions(+), 8 deletions(-) - -diff --git a/ext/CMakeLists.txt b/ext/CMakeLists.txt -index 8e71eee..68e1c3c 100644 ---- a/ext/CMakeLists.txt -+++ b/ext/CMakeLists.txt -@@ -8,7 +8,11 @@ SET(libsatsolverext_SRCS - ${libsatsolverext_SRCS} pool_fileconflicts.c repo_rpmdb.c) - ENDIF (NOT DEBIAN) - --ADD_LIBRARY(satsolverext STATIC ${libsatsolverext_SRCS}) -+ADD_LIBRARY(satsolverext SHARED ${libsatsolverext_SRCS}) -+SET_TARGET_PROPERTIES(satsolverext PROPERTIES -+ VERSION "${LIBSATSOLVER_MAJOR}.${LIBSATSOLVER_MINOR}" -+ SOVERSION "${LIBSATSOLVER_MAJOR}" -+) - - SET(libsatsolverext_HEADERS - pool_fileconflicts.h repo_content.h repo_deltainfoxml.h repo_helix.h repo_products.h -diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt -index 9bd0fde..6a14d10 100644 ---- a/src/CMakeLists.txt -+++ b/src/CMakeLists.txt -@@ -6,7 +6,11 @@ SET(libsatsolver_SRCS - transaction.c rules.c problems.c - chksum.c md5.c sha1.c sha2.c satversion.c) - --ADD_LIBRARY(satsolver STATIC ${libsatsolver_SRCS}) -+ADD_LIBRARY(satsolver SHARED ${libsatsolver_SRCS}) -+SET_TARGET_PROPERTIES(satsolver PROPERTIES -+ VERSION "${LIBSATSOLVER_MAJOR}.${LIBSATSOLVER_MINOR}" -+ SOVERSION "${LIBSATSOLVER_MAJOR}" -+) - - SET(libsatsolver_HEADERS - bitmap.h evr.h hash.h policy.h poolarch.h poolvendor.h pool.h -diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt -index 79d4890..7696612 100644 ---- a/tools/CMakeLists.txt -+++ b/tools/CMakeLists.txt -@@ -20,19 +20,19 @@ ADD_EXECUTABLE(rpmmd2solv rpmmd2solv.c) - TARGET_LINK_LIBRARIES(rpmmd2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY}) - - ADD_EXECUTABLE(helix2solv helix2solv.c) --TARGET_LINK_LIBRARIES(helix2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY}) -+TARGET_LINK_LIBRARIES(helix2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY}) - - ADD_EXECUTABLE(susetags2solv susetags2solv.c) --TARGET_LINK_LIBRARIES(susetags2solv toolstuff satsolverext satsolver ${ZLIB_LIBRARY}) -+TARGET_LINK_LIBRARIES(susetags2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY}) - - ADD_EXECUTABLE(updateinfoxml2solv updateinfoxml2solv.c) --TARGET_LINK_LIBRARIES(updateinfoxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY}) -+TARGET_LINK_LIBRARIES(updateinfoxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY}) - - ADD_EXECUTABLE(deltainfoxml2solv deltainfoxml2solv.c) --TARGET_LINK_LIBRARIES(deltainfoxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY}) -+TARGET_LINK_LIBRARIES(deltainfoxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY}) - - ADD_EXECUTABLE(repomdxml2solv repomdxml2solv.c) --TARGET_LINK_LIBRARIES(repomdxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY}) -+TARGET_LINK_LIBRARIES(repomdxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY}) - - ADD_EXECUTABLE(installcheck installcheck.c) - TARGET_LINK_LIBRARIES(installcheck satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY}) -@@ -44,7 +44,7 @@ ADD_EXECUTABLE(dumpsolv dumpsolv.c ) - TARGET_LINK_LIBRARIES(dumpsolv satsolver) - - ADD_EXECUTABLE(mergesolv mergesolv.c ) --TARGET_LINK_LIBRARIES(mergesolv toolstuff satsolverext satsolver) -+TARGET_LINK_LIBRARIES(mergesolv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY}) - - install(TARGETS - mergesolv --- -1.7.4.4 - diff --git a/src/patches/qemu-0.15.0_missing_definitions_hack.patch b/src/patches/qemu-0.15.0_missing_definitions_hack.patch new file mode 100644 index 0000000..4ff2c08 --- /dev/null +++ b/src/patches/qemu-0.15.0_missing_definitions_hack.patch @@ -0,0 +1,40 @@ +diff -Naur qemu-kvm-0.15.0.org/hw/9pfs/virtio-9p-local.c qemu-kvm-0.15.0/hw/9pfs/virtio-9p-local.c +--- qemu-kvm-0.15.0.org/hw/9pfs/virtio-9p-local.c 2011-08-09 14:40:29.000000000 +0200 ++++ qemu-kvm-0.15.0/hw/9pfs/virtio-9p-local.c 2011-08-14 10:31:22.711480316 +0200 +@@ -21,6 +21,16 @@ + #include <sys/un.h> + #include <attr/xattr.h> + ++#ifndef AT_FDCWD ++/* Copied from linux/include/linux/fcntl.h * because direct include fails */ ++#define AT_FDCWD -100 /* Special value used to indicate ++ openat should use the current ++ working directory. */ ++#define AT_SYMLINK_NOFOLLOW 0x100 /* Do not follow symbolic links. */ ++#define AT_REMOVEDIR 0x200 /* Remove directory instead of ++ unlinking file. */ ++#define AT_SYMLINK_FOLLOW 0x400 /* Follow symbolic links. */ ++#endif + + static int local_lstat(FsContext *fs_ctx, const char *path, struct stat *stbuf) + { +diff -Naur qemu-kvm-0.15.0.org/linux-user/syscall.c qemu-kvm-0.15.0/linux-user/syscall.c +--- qemu-kvm-0.15.0.org/linux-user/syscall.c 2011-08-09 14:40:29.000000000 +0200 ++++ qemu-kvm-0.15.0/linux-user/syscall.c 2011-08-14 12:43:43.190231600 +0200 +@@ -971,6 +971,16 @@ + return result; + } + ++/* Copied from linux/include/asm/resource.h * because direct include fails */ ++ ++#ifndef RLIMIT_NICE ++#define RLIMIT_NICE 13 /* max nice prio allowed to raise to ++ 0-39 for nice level 19 .. -20 */ ++#endif ++#ifndef RLIMIT_RTPRIO ++#define RLIMIT_RTPRIO 14 /* maximum realtime priority */ ++#endif ++ + static inline int target_to_host_resource(int code) + { + switch (code) { diff --git a/src/scripts/backupiso b/src/scripts/backupiso index 426c1e4..6bea855 100644 --- a/src/scripts/backupiso +++ b/src/scripts/backupiso @@ -2,8 +2,8 @@
COREVER=`cat /opt/pakfire/db/core/mine` # FIXME: edit this lines before release -URL=http://download.ipfire.org/releases/ipfire-2.x/2.9-core$COREVER/ -ISO=ipfire-2.9.i586-full-core$COREVER.iso +URL=http://download.ipfire.org/releases/ipfire-2.x/2.11-core$COREVER/ +ISO=ipfire-2.11.i586-full-core$COREVER.iso
if [ -z "$1" ]; then echo usage: $0 backup-file diff --git a/src/scripts/vpn-watch b/src/scripts/vpn-watch index af646ad..7eae873 100755 --- a/src/scripts/vpn-watch +++ b/src/scripts/vpn-watch @@ -1,6 +1,6 @@ #!/usr/bin/perl ################################################## -##### VPN-Watch.pl Version 0.6a ##### +##### VPN-Watch.pl Version 0.7 ##### ################################################## # # # VPN-Watch is part of the IPFire Firewall # @@ -31,18 +31,19 @@ while ( $i == 0){
$round++;
- # Reset roundcounter after 60 min. To do established check. - if ($round > 59) { $round=0; } + # Reset roundcounter after 10 min. To do established check. + if ($round > 9) { $round=0; }
if (open(FILE, "<${General::swroot}/vpn/config")) { @vpnsettings = <FILE>; close(FILE); unless(@vpnsettings) {exit 1;} }
-my $status = `ipsec whack --status`; +my $status = `ipsec status`; foreach (@vpnsettings){ my @settings = split(/,/,$_); - + + chomp($settings[30]); if ($settings[27] ne 'RED'){next;} if ($settings[4] ne 'net'){next;} if ($settings[1] ne 'on'){next;}chomp($settings[29]); @@ -55,15 +56,13 @@ foreach (@vpnsettings){ my $remoteip = `/usr/bin/ping -c 1 $remotehostname 2>/dev/null | head -n1 | awk '{print $3}' | tr -d '()' | tr -d ':'`;chomp($remoteip); if ($remoteip eq ""){next;if ($debug){logger("Unable to resolve $remotehostname.");}} my $ipmatch= `echo "$status" | grep '$remoteip' | grep '$settings[2]'`; - my $established= `echo "$status" | grep '$settings[2]' | grep 'erouted;'`; + my $established= `echo "$status" | grep '$settings[2]' | grep -e 'erouted;' -e 'INSTALLED'`; my $known= `echo "$status" | grep '$settings[2]'`;
if ( $ipmatch eq '' && $known ne '' ){ logger("Remote IP for host $remotehostname($remoteip) has changed, restarting ipsec."); system("/usr/local/bin/ipsecctrl S $settings[0]"); $round=0; - last; #all connections will reloaded - #remove this if ipsecctrl can restart single con again }
if ($debug){logger("Round=".$round." and established=".$established);} @@ -72,8 +71,6 @@ foreach (@vpnsettings){ logger("Connection to $remotehostname($remoteip) not erouted, restarting ipsec."); system("/usr/local/bin/ipsecctrl S $settings[0]"); $round=0; - last; #all connections will reloaded - #remove this if ipsecctrl can restart single con again
} }
hooks/post-receive -- IPFire 2.x development tree