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 556edb5adc8c37d07acf141a14d10b562a9cab73 (commit) via 4b25f1d86dcea9d4fab3590294e5346c399b22ab (commit) via 9e1f2150dfdb499f9d964501e023e9e5c2629a18 (commit) via d3d2261c65f9c2399f3c1ec64b161fe799bf26ed (commit) via 5e99660d7d16b91914ecf1742c8302b3f6b8b2c4 (commit) via 6239e587f047e6d1f73ede8c7562b5ec6b26815d (commit) via de6fd0881fbc2d86be7ee7d51f56602751817eee (commit) via 2a52353f3c4ac7d6be2e4b0e47678fcc3810891c (commit) via f1fc2193a73dc3c647a3c95ad1c593005da12ff1 (commit) via e981b751d180982563fb8a76e63bddadb69a5bd8 (commit) via 270d7c0d3747d7124a66770ee729aa519b8ee847 (commit) via 46443100e0eaa2bd7a23badc8eaeff9d3a1eca5d (commit) via 508547f98d15c824a2ecf9fd9d4aa0a41a963a6a (commit) via f6340997aa216e00fef0f7c7951a4d4084a95d36 (commit) via e2839b1a2cd0bb60a91931cb2e427370a7e5e206 (commit) via 5410fcbc452fe06a4a7de3789ad83f5a9b4a4660 (commit) via 5153fcc9f114f96ea2b84d78123dd5941f2cc8dc (commit) via 276f938b09075debb6f2aab517f03010c1a4a4a8 (commit) via 82215f2d5fa4e654314edc73e6adc28a02043530 (commit) via 8163192065545987ce9e515b8d1bd7f0b6ba705c (commit) via f3e3cb371dc3a279b30510eb56c263b3d2a093ce (commit) via 17ee1f135f67b91fe0d57189a2f2b57186e4c81e (commit) via 2ccb63bce8b63efe3e7b1ce72dff115692c3becd (commit) via a81cbf61273536ee36f3d26504aabdcd65d39cca (commit) via 1366526c0b96a0004ad96888ec32744fc6fc286b (commit) via 4abd5cd00e3d70b200dfa2bbe2cc72a805c1fecb (commit) via fa7f2e219a4601e9d72b347afff8b21d34f789c2 (commit) via 2763aeecf8d2381b7d291b2b879284402debd292 (commit) via 4f388b7e7139620d9521d42d07065ee5dcfd0be8 (commit) via 6323e9086f7fdcf5373a89c23da09a330baea091 (commit) via 7d72dba39dff6af3763832ec168b05a2a4e4a0d1 (commit) via cbc2e87dba9f7653070d2cb9c2296a0d3b3c8887 (commit) via 30b8e6a1bdf44d55f526c5f1ded06d96e806ab47 (commit) via 63c0ec8f683e1f331efb301b33871dc82f2e41f8 (commit) via f034b9515670e7c6fe92d689f8247f44c6052daf (commit) via 3514a0bc0f0ebec8acf478932a7100e66bb557ce (commit) via e4104affc415240e0eaffb2135f8d9125a05a8a3 (commit) via b217d8a70f8cba9d95b557cf00fc7d5265a2fe17 (commit) via e5cd2620bcf24a5754645c7340a125dc9013bf34 (commit) via 7f6620986c97536d7f4762331a91358b45ad15ba (commit) via 3a74245df4ff62ecebfa3318d0fa0fce002bbec0 (commit) via 59fc80fc7bf1c4504cb9675dfffbdc8abae437c6 (commit) via 627b84f9e90de423fe5755a17be58b136a7384c8 (commit) via 7be45a5f48ecce11f2d543ce5ecc942bd8198e5b (commit) via 434bf61494c9b191fbc89f2b83243f85ccb46fe5 (commit) via 4a5932d55d8ebe67a6ffa51af7b2064d208865b9 (commit) via 200ed6b4dfd85381d607afa5a607acb0a2a6b946 (commit) via 5ebf4bdbd2bb228d00cc1c0dedfd4be5bcb93950 (commit) via 053a582d3a68456f861d4e7ab3529163ee84ec47 (commit) via c5d855492ed16a8f832eea617fc713f7742989a0 (commit) via 8dc908de4a6b4086795a8733877abc763d36f3f6 (commit) via 90d81a4b8a85130514a6912c0c700bc4618b8519 (commit) via 3eb7c08b89ba3af79e70396e6cba5273857f3186 (commit) via d87928c091dfb6918564d76bd16ad48d6114d575 (commit) via 5617cb0d42a59920b9a9c0d76352319f9a717cc4 (commit) via f57e1628f6d66dea2c212d7bfc17ce8e1bf2520b (commit) via d22c7c106293bc5ea3bee8d1df4058cdc33467f6 (commit) via 7b7b3bb96292c388d4849c5d6ec36ff6c55a245d (commit) via 9d2c1158c9a3f48d96215a69ecb330a5438e9d0f (commit) via 3404ea7df8a99818961a3d41c0f2e3fc69fc6092 (commit) via c4a54c419d48d1d89a87a26164061df2a4cb633d (commit) via 5b057b3f31450f1692fa9edd104a97e560f4693c (commit) via 66d63924922c35863bc3b6882bf3ac24d188136d (commit) via 150fadab40f740e834a28c768ceb333167e8d76e (commit) via 0fd1f8bba66a25f215b49521c7125d51d846ba5d (commit) via ed863076029882a786f0c9608eb21e921146a22c (commit) via d57cecaafc4a7e86411c0e28768b2ef67919bb19 (commit) via 5b8ecec9e8ff95251397ec057881859e3a36eef8 (commit) via 661918881ff33de140d643d056296bf2d858c345 (commit) via d10e04ec9948ad5d43a392a79a9312153690d2b4 (commit) via 3be1e3c6f78a166029464de23078e367cc34dfa1 (commit) via 88985bcc6ee6bf7fb9ac734b39411e6e013feb44 (commit) via 88095fce905a14b9ac1b75290c5fb9d576711128 (commit) via 2feacd989823aa1dbd5844c315a9abfd49060487 (commit) via 2a4b9f0eef48c3c60fc60c24b2c7f30ba8ab142e (commit) via 1e7c0108abd27f9c970d1719c09927d99c8ffea9 (commit) via 12317449d0cdfde685f4f9d97914a66d5e4982cf (commit) via 875041991c838d25ba236e9bd6e253e16411a264 (commit) via 31c46c07585ca71330a97838c2a45933bcb88031 (commit) via 3f5cb3b7ccdeca87fb5eaaf66436c93aa50280dc (commit) via 4353c579248b3016740252009b4ed15a4c6f8fe3 (commit) via 2386d2eff7ee0c788a67adb7301a63534073ba86 (commit) via 3a69c4fbbc668771a1062a35b2f5262b88401530 (commit) via 2bbf176619985f552e2418e167100425163aa5e7 (commit) via d39c7076acf4db959ec2d8b54e09b1479bb7b7e8 (commit) via 751765b732cc914f45ca123f609af7fc09baa208 (commit) via 15c3570d1c23d764c34a1acaab11fe0751ef69d9 (commit) via 5c9c1ce9bf23539935742f44cda320aea1ef9238 (commit) via 305b72cc7520b62f521671b9f88d768954e30529 (commit) via c1d77628c397e39a00ee0fa2f491b122825418ca (commit) via 0b0e6d586bc327dfa5f2b8752e8066a92655a5e7 (commit) via 43ecaceb4da5b868f62ae6ff9daf30927fc335e8 (commit) via f5f181838ffb6556c50995a16112257f6badc30f (commit) via 0483dca6292cfd14a9a37f89e75185520eaeee02 (commit) via 761c08a7c7eb89797f8316c8f69af965e7c9d768 (commit) via 8a1e6afef57f63d8955ddb165395c09227d0b2ac (commit) via dfdf076d71677d0fe2a7d611e56815586f3a0e84 (commit) via ea9ad05e3800a982a9133cabcb23adeb865a8eaa (commit) via 32d34774d3d5eb996db063d8d063050280a8eb5a (commit) via a87366f5f40da94db11dffec2864b3514988fd43 (commit) via c4391a0181b5bff0ac2db8efcdcefc9e20c3e098 (commit) via bce859434884b3d147b75eb1ab085b937353d436 (commit) via 03fe4081127edfaf692bec0980b0f82b5aa0ac6c (commit) via 3049ef008ea35a34429e7d6adeaea6933b1458dc (commit) via 189d41d2000d9a6c90d50ba12218a6ab446bbad4 (commit) via b4cb1ed58b9dbd7d40bd8e9710b7f323da8b8997 (commit) via 3fbad7e512d807499c1c04b396bb55ebff1075d7 (commit) via eb408bb29ce2f080651816b216d2e112a1b6e493 (commit) via 85d2bb767f55f88f3803174f16e61925dced053f (commit) via a9067348405fddb2ea72b4ea970ef94d89472f65 (commit) via 5be657270f56af5f0bd189d5b4e4b5eb915633cf (commit) via 5adf0ed40c62559c44ff16459f156701d3e85a5e (commit) via 9270497a6d6a2b3c3669b51052842d6f917d8b34 (commit) via 662b1d802e188820b7d3d537f406ff0c281f2511 (commit) via 43f20d6e5af4ddce3050431db0fe7c598842430d (commit) via 65171dc956d7255fe16244807a4392910b925d90 (commit) via 52c84741cf97a4fdb30da0e27509e7fd353f66c9 (commit) via f8b0610c53deb66797ab94ceae05fa3b9ed6aa9d (commit) via 613db5c199ade433b6d44123fce455942f82db79 (commit) via 0aad67988b00090f9bdb59192101c4dbad9fc56b (commit) via 0957a949db0dfeba0487b48dcfdac3b2cbe5fc67 (commit) via a86c5df80d8cb74f31be9f4c578090fca40fb5d3 (commit) via 41749b748b9faa88fbbf69caf20cddff5e004d13 (commit) via 7086c362466c2a5e6e955c0f89771dac2453999f (commit) via c1d98bbbb3e03643cae8500c6829cfeeab7c86a4 (commit) via 6f8a114146e76441c69c58af31b8f1ccd77718c1 (commit) via bf2891dc5b68958e732a66e91b77aa205edf3310 (commit) via 84f717650168c718bd850129ec63fd29670237d2 (commit) via 7112adbc8691be3eceae9ecb1e5d8c97fa8e73a6 (commit) via c372d439507170eda1f6b2922d5303f6c1f52f99 (commit) via b2c32cae42e2775a0c6a21747a94385de821f938 (commit) via 0f12e034f0112a99f62affb3fe416276a86f23da (commit) via f8ac400cb87599350e4e2831cc073825b36239f0 (commit) via 179f3ec0825af89234cae6fed38e4717ae7c8dc2 (commit) via 331ba89bfdcffb22a7e7ee1fe028cb83f8a392c5 (commit) via f5e719df3e10f3e3f6cf14d66ea3f6026f75f874 (commit) via e027e094cb371f7d658bef1eb1c918c384801e89 (commit) via 5adde58cd57ba3bfc79e16d72f1894601db16b1e (commit) via f94fd54e0c73c298d7ee677c9d8001e42a9f62fa (commit) via 3e60ed14e2baf771d3d4f6f86f9ff3054b99aa87 (commit) via 2c8a20af4742216dac7e0f47339370083748c16a (commit) via c62adbc448902198eab2857ed67671ae70bf297b (commit) via 0b38fd75d47841cae23e636ca4ee01e829fef11d (commit) via 740549d85a32cd778896ce57d3d4172a25d63f41 (commit) via 31faaf2b142bb32988b4d3c3dd435d93e6870485 (commit) via 0ebe81821fc70b332c378a7ab1891555ed6d50c2 (commit) via c9dbf671d408c4af1ffab606e3598c149def5df7 (commit) via 55f0bafb7b3f4880d335cc7392dfa23aa550aa75 (commit) via 839451c527ddb4563a3ea2361e012e405a5b11a2 (commit) via ceb5733c595b99c3f23e1c0b18cd315babb6afeb (commit) via 0e734ef7a8198fa851442f858095c4004975c677 (commit) via a9fb87809eccdc7ea7736659ceec929a028761d4 (commit) via 97c76ea56fff5de5ff40e0435c741f109b12835d (commit) via f8513e6f57edb2a8f30471143b536aca6804f815 (commit) via 8c06bb2df9e37c290848975e7d3b8a7afff164e1 (commit) via abcabf673ec70c2086816166553b83b77580fc8f (commit) via 5423f3338577e30e3c4d100445804fc763363eb7 (commit) via b9714c0eee9516a884718f5a389a7f5dfe5779ff (commit) via 2a2219ae9b652644a37fc0435bd056e933df2158 (commit) via 69d65dee13353a92ca94c8ee68dbb8641918dc70 (commit) via 66c55e6cb0760cb76b0772892b0f58bc6d50cae5 (commit) via 05f1889aa8af11057cab6f05d643a4299652648d (commit) via a0112ac028ff2e6a5103bb517de619c2dd9de314 (commit) via 567e5e85e5b14704e2dd9dd73eaf05147a132397 (commit) via c12f3d9726787bbc269b14a255e6bbee64334e63 (commit) via 7966faf398cc3cd298e5a9749932c88288577bab (commit) via df85d2dca849f513441f5c953cf87310a9c9d1af (commit) via d702bce20b740b53d4743f777ab75f135267819d (commit) via d6c2e6715575c4d531f1302ab6c7368329da8bd4 (commit) via f0996ee6432eb717d332501024ac2cca3f9852a4 (commit) via 937d8dbcb19fcfbdfc0d914b769c93b5cffdba65 (commit) via 76af560cc909610e794ae2c70381145f9119ced0 (commit) via cf4b5b40a13b5edc8a91f2d5ce34c18bda437e85 (commit) via bf1ea6966b9738bc8536afc4edde26a424143bd8 (commit) via 5987732fd46e064237e93771e0a6d779f349c2c9 (commit) via be1bf24bb0cfcb89ce32569b4c8b3fcee3b136fb (commit) via 7704b3132004a4c84e42ec458695b7ea3a5eb9d8 (commit) via 26a97847513a9b8f3182bd0685d6de2e62fa3a9f (commit) via bc3df8befd056fcc20e1780df11981d59f7bd06c (commit) via 3d79695465a9a13c007ca91879c24803c4fc61c2 (commit) via e5f3e0397cb6609fc0fc7aa670ae190c68e09038 (commit) via 7849bdd2af425353130aa1c9a4b609ff1ffad531 (commit) via fd61df2a86a48ac4fe0929030fcccee799b64d79 (commit) via 0bbf3887996d4568b29a0f8817dc9fae4c69bd67 (commit) via 495cf3e0b4f6ff4504fae5e45b86df94c1784d23 (commit) via 609c27b2fadb57d2e88be12116a5b585329b4780 (commit) via 2feefae21ac637e32d094953f7559165be97cd4e (commit) via 398669f7c9b8645c3eae079c6b71f83461068524 (commit) via e689de33658febb769b3053da30882b379980e8a (commit) via 19465bc094bd7ede505b68f67e6e9919267efd60 (commit) via 530e1e763727e7aa63f36ccf59c7f8c01e7d7c4f (commit) via e4b8c09391cffe9d73ce1e7ffb8098f50e2f3845 (commit) via e6681e3d44c091d4feb37a4c49091bd6aa4b218b (commit) via 6cedf688932993a5df2b25417e69863e18d95ec5 (commit) via f8cd37cb1cb36521c20b62c6ad9d3c3adf3c3ec1 (commit) via 19c0bc43c0feeb4c32b140f960836925e2a9b0e5 (commit) via 571de610a5e50730f8ab7c6346b4d58f0a92d99c (commit) via 79d6544eb80cf224f392d4f2e51dc10f17f7f587 (commit) via 6fcd779c053d9156b2a744da6090469188e36950 (commit) via 6622925b362897372dd415681bbf5ca70ff37885 (commit) via 59e476630ecf6cec2d8560da83c9a0b5e776d254 (commit) via fdc5bfef07ade732e10224e62104e02f8f71ab2c (commit) via f65e725e83f4ddb8cd280ac2ce78ba628c863ab0 (commit) via 9d0b7c1a78932875099d537209e5b9e6034dbc44 (commit) via b6bfdcc2cd5847b3d2abf1e7b2ff9856d6c094cd (commit) via 06f03f5bbb22514fcc9e1001b5c03e58414ef984 (commit) via a915cdd6c98e32721478f0178d65e22e1046b122 (commit) via cb69bf13caed4f4bde9b72d63e4282bddd11479c (commit) via 5f16813c8af6a344d1df47ad742e754b803c97e8 (commit) via 014296524b85a856b27191c168e14a489c906d50 (commit) via 28cffbc51cd0e19068779756ae8e24eb0a543a5b (commit) via 937748f96d48368b79b760e4ae8adf3278dbf43a (commit) via a5ee98176cc53b59ee3188bbdeda23913f0b5154 (commit) via e55b268a4b02b5316f0facc79ccf67fe5de27395 (commit) via a0dbbb73a91e3841fe0fe3a8fc40e34171c7d656 (commit) via 86f5f42f6b9d4a655da478033854a34e2d03bb42 (commit) via a326c9a623ebd7b718042a76c8be6daf42634408 (commit) via 04bd81530ad31742023eec020848507fa0aa007c (commit) via a7da7bcb07774f24dc5c70c4d31bd3e8e2e41ba1 (commit) via bb4d1624cb27038fccde3f8c23b8d5427cdf0384 (commit) via 43f7b1d7d2c0469cbcbf1c198e16111166007c08 (commit) via 08fa1272d2ce11bc887d97ffa8f212442443e7dc (commit) via 616d3bf9ac8923144037976eed76a8e5f0f3f586 (commit) via 9ae65c8e08344b1d9efb34c6604a6746ee4a77d2 (commit) via b4d83d1af3619dfabf8daac154e6c19b09f1bdb7 (commit) via db33a1220ad398531cfd2477e657a2a2e9266a6a (commit) via 9326f51c2493df6a217f8f3b9e30300b05eea745 (commit) via 1108156c3973b12d5583529b122d06f1fa795ba3 (commit) via 8ce6222a1002a669cb511ba75b9e4e57810a4432 (commit) via 839183d8b87099faac4e127066d45f83d68491b9 (commit) via 9f3742222a47e6ec6a2e8bd4224fe4861c8a888c (commit) via dccd7e874bf53efd9642756a3ed60abc95df43bb (commit) via 5b2e16dde2920a411919ef20ace35f1c1d6813b0 (commit) via 2d7b3347caef55b3cb305b9d1db9864f1b9a6b18 (commit) via b75d92100cb17a28007029fb14e6503b93a8b329 (commit) via f356736432343f0cfdf3b0575805f596aeae6e89 (commit) via c7fe09c6ad71f455b95ecbb98203f31a77f2dd22 (commit) via 205c3c17c63d5c7480e7907c08c28abd8bfc2be1 (commit) via 46426b69fd98e2de7a1c95bf45963931d3042d1c (commit) via 26a0befd753163d26b8d4d12405ee1b2cba46fd5 (commit) via 926e5519a60dc9b582677df295c53380527c0160 (commit) from 1ca8bd7aa2cdb9311aa2d6d75e4fce55a1b91e18 (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 556edb5adc8c37d07acf141a14d10b562a9cab73 Merge: 1ca8bd7aa 4b25f1d86 Author: Michael Tremer michael.tremer@ipfire.org Date: Mon Jun 21 10:04:11 2021 +0000
Merge remote-tracking branch 'origin/next'
-----------------------------------------------------------------------
Summary of changes: config/asterisk/asterisk.logrotate | 9 - config/backup/backup.pl | 17 +- config/backup/includes/asterisk | 2 - config/backup/includes/lcd4linux | 1 - config/backup/includes/motion | 1 - config/backup/includes/sane | 1 - config/ca-certificates/certdata.txt | 2158 ++++++--- config/cfgroot/general-functions.pl | 75 +- config/cfgroot/ids-functions.pl | 6 +- config/cfgroot/network-functions.pl | 2 +- config/elinks/elinks.conf | 0 config/fbset/fb.modes | 85 - config/firewall/ipsec-policy | 7 +- config/menu/50-firewall.menu | 8 +- config/miniupnpd/miniupnpd.conf | 50 - config/motion/motion.conf | 637 --- config/rootfiles/common/XML-Parser | 6 +- config/rootfiles/common/aarch64/initscripts | 6 - config/rootfiles/common/apache2 | 4 +- config/rootfiles/common/armv5tel/initscripts | 6 - config/rootfiles/common/bind | 4 +- config/rootfiles/common/configroot | 2 - config/rootfiles/common/conntrack-tools | 18 +- config/rootfiles/common/curl | 2 + config/rootfiles/common/ethtool | 1 + config/rootfiles/common/expat | 22 +- config/rootfiles/common/fbset | 4 - config/rootfiles/common/fireinfo | 38 +- config/rootfiles/common/fuse | 2 +- config/rootfiles/common/glib | 14 +- config/rootfiles/common/gnutls | 2 +- config/rootfiles/common/i586/dmidecode | 1 + config/rootfiles/common/i586/initscripts | 6 - config/rootfiles/common/i586/intel-microcode | 11 + config/rootfiles/{packages => common}/intltool | 10 +- config/rootfiles/common/iputils | 12 + config/rootfiles/common/libcap | 4 +- config/rootfiles/common/libedit | 2 +- config/rootfiles/common/libnl-3 | 92 +- config/rootfiles/common/libpcap | 2 +- config/rootfiles/common/libupnp | 37 - config/rootfiles/common/libusb | 2 +- config/rootfiles/common/linux-firmware | 293 +- config/rootfiles/common/nettle | 4 +- config/rootfiles/common/pcre2 | 228 +- .../perl-common-sense => common/perl-Data-UUID} | 14 +- config/rootfiles/common/python-pyparsing | 1 - config/rootfiles/common/qpdf | 2 +- config/rootfiles/common/web-user-interface | 1 + config/rootfiles/common/x86_64/dmidecode | 1 + config/rootfiles/common/x86_64/initscripts | 6 - config/rootfiles/common/x86_64/intel-microcode | 11 + config/rootfiles/common/zstd | 2 +- config/rootfiles/core/{157 => 158}/exclude | 0 .../{oldcore/136 => core/158}/filelists/XML-Parser | 0 .../rootfiles/core/{157 => 158}/filelists/apache2 | 0 .../core/{157 => 158}/filelists/armv5tel/boost | 0 .../rootfiles/core/{157 => 158}/filelists/backup | 0 .../{oldcore/100 => core/158}/filelists/bind | 0 .../121 => core/158}/filelists/ca-certificates | 0 config/rootfiles/core/{157 => 158}/filelists/curl | 0 .../{oldcore/52 => core/158}/filelists/ethtool | 0 config/rootfiles/core/{157 => 158}/filelists/expat | 0 config/rootfiles/core/158/filelists/files | 14 + .../{oldcore/127 => core/158}/filelists/fireinfo | 0 config/rootfiles/core/{157 => 158}/filelists/fuse | 0 config/rootfiles/core/{157 => 158}/filelists/glib | 0 .../{oldcore/110 => core/158}/filelists/gnutls | 0 .../{oldcore/111 => core/158}/filelists/gzip | 0 .../{oldcore/132 => core/158}/filelists/hwdata | 0 .../core/{157 => 158}/filelists/i586/boost | 0 .../101 => core/158}/filelists/i586/dmidecode | 0 .../158}/filelists/i586/intel-microcode | 0 .../rootfiles/core/{157 => 158}/filelists/iputils | 0 .../{oldcore/128 => core/158}/filelists/knot | 0 .../{oldcore/104 => core/158}/filelists/libcap | 0 .../rootfiles/core/{157 => 158}/filelists/libedit | 0 .../{oldcore/82 => core/158}/filelists/libnl-3 | 0 .../{oldcore/109 => core/158}/filelists/libpcap | 0 .../{oldcore/145 => core/158}/filelists/libusb | 0 .../core/{157 => 158}/filelists/libxcrypt | 0 config/rootfiles/core/158/filelists/linux-firmware | 410 ++ .../{oldcore/101 => core/158}/filelists/nettle | 0 .../{oldcore/155 => core/158}/filelists/pcre2 | 0 .../{oldcore/136 => core/158}/filelists/perl-CGI | 0 config/rootfiles/core/158/filelists/perl-Data-UUID | 1 + .../core/{157 => 158}/filelists/python3-inotify | 0 .../{oldcore/110 => core/158}/filelists/qpdf | 0 .../core/{157 => 158}/filelists/release-files | 0 .../{oldcore/121 => core/158}/filelists/rng-tools | 0 .../106 => core/158}/filelists/smartmontools | 0 config/rootfiles/core/{157 => 158}/filelists/sudo | 0 .../{oldcore/111 => core/158}/filelists/vnstat | 0 .../112 => core/158}/filelists/web-user-interface | 0 .../core/{157 => 158}/filelists/x86_64/boost | 0 .../101 => core/158}/filelists/x86_64/dmidecode | 0 .../158}/filelists/x86_64/intel-microcode | 0 .../rootfiles/core/{157 => 158}/filelists/xfsprogs | 0 .../51 => core/158}/filelists/zd1211-firmware | 0 .../{oldcore/149 => core/158}/filelists/zstd | 0 .../rootfiles/{oldcore/154 => core/158}/update.sh | 24 +- config/rootfiles/{core => oldcore}/157/exclude | 0 .../157/filelists/Canary-Stability | 0 .../{core => oldcore}/157/filelists/Convert-TNEF | 0 .../{core => oldcore}/157/filelists/Convert-UUlib | 0 .../157/filelists/Crypt-PasswdMD5 | 0 .../{core => oldcore}/157/filelists/Digest | 0 .../{core => oldcore}/157/filelists/aarch64/linux | 0 .../157/filelists/aarch64/linux-initrd | 0 .../157/filelists/aarch64/lm_sensors | 0 .../{core => oldcore}/157/filelists/apache2 | 0 .../157/filelists/armv5tel/linux-initrd-multi | 0 .../157/filelists/armv5tel/linux-multi | 0 .../157/filelists/armv5tel/lm_sensors | 0 .../rootfiles/{core => oldcore}/157/filelists/bash | 0 .../rootfiles/oldcore/{112 => 157}/filelists/boost | 0 .../{core => oldcore}/157/filelists/collectd | 0 .../rootfiles/{core => oldcore}/157/filelists/curl | 0 .../rootfiles/{core => oldcore}/157/filelists/ddns | 0 .../157/filelists/dejavu-fonts-ttf | 0 .../{core => oldcore}/157/filelists/expat | 0 .../rootfiles/{core => oldcore}/157/filelists/file | 0 .../{core => oldcore}/157/filelists/files | 0 .../rootfiles/{core => oldcore}/157/filelists/fuse | 0 .../rootfiles/{core => oldcore}/157/filelists/glib | 0 .../{core => oldcore}/157/filelists/i586/linux | 0 .../157/filelists/i586/linux-initrd | 0 .../157/filelists/i586/lm_sensors | 0 .../{core => oldcore}/157/filelists/iproute2 | 0 .../{core => oldcore}/157/filelists/iputils | 0 .../rootfiles/{core => oldcore}/157/filelists/less | 0 .../{core => oldcore}/157/filelists/libaio | 0 .../{core => oldcore}/157/filelists/libarchive | 0 .../{core => oldcore}/157/filelists/libcap-ng | 0 .../{core => oldcore}/157/filelists/libedit | 0 .../{core => oldcore}/157/filelists/libevent2 | 0 .../{core => oldcore}/157/filelists/libgcrypt | 0 .../{core => oldcore}/157/filelists/libgpg-error | 0 .../{core => oldcore}/157/filelists/libjpeg | 0 .../{core => oldcore}/157/filelists/libupnp | 0 .../{core => oldcore}/157/filelists/libxcrypt | 0 .../{core => oldcore}/157/filelists/libxml2 | 0 .../{core => oldcore}/157/filelists/libxslt | 0 .../rootfiles/{core => oldcore}/157/filelists/newt | 0 .../{core => oldcore}/157/filelists/openssh | 0 .../{core => oldcore}/157/filelists/pixman | 0 .../{core => oldcore}/157/filelists/poppler | 0 .../{core => oldcore}/157/filelists/poppler-data | 0 .../rootfiles/{core => oldcore}/157/filelists/ppp | 0 .../{core => oldcore}/157/filelists/python3-daemon | 0 .../{core => oldcore}/157/filelists/readline | 0 .../{core => oldcore}/157/filelists/release-files | 0 .../{core => oldcore}/157/filelists/sqlite | 0 .../{core => oldcore}/157/filelists/squid | 0 .../rootfiles/{core => oldcore}/157/filelists/sudo | 0 .../{core => oldcore}/157/filelists/x86_64/linux | 0 .../157/filelists/x86_64/linux-initrd | 0 .../157/filelists/x86_64/lm_sensors | 0 .../{core => oldcore}/157/filelists/xfsprogs | 0 config/rootfiles/{core => oldcore}/157/update.sh | 0 config/rootfiles/packages/aarch64/sane | 653 --- config/rootfiles/packages/armv5tel/sane | 653 --- config/rootfiles/packages/asterisk | 2990 ------------ config/rootfiles/packages/bluetooth | 98 - config/rootfiles/packages/dpfhack | 3 - config/rootfiles/packages/elfutils | 6 +- config/rootfiles/packages/flac | 47 +- config/rootfiles/packages/lcd4linux | 3 - config/rootfiles/packages/libmicrohttpd | 6 - config/rootfiles/packages/libogg | 3 +- config/rootfiles/packages/libsrtp | 41 - config/rootfiles/packages/miniupnpd | 6 - config/rootfiles/packages/motion | 44 - config/rootfiles/packages/netsnmpd | 43 +- config/rootfiles/packages/perl-TimeDate | 9 +- config/rootfiles/packages/python3-pyparsing | 9 + config/rootfiles/packages/python3-setuptools | 175 + config/rootfiles/packages/sane | 659 --- config/rootfiles/packages/sendEmail | 1 - config/sane/saned.conf | 24 - config/upnp/gatedesc.xml | 81 - doc/language_issues.de | 5 +- doc/language_issues.en | 6 +- doc/language_issues.es | 5 + doc/language_issues.fr | 6 +- doc/language_issues.it | 5 + doc/language_issues.nl | 5 + doc/language_issues.pl | 5 + doc/language_issues.ru | 5 + doc/language_issues.tr | 6 +- doc/language_missings | 44 +- html/cgi-bin/aliases.cgi | 2 +- html/cgi-bin/backup.cgi | 16 +- html/cgi-bin/captive.cgi | 2 +- html/cgi-bin/connections.cgi | 9 +- html/cgi-bin/ddns.cgi | 2 +- html/cgi-bin/dhcp.cgi | 37 +- html/cgi-bin/dns.cgi | 6 +- html/cgi-bin/dnsforward.cgi | 6 +- html/cgi-bin/extrahd.cgi | 14 +- html/cgi-bin/fireinfo.cgi | 26 +- html/cgi-bin/firewall.cgi | 10 +- html/cgi-bin/fwhosts.cgi | 12 +- html/cgi-bin/gpl.cgi | 14 +- html/cgi-bin/guardian.cgi | 12 +- html/cgi-bin/gui.cgi | 4 +- html/cgi-bin/hardwaregraphs.cgi | 106 +- html/cgi-bin/hosts.cgi | 4 +- html/cgi-bin/index.cgi | 4 +- html/cgi-bin/mac.cgi | 4 +- html/cgi-bin/mdstat.cgi | 8 +- html/cgi-bin/memory.cgi | 37 +- html/cgi-bin/modem.cgi | 2 +- html/cgi-bin/mpfire.cgi | 2 +- html/cgi-bin/netexternal.cgi | 3 +- html/cgi-bin/optionsfw.cgi | 4 +- html/cgi-bin/ovpnmain.cgi | 378 +- html/cgi-bin/pakfire.cgi | 34 +- html/cgi-bin/pppsetup.cgi | 21 +- html/cgi-bin/proxy.cgi | 128 +- html/cgi-bin/qos.cgi | 44 +- html/cgi-bin/remote.cgi | 14 +- html/cgi-bin/routing.cgi | 2 +- html/cgi-bin/samba.cgi | 30 +- html/cgi-bin/services.cgi | 69 +- html/cgi-bin/shutdown.cgi | 4 +- html/cgi-bin/speed.cgi | 6 +- html/cgi-bin/time.cgi | 30 +- html/cgi-bin/tor.cgi | 4 +- html/cgi-bin/traffic.cgi | 14 +- html/cgi-bin/updatexlrator.cgi | 32 +- html/cgi-bin/urlfilter.cgi | 75 +- html/cgi-bin/vpnmain.cgi | 572 ++- html/cgi-bin/wakeonlan.cgi | 2 +- html/cgi-bin/webaccess.cgi | 2 +- html/cgi-bin/wireless.cgi | 8 +- html/cgi-bin/wirelessclient.cgi | 2 +- html/cgi-bin/wlanap.cgi | 6 +- html/html/images/apple.png | Bin 0 -> 346 bytes langs/de/cgi-bin/de.pl | 6 +- langs/en/cgi-bin/en.pl | 10 +- langs/es/cgi-bin/es.pl | 4 - langs/fr/cgi-bin/fr.pl | 5 - langs/it/cgi-bin/it.pl | 4 - langs/nl/cgi-bin/nl.pl | 4 - langs/pl/cgi-bin/pl.pl | 4 - langs/ru/cgi-bin/ru.pl | 4 - langs/tr/cgi-bin/tr.pl | 5 - lfs/XML-Parser | 4 +- lfs/apache2 | 6 +- lfs/asterisk | 154 - lfs/avahi | 1 - lfs/bash | 8 +- lfs/bind | 4 +- lfs/ca-certificates | 4 +- lfs/cmake | 4 +- lfs/configroot | 13 +- lfs/coreutils | 6 +- lfs/cups-filters | 7 +- lfs/curl | 7 +- lfs/dmidecode | 13 +- lfs/dnsdist | 2 +- lfs/dpfhack | 84 - lfs/elfutils | 6 +- lfs/elinks | 2 +- lfs/ethtool | 4 +- lfs/expat | 4 +- lfs/fireinfo | 11 +- lfs/flac | 6 +- lfs/flash-images | 4 +- lfs/fuse | 4 +- lfs/glib | 4 +- lfs/gnutls | 4 +- lfs/grub | 4 +- lfs/guardian | 2 +- lfs/gzip | 7 +- lfs/hostapd | 2 +- lfs/hwdata | 2 +- lfs/intel-microcode | 4 +- lfs/iputils | 10 +- lfs/knot | 6 +- lfs/lcd4linux | 92 - lfs/libcap | 7 +- lfs/libedit | 4 +- lfs/libloc | 2 +- lfs/libmicrohttpd | 96 - lfs/libnl-3 | 10 +- lfs/libogg | 6 +- lfs/libpcap | 4 +- lfs/libsrtp | 84 - lfs/libupnp | 78 - lfs/libusb | 6 +- lfs/libxcrypt | 4 +- lfs/linux-firmware | 15 +- lfs/miniupnpd | 88 - lfs/motion | 102 - lfs/mpd | 4 +- lfs/mpfire | 2 +- lfs/nano | 8 +- lfs/netsnmpd | 6 +- lfs/nettle | 4 +- lfs/openssh | 2 +- lfs/openvmtools | 1 - lfs/pam | 1 - lfs/pcre2 | 4 +- lfs/perl-CGI | 4 +- lfs/{perl-Font-TTF => perl-Data-UUID} | 7 +- lfs/perl-TimeDate | 6 +- lfs/postfix | 6 +- lfs/{python-pyparsing => python3-pyparsing} | 10 +- lfs/{fbset => python3-setuptools} | 13 +- lfs/qpdf | 4 +- lfs/rng-tools | 8 +- lfs/samba | 2 +- lfs/sane | 100 - lfs/sarg | 13 +- lfs/sendEmail | 70 - lfs/smartmontools | 6 +- lfs/sox | 3 +- lfs/sudo | 4 +- lfs/tcpdump | 6 +- lfs/tmux | 8 +- lfs/tor | 6 +- lfs/vnstat | 6 +- lfs/wio | 2 +- lfs/xfsprogs | 7 +- lfs/zd1211-firmware | 4 +- lfs/zerofree | 6 +- lfs/zstd | 4 +- make.sh | 17 +- src/hwdata/pci.ids | 1138 ++++- src/hwdata/usb.ids | 131 +- src/initscripts/networking/red.down/10-miniupnpd | 6 - src/initscripts/networking/red.up/10-miniupnpd | 6 - src/initscripts/packages/asterisk | 69 - src/initscripts/packages/bluetooth | 68 - src/initscripts/packages/dnsdist | 22 + src/initscripts/packages/lcd4linux | 46 - src/initscripts/packages/miniupnpd | 69 - src/initscripts/packages/motion | 42 - src/initscripts/packages/sane | 44 - src/initscripts/system/firewall | 71 +- src/initscripts/system/upnpd | 55 - src/pakfire/lib/functions.pl | 3 + src/pakfire/pakfire | 26 +- src/paks/asterisk/install.sh | 27 - src/paks/asterisk/uninstall.sh | 29 - src/paks/asterisk/update.sh | 27 - src/paks/motion/install.sh | 29 - src/paks/motion/uninstall.sh | 26 - src/paks/motion/update.sh | 27 - src/patches/Python-2.7.3-gdbm-1.patch | 21 - src/patches/Python-2.7.9-gdbm-1.patch | 21 - src/patches/arm-dont-require-distutils.patch | 20 - src/patches/arm-multi-grsec-compile-fixes.patch | 24 - src/patches/asterisk-no-ffmpeg.patch | 11 - src/patches/asterisk-ssl-reader-should-block.patch | 28 - .../{ => bash}/bash-3.2-ssh_source_bash.patch | 0 src/patches/{ => bash}/bash-4.0-paths-1.patch | 0 src/patches/{ => bash}/bash-4.0-profile-1.patch | 0 ...drivers-3.8.3-ath_ignore_eeprom_regdomain.patch | 39 - .../{ => coreutils}/coreutils-8.27-uname-1.patch | 0 .../{ => coreutils}/coreutils-8.32-i18n-1.patch | 0 src/patches/cups-str4609.patch | 423 -- src/patches/db-4.4.20-fixes-1.patch | 111 - src/patches/diffutils-2.8.1-i18n-1.patch | 802 --- ..._support_for_structure_type_43_tpm_device.patch | 30 - .../dmidecode-3.3-fix_crash_with_u_option.patch | 34 + ...3-fix_the_condition_error_in_ascii_filter.patch | 30 + src/patches/dpfhack.patch | 12 - src/patches/fireinfo-2.2.0-python-3.8.patch | 26 + ...-when-proc-cpuinfo-doesn-t-have-any-infor.patch | 34 - ...Ignore-any-systems-with-ID-Default-string.patch | 25 - ...upport-upstream-proxy-with-authentication.patch | 61 - .../grub-2.02_disable_vga_fallback.patch | 0 src/patches/gzip-1.9-gnulib.patch | 189 - .../igb-5.3.4.4_fix_hung_at_dev_get_stats.patch | 35 - .../iptables-1.4.14-ipp2p-0.8.2-ipfire.patch | 481 -- src/patches/iputils-20020927-headers.patch | 150 - src/patches/iputils-20020927-rh.patch | 31 - src/patches/iputils-glibckernheaders.patch | 74 - src/patches/kbd-1.12-backspace-1.patch | 232 - src/patches/kbd-1.12-gcc4_fixes-1.patch | 54 - src/patches/kbd-1.12-more-programs-1.patch | 46 - src/patches/libcap-2.50-install_capsh_again.patch | 38 + ...c-0.9.3-perl-i586-regular-stack-protector.patch | 0 .../linux-3.10-smsc95xx-add_mac_addr_param.patch | 82 - ...3.10.10-mv_cesa_disable_failing_hmac_sha1.patch | 19 - src/patches/linux-3.10.39-add_libertas_uap.patch | 5081 -------------------- .../linux-3.14.79-rpi-suspend-not-inline.patch | 12 - ...ux-4.14-Revert-usb-dwc2-Fix-DMA-alignment.patch | 99 - ...x-4.9.8-rt2x00usb_suppress_queue_warnings.patch | 42 - src/patches/lzo-2.06-CVE-2014-4607.patch | 245 - src/patches/netpbm-10.26.46-getline.patch | 202 - src/patches/openssl-1.0.0-beta5-enginesdir.patch | 52 - src/patches/openssl-1.0.2a-rpmbuild.patch | 115 - .../openssl-1.0.2a_disable_ssse3_for_amd.patch | 11 - src/patches/openssl-1.0.2g-disable-sslv2v3.patch | 18 - src/patches/pam-0.99.10.0-rlimit-build-fix.patch | 28 - src/patches/pcre-8.38-upstream_fixes-1.patch | 1408 ------ src/patches/python-pycurl-no-static-libs.patch | 12 - src/patches/sarg/sarg-2.3.11-format.patch | 45 - ...-configure.patch => sarg-2.4.0-configure.patch} | 26 +- src/patches/sarg/sarg-2.4.0-format.patch | 33 + .../tcp_wrappers-7.6-shared_lib_plus_plus-1.patch | 1035 ---- src/patches/udev-208-fix_uint8_t.patch | 11 - src/patches/udev-208_remove_systemd_log.patch | 12 - 407 files changed, 5603 insertions(+), 21279 deletions(-) delete mode 100644 config/asterisk/asterisk.logrotate delete mode 100644 config/backup/includes/asterisk delete mode 100644 config/backup/includes/lcd4linux delete mode 100644 config/backup/includes/motion delete mode 100644 config/backup/includes/sane mode change 100755 => 100644 config/elinks/elinks.conf delete mode 100644 config/fbset/fb.modes delete mode 100644 config/miniupnpd/miniupnpd.conf delete mode 100644 config/motion/motion.conf delete mode 100644 config/rootfiles/common/fbset rename config/rootfiles/{packages => common}/intltool (69%) delete mode 100644 config/rootfiles/common/libupnp copy config/rootfiles/{packages/perl-common-sense => common/perl-Data-UUID} (73%) delete mode 100644 config/rootfiles/common/python-pyparsing copy config/rootfiles/core/{157 => 158}/exclude (100%) copy config/rootfiles/{oldcore/136 => core/158}/filelists/XML-Parser (100%) copy config/rootfiles/core/{157 => 158}/filelists/apache2 (100%) rename config/rootfiles/core/{157 => 158}/filelists/armv5tel/boost (100%) rename config/rootfiles/core/{157 => 158}/filelists/backup (100%) copy config/rootfiles/{oldcore/100 => core/158}/filelists/bind (100%) copy config/rootfiles/{oldcore/121 => core/158}/filelists/ca-certificates (100%) copy config/rootfiles/core/{157 => 158}/filelists/curl (100%) copy config/rootfiles/{oldcore/52 => core/158}/filelists/ethtool (100%) copy config/rootfiles/core/{157 => 158}/filelists/expat (100%) create mode 100644 config/rootfiles/core/158/filelists/files copy config/rootfiles/{oldcore/127 => core/158}/filelists/fireinfo (100%) copy config/rootfiles/core/{157 => 158}/filelists/fuse (100%) copy config/rootfiles/core/{157 => 158}/filelists/glib (100%) copy config/rootfiles/{oldcore/110 => core/158}/filelists/gnutls (100%) copy config/rootfiles/{oldcore/111 => core/158}/filelists/gzip (100%) copy config/rootfiles/{oldcore/132 => core/158}/filelists/hwdata (100%) rename config/rootfiles/core/{157 => 158}/filelists/i586/boost (100%) copy config/rootfiles/{oldcore/101 => core/158}/filelists/i586/dmidecode (100%) copy config/rootfiles/{oldcore/121 => core/158}/filelists/i586/intel-microcode (100%) copy config/rootfiles/core/{157 => 158}/filelists/iputils (100%) copy config/rootfiles/{oldcore/128 => core/158}/filelists/knot (100%) copy config/rootfiles/{oldcore/104 => core/158}/filelists/libcap (100%) copy config/rootfiles/core/{157 => 158}/filelists/libedit (100%) copy config/rootfiles/{oldcore/82 => core/158}/filelists/libnl-3 (100%) copy config/rootfiles/{oldcore/109 => core/158}/filelists/libpcap (100%) copy config/rootfiles/{oldcore/145 => core/158}/filelists/libusb (100%) copy config/rootfiles/core/{157 => 158}/filelists/libxcrypt (100%) create mode 100644 config/rootfiles/core/158/filelists/linux-firmware copy config/rootfiles/{oldcore/101 => core/158}/filelists/nettle (100%) copy config/rootfiles/{oldcore/155 => core/158}/filelists/pcre2 (100%) copy config/rootfiles/{oldcore/136 => core/158}/filelists/perl-CGI (100%) create mode 120000 config/rootfiles/core/158/filelists/perl-Data-UUID rename config/rootfiles/core/{157 => 158}/filelists/python3-inotify (100%) copy config/rootfiles/{oldcore/110 => core/158}/filelists/qpdf (100%) copy config/rootfiles/core/{157 => 158}/filelists/release-files (100%) copy config/rootfiles/{oldcore/121 => core/158}/filelists/rng-tools (100%) copy config/rootfiles/{oldcore/106 => core/158}/filelists/smartmontools (100%) copy config/rootfiles/core/{157 => 158}/filelists/sudo (100%) copy config/rootfiles/{oldcore/111 => core/158}/filelists/vnstat (100%) copy config/rootfiles/{oldcore/112 => core/158}/filelists/web-user-interface (100%) rename config/rootfiles/core/{157 => 158}/filelists/x86_64/boost (100%) copy config/rootfiles/{oldcore/101 => core/158}/filelists/x86_64/dmidecode (100%) copy config/rootfiles/{oldcore/121 => core/158}/filelists/x86_64/intel-microcode (100%) copy config/rootfiles/core/{157 => 158}/filelists/xfsprogs (100%) copy config/rootfiles/{oldcore/51 => core/158}/filelists/zd1211-firmware (100%) copy config/rootfiles/{oldcore/149 => core/158}/filelists/zstd (100%) copy config/rootfiles/{oldcore/154 => core/158}/update.sh (82%) rename config/rootfiles/{core => oldcore}/157/exclude (100%) rename config/rootfiles/{core => oldcore}/157/filelists/Canary-Stability (100%) rename config/rootfiles/{core => oldcore}/157/filelists/Convert-TNEF (100%) rename config/rootfiles/{core => oldcore}/157/filelists/Convert-UUlib (100%) rename config/rootfiles/{core => oldcore}/157/filelists/Crypt-PasswdMD5 (100%) rename config/rootfiles/{core => oldcore}/157/filelists/Digest (100%) rename config/rootfiles/{core => oldcore}/157/filelists/aarch64/linux (100%) rename config/rootfiles/{core => oldcore}/157/filelists/aarch64/linux-initrd (100%) rename config/rootfiles/{core => oldcore}/157/filelists/aarch64/lm_sensors (100%) rename config/rootfiles/{core => oldcore}/157/filelists/apache2 (100%) rename config/rootfiles/{core => oldcore}/157/filelists/armv5tel/linux-initrd-multi (100%) rename config/rootfiles/{core => oldcore}/157/filelists/armv5tel/linux-multi (100%) rename config/rootfiles/{core => oldcore}/157/filelists/armv5tel/lm_sensors (100%) rename config/rootfiles/{core => oldcore}/157/filelists/bash (100%) copy config/rootfiles/oldcore/{112 => 157}/filelists/boost (100%) rename config/rootfiles/{core => oldcore}/157/filelists/collectd (100%) rename config/rootfiles/{core => oldcore}/157/filelists/curl (100%) rename config/rootfiles/{core => oldcore}/157/filelists/ddns (100%) rename config/rootfiles/{core => oldcore}/157/filelists/dejavu-fonts-ttf (100%) rename config/rootfiles/{core => oldcore}/157/filelists/expat (100%) rename config/rootfiles/{core => oldcore}/157/filelists/file (100%) rename config/rootfiles/{core => oldcore}/157/filelists/files (100%) rename config/rootfiles/{core => oldcore}/157/filelists/fuse (100%) rename config/rootfiles/{core => oldcore}/157/filelists/glib (100%) rename config/rootfiles/{core => oldcore}/157/filelists/i586/linux (100%) rename config/rootfiles/{core => oldcore}/157/filelists/i586/linux-initrd (100%) rename config/rootfiles/{core => oldcore}/157/filelists/i586/lm_sensors (100%) rename config/rootfiles/{core => oldcore}/157/filelists/iproute2 (100%) rename config/rootfiles/{core => oldcore}/157/filelists/iputils (100%) rename config/rootfiles/{core => oldcore}/157/filelists/less (100%) rename config/rootfiles/{core => oldcore}/157/filelists/libaio (100%) rename config/rootfiles/{core => oldcore}/157/filelists/libarchive (100%) rename config/rootfiles/{core => oldcore}/157/filelists/libcap-ng (100%) rename config/rootfiles/{core => oldcore}/157/filelists/libedit (100%) rename config/rootfiles/{core => oldcore}/157/filelists/libevent2 (100%) rename config/rootfiles/{core => oldcore}/157/filelists/libgcrypt (100%) rename config/rootfiles/{core => oldcore}/157/filelists/libgpg-error (100%) rename config/rootfiles/{core => oldcore}/157/filelists/libjpeg (100%) rename config/rootfiles/{core => oldcore}/157/filelists/libupnp (100%) rename config/rootfiles/{core => oldcore}/157/filelists/libxcrypt (100%) rename config/rootfiles/{core => oldcore}/157/filelists/libxml2 (100%) rename config/rootfiles/{core => oldcore}/157/filelists/libxslt (100%) rename config/rootfiles/{core => oldcore}/157/filelists/newt (100%) rename config/rootfiles/{core => oldcore}/157/filelists/openssh (100%) rename config/rootfiles/{core => oldcore}/157/filelists/pixman (100%) rename config/rootfiles/{core => oldcore}/157/filelists/poppler (100%) rename config/rootfiles/{core => oldcore}/157/filelists/poppler-data (100%) rename config/rootfiles/{core => oldcore}/157/filelists/ppp (100%) rename config/rootfiles/{core => oldcore}/157/filelists/python3-daemon (100%) rename config/rootfiles/{core => oldcore}/157/filelists/readline (100%) rename config/rootfiles/{core => oldcore}/157/filelists/release-files (100%) rename config/rootfiles/{core => oldcore}/157/filelists/sqlite (100%) rename config/rootfiles/{core => oldcore}/157/filelists/squid (100%) rename config/rootfiles/{core => oldcore}/157/filelists/sudo (100%) rename config/rootfiles/{core => oldcore}/157/filelists/x86_64/linux (100%) rename config/rootfiles/{core => oldcore}/157/filelists/x86_64/linux-initrd (100%) rename config/rootfiles/{core => oldcore}/157/filelists/x86_64/lm_sensors (100%) rename config/rootfiles/{core => oldcore}/157/filelists/xfsprogs (100%) rename config/rootfiles/{core => oldcore}/157/update.sh (100%) delete mode 100644 config/rootfiles/packages/aarch64/sane delete mode 100644 config/rootfiles/packages/armv5tel/sane delete mode 100644 config/rootfiles/packages/asterisk delete mode 100644 config/rootfiles/packages/bluetooth delete mode 100644 config/rootfiles/packages/dpfhack delete mode 100644 config/rootfiles/packages/lcd4linux delete mode 100644 config/rootfiles/packages/libmicrohttpd delete mode 100644 config/rootfiles/packages/libsrtp delete mode 100644 config/rootfiles/packages/miniupnpd delete mode 100644 config/rootfiles/packages/motion create mode 100644 config/rootfiles/packages/python3-pyparsing create mode 100644 config/rootfiles/packages/python3-setuptools delete mode 100644 config/rootfiles/packages/sane delete mode 100644 config/rootfiles/packages/sendEmail delete mode 100644 config/sane/saned.conf delete mode 100755 config/upnp/gatedesc.xml create mode 100644 html/html/images/apple.png delete mode 100755 lfs/asterisk delete mode 100644 lfs/dpfhack delete mode 100644 lfs/lcd4linux delete mode 100644 lfs/libmicrohttpd delete mode 100644 lfs/libsrtp delete mode 100644 lfs/libupnp delete mode 100644 lfs/miniupnpd delete mode 100644 lfs/motion copy lfs/{perl-Font-TTF => perl-Data-UUID} (96%) rename lfs/{python-pyparsing => python3-pyparsing} (94%) rename lfs/{fbset => python3-setuptools} (93%) delete mode 100644 lfs/sane delete mode 100644 lfs/sendEmail delete mode 100644 src/initscripts/networking/red.down/10-miniupnpd delete mode 100644 src/initscripts/networking/red.up/10-miniupnpd delete mode 100644 src/initscripts/packages/asterisk delete mode 100644 src/initscripts/packages/bluetooth delete mode 100644 src/initscripts/packages/lcd4linux delete mode 100644 src/initscripts/packages/miniupnpd delete mode 100644 src/initscripts/packages/motion delete mode 100644 src/initscripts/packages/sane delete mode 100644 src/initscripts/system/upnpd delete mode 100644 src/paks/asterisk/install.sh delete mode 100644 src/paks/asterisk/uninstall.sh delete mode 100644 src/paks/asterisk/update.sh delete mode 100644 src/paks/motion/install.sh delete mode 100644 src/paks/motion/uninstall.sh delete mode 100644 src/paks/motion/update.sh delete mode 100644 src/patches/Python-2.7.3-gdbm-1.patch delete mode 100644 src/patches/Python-2.7.9-gdbm-1.patch delete mode 100644 src/patches/arm-dont-require-distutils.patch delete mode 100644 src/patches/arm-multi-grsec-compile-fixes.patch delete mode 100644 src/patches/asterisk-no-ffmpeg.patch delete mode 100644 src/patches/asterisk-ssl-reader-should-block.patch rename src/patches/{ => bash}/bash-3.2-ssh_source_bash.patch (100%) rename src/patches/{ => bash}/bash-4.0-paths-1.patch (100%) rename src/patches/{ => bash}/bash-4.0-profile-1.patch (100%) delete mode 100644 src/patches/compat-drivers-3.8.3-ath_ignore_eeprom_regdomain.patch rename src/patches/{ => coreutils}/coreutils-8.27-uname-1.patch (100%) rename src/patches/{ => coreutils}/coreutils-8.32-i18n-1.patch (100%) delete mode 100644 src/patches/cups-str4609.patch delete mode 100644 src/patches/db-4.4.20-fixes-1.patch delete mode 100644 src/patches/diffutils-2.8.1-i18n-1.patch delete mode 100644 src/patches/dmidecode/add_support_for_structure_type_43_tpm_device.patch create mode 100644 src/patches/dmidecode/dmidecode-3.3-fix_crash_with_u_option.patch create mode 100644 src/patches/dmidecode/dmidecode-3.3-fix_the_condition_error_in_ascii_filter.patch delete mode 100644 src/patches/dpfhack.patch create mode 100644 src/patches/fireinfo-2.2.0-python-3.8.patch delete mode 100644 src/patches/fireinfo-Don-t-crash-when-proc-cpuinfo-doesn-t-have-any-infor.patch delete mode 100644 src/patches/fireinfo-Ignore-any-systems-with-ID-Default-string.patch delete mode 100644 src/patches/fireinfo-support-upstream-proxy-with-authentication.patch rename src/patches/{ => grub}/grub-2.02_disable_vga_fallback.patch (100%) delete mode 100644 src/patches/gzip-1.9-gnulib.patch delete mode 100644 src/patches/igb-5.3.4.4_fix_hung_at_dev_get_stats.patch delete mode 100644 src/patches/iptables-1.4.14-ipp2p-0.8.2-ipfire.patch delete mode 100644 src/patches/iputils-20020927-headers.patch delete mode 100644 src/patches/iputils-20020927-rh.patch delete mode 100644 src/patches/iputils-glibckernheaders.patch delete mode 100644 src/patches/kbd-1.12-backspace-1.patch delete mode 100644 src/patches/kbd-1.12-gcc4_fixes-1.patch delete mode 100644 src/patches/kbd-1.12-more-programs-1.patch create mode 100644 src/patches/libcap-2.50-install_capsh_again.patch rename src/patches/{ => libloc}/libloc-0.9.3-perl-i586-regular-stack-protector.patch (100%) delete mode 100644 src/patches/linux-3.10-smsc95xx-add_mac_addr_param.patch delete mode 100644 src/patches/linux-3.10.10-mv_cesa_disable_failing_hmac_sha1.patch delete mode 100644 src/patches/linux-3.10.39-add_libertas_uap.patch delete mode 100644 src/patches/linux/linux-3.14.79-rpi-suspend-not-inline.patch delete mode 100644 src/patches/linux/linux-4.14-Revert-usb-dwc2-Fix-DMA-alignment.patch delete mode 100644 src/patches/linux/linux-4.9.8-rt2x00usb_suppress_queue_warnings.patch delete mode 100644 src/patches/lzo-2.06-CVE-2014-4607.patch delete mode 100644 src/patches/netpbm-10.26.46-getline.patch delete mode 100644 src/patches/openssl-1.0.0-beta5-enginesdir.patch delete mode 100644 src/patches/openssl-1.0.2a-rpmbuild.patch delete mode 100644 src/patches/openssl-1.0.2a_disable_ssse3_for_amd.patch delete mode 100644 src/patches/openssl-1.0.2g-disable-sslv2v3.patch delete mode 100644 src/patches/pam-0.99.10.0-rlimit-build-fix.patch delete mode 100644 src/patches/pcre-8.38-upstream_fixes-1.patch delete mode 100644 src/patches/python-pycurl-no-static-libs.patch delete mode 100644 src/patches/sarg/sarg-2.3.11-format.patch rename src/patches/sarg/{sarg-2.3.11-configure.patch => sarg-2.4.0-configure.patch} (66%) create mode 100644 src/patches/sarg/sarg-2.4.0-format.patch delete mode 100644 src/patches/tcp_wrappers-7.6-shared_lib_plus_plus-1.patch delete mode 100644 src/patches/udev-208-fix_uint8_t.patch delete mode 100644 src/patches/udev-208_remove_systemd_log.patch
Difference in files: diff --git a/config/asterisk/asterisk.logrotate b/config/asterisk/asterisk.logrotate deleted file mode 100644 index 887d04a33..000000000 --- a/config/asterisk/asterisk.logrotate +++ /dev/null @@ -1,9 +0,0 @@ -/var/log/asterisk/messages /var/log/asterisk/full /var/log/asterisk/security /var/log/asterisk/*_log { - weekly - missingok - rotate 4 - sharedscripts - postrotate - /usr/sbin/asterisk -rx 'logger reload' > /dev/null 2> /dev/null - endscript -} diff --git a/config/backup/backup.pl b/config/backup/backup.pl index d2e531252..8dffbf2e1 100644 --- a/config/backup/backup.pl +++ b/config/backup/backup.pl @@ -57,12 +57,21 @@ make_backup() { make_addon_backup "${addon}" done
- tar cvzf "${filename}" \ + # Backup using global exclude/include definitions + tar cvf "${filename}" \ --exclude-from="/var/ipfire/backup/exclude" \ + $(process_includes "/var/ipfire/backup/include") \ + "$@" + + # Backup using user exclude/include definitions and append to global backup + tar rvf "${filename}" \ --exclude-from="/var/ipfire/backup/exclude.user" \ - $(process_includes "/var/ipfire/backup/include" "/var/ipfire/backup/include.user") \ + $(process_includes "/var/ipfire/backup/include.user") \ "$@"
+ # gzip the combined global/user backup and use .ipf suffix + gzip --suffix .ipf "${filename}" + return 0 }
@@ -206,7 +215,7 @@ main() { local filename="${1}"
if [ -z "${filename}" ]; then - filename="/var/ipfire/backup/${NOW}.ipf" + filename="/var/ipfire/backup/${NOW}" fi
make_backup "${filename}" $(find_logfiles) @@ -216,7 +225,7 @@ main() { local filename="${1}"
if [ -z "${filename}" ]; then - filename="/var/ipfire/backup/${NOW}.ipf" + filename="/var/ipfire/backup/${NOW}" fi
make_backup "${filename}" diff --git a/config/backup/includes/asterisk b/config/backup/includes/asterisk deleted file mode 100644 index ccc47ea26..000000000 --- a/config/backup/includes/asterisk +++ /dev/null @@ -1,2 +0,0 @@ -/var/ipfire/asterisk/ -/var/log/asterisk/cdr-csv/ diff --git a/config/backup/includes/lcd4linux b/config/backup/includes/lcd4linux deleted file mode 100644 index 40fa69c51..000000000 --- a/config/backup/includes/lcd4linux +++ /dev/null @@ -1 +0,0 @@ -/etc/lcd4linux.conf diff --git a/config/backup/includes/motion b/config/backup/includes/motion deleted file mode 100644 index 79652aa30..000000000 --- a/config/backup/includes/motion +++ /dev/null @@ -1 +0,0 @@ -/etc/motion.conf diff --git a/config/backup/includes/sane b/config/backup/includes/sane deleted file mode 100644 index 6b6beb942..000000000 --- a/config/backup/includes/sane +++ /dev/null @@ -1 +0,0 @@ -/etc/sane.d/ diff --git a/config/ca-certificates/certdata.txt b/config/ca-certificates/certdata.txt index 478ab0895..56ab1c19f 100644 --- a/config/ca-certificates/certdata.txt +++ b/config/ca-certificates/certdata.txt @@ -1,4 +1,4 @@ -# +# # This Source Code Form is subject to the terms of the Mozilla Public # License, v. 2.0. If a copy of the MPL was not distributed with this # file, You can obtain one at http://mozilla.org/MPL/2.0/. @@ -461,7 +461,10 @@ CKA_VALUE MULTILINE_OCTAL END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE -CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE +# For Email Distrust After: Wed Aug 31 00:00:00 2022 +CKA_NSS_EMAIL_DISTRUST_AFTER MULTILINE_OCTAL +\062\062\060\070\063\061\060\060\060\060\060\060\132 +END
# Trust for Certificate "Verisign Class 1 Public Primary Certification Authority - G3" # Issuer: CN=VeriSign Class 1 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US @@ -628,7 +631,10 @@ CKA_VALUE MULTILINE_OCTAL END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE -CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE +# For Email Distrust After: Wed Aug 31 00:00:00 2022 +CKA_NSS_EMAIL_DISTRUST_AFTER MULTILINE_OCTAL +\062\062\060\070\063\061\060\060\060\060\060\060\132 +END
# Trust for Certificate "Verisign Class 2 Public Primary Certification Authority - G3" # Issuer: CN=VeriSign Class 2 Public Primary Certification Authority - G3,OU="(c) 1999 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US @@ -1414,187 +1420,6 @@ CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
-# -# Certificate "QuoVadis Root CA" -# -# Issuer: CN=QuoVadis Root Certification Authority,OU=Root Certification Authority,O=QuoVadis Limited,C=BM -# Serial Number: 985026699 (0x3ab6508b) -# Subject: CN=QuoVadis Root Certification Authority,OU=Root Certification Authority,O=QuoVadis Limited,C=BM -# Not Valid Before: Mon Mar 19 18:33:33 2001 -# Not Valid After : Wed Mar 17 18:33:33 2021 -# Fingerprint (MD5): 27:DE:36:FE:72:B7:00:03:00:9D:F4:F0:1E:6C:04:24 -# Fingerprint (SHA1): DE:3F:40:BD:50:93:D3:9B:6C:60:F6:DA:BC:07:62:01:00:89:76:C9 -CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE -CKA_TOKEN CK_BBOOL CK_TRUE -CKA_PRIVATE CK_BBOOL CK_FALSE -CKA_MODIFIABLE CK_BBOOL CK_FALSE -CKA_LABEL UTF8 "QuoVadis Root CA" -CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 -CKA_SUBJECT MULTILINE_OCTAL -\060\177\061\013\060\011\006\003\125\004\006\023\002\102\115\061 -\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144 -\151\163\040\114\151\155\151\164\145\144\061\045\060\043\006\003 -\125\004\013\023\034\122\157\157\164\040\103\145\162\164\151\146 -\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164 -\171\061\056\060\054\006\003\125\004\003\023\045\121\165\157\126 -\141\144\151\163\040\122\157\157\164\040\103\145\162\164\151\146 -\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164 -\171 -END -CKA_ID UTF8 "0" -CKA_ISSUER MULTILINE_OCTAL -\060\177\061\013\060\011\006\003\125\004\006\023\002\102\115\061 -\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144 -\151\163\040\114\151\155\151\164\145\144\061\045\060\043\006\003 -\125\004\013\023\034\122\157\157\164\040\103\145\162\164\151\146 -\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164 -\171\061\056\060\054\006\003\125\004\003\023\045\121\165\157\126 -\141\144\151\163\040\122\157\157\164\040\103\145\162\164\151\146 -\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164 -\171 -END -CKA_SERIAL_NUMBER MULTILINE_OCTAL -\002\004\072\266\120\213 -END -CKA_VALUE MULTILINE_OCTAL -\060\202\005\320\060\202\004\270\240\003\002\001\002\002\004\072 -\266\120\213\060\015\006\011\052\206\110\206\367\015\001\001\005 -\005\000\060\177\061\013\060\011\006\003\125\004\006\023\002\102 -\115\061\031\060\027\006\003\125\004\012\023\020\121\165\157\126 -\141\144\151\163\040\114\151\155\151\164\145\144\061\045\060\043 -\006\003\125\004\013\023\034\122\157\157\164\040\103\145\162\164 -\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162 -\151\164\171\061\056\060\054\006\003\125\004\003\023\045\121\165 -\157\126\141\144\151\163\040\122\157\157\164\040\103\145\162\164 -\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157\162 -\151\164\171\060\036\027\015\060\061\060\063\061\071\061\070\063 -\063\063\063\132\027\015\062\061\060\063\061\067\061\070\063\063 -\063\063\132\060\177\061\013\060\011\006\003\125\004\006\023\002 -\102\115\061\031\060\027\006\003\125\004\012\023\020\121\165\157 -\126\141\144\151\163\040\114\151\155\151\164\145\144\061\045\060 -\043\006\003\125\004\013\023\034\122\157\157\164\040\103\145\162 -\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157 -\162\151\164\171\061\056\060\054\006\003\125\004\003\023\045\121 -\165\157\126\141\144\151\163\040\122\157\157\164\040\103\145\162 -\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150\157 -\162\151\164\171\060\202\001\042\060\015\006\011\052\206\110\206 -\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001\012 -\002\202\001\001\000\277\141\265\225\123\272\127\374\372\362\147 -\013\072\032\337\021\200\144\225\264\321\274\315\172\317\366\051 -\226\056\044\124\100\044\070\367\032\205\334\130\114\313\244\047 -\102\227\320\237\203\212\303\344\006\003\133\000\245\121\036\160 -\004\164\342\301\324\072\253\327\255\073\007\030\005\216\375\203 -\254\352\146\331\030\033\150\212\365\127\032\230\272\365\355\166 -\075\174\331\336\224\152\073\113\027\301\325\217\275\145\070\072 -\225\320\075\125\066\116\337\171\127\061\052\036\330\131\145\111 -\130\040\230\176\253\137\176\237\351\326\115\354\203\164\251\307 -\154\330\356\051\112\205\052\006\024\371\124\346\323\332\145\007 -\213\143\067\022\327\320\354\303\173\040\101\104\243\355\313\240 -\027\341\161\145\316\035\146\061\367\166\001\031\310\175\003\130 -\266\225\111\035\246\022\046\350\306\014\166\340\343\146\313\352 -\135\246\046\356\345\314\137\275\147\247\001\047\016\242\312\124 -\305\261\172\225\035\161\036\112\051\212\003\334\152\105\301\244 -\031\136\157\066\315\303\242\260\267\376\134\070\342\122\274\370 -\104\103\346\220\273\002\003\001\000\001\243\202\002\122\060\202 -\002\116\060\075\006\010\053\006\001\005\005\007\001\001\004\061 -\060\057\060\055\006\010\053\006\001\005\005\007\060\001\206\041 -\150\164\164\160\163\072\057\057\157\143\163\160\056\161\165\157 -\166\141\144\151\163\157\146\146\163\150\157\162\145\056\143\157 -\155\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001 -\001\377\060\202\001\032\006\003\125\035\040\004\202\001\021\060 -\202\001\015\060\202\001\011\006\011\053\006\001\004\001\276\130 -\000\001\060\201\373\060\201\324\006\010\053\006\001\005\005\007 -\002\002\060\201\307\032\201\304\122\145\154\151\141\156\143\145 -\040\157\156\040\164\150\145\040\121\165\157\126\141\144\151\163 -\040\122\157\157\164\040\103\145\162\164\151\146\151\143\141\164 -\145\040\142\171\040\141\156\171\040\160\141\162\164\171\040\141 -\163\163\165\155\145\163\040\141\143\143\145\160\164\141\156\143 -\145\040\157\146\040\164\150\145\040\164\150\145\156\040\141\160 -\160\154\151\143\141\142\154\145\040\163\164\141\156\144\141\162 -\144\040\164\145\162\155\163\040\141\156\144\040\143\157\156\144 -\151\164\151\157\156\163\040\157\146\040\165\163\145\054\040\143 -\145\162\164\151\146\151\143\141\164\151\157\156\040\160\162\141 -\143\164\151\143\145\163\054\040\141\156\144\040\164\150\145\040 -\121\165\157\126\141\144\151\163\040\103\145\162\164\151\146\151 -\143\141\164\145\040\120\157\154\151\143\171\056\060\042\006\010 -\053\006\001\005\005\007\002\001\026\026\150\164\164\160\072\057 -\057\167\167\167\056\161\165\157\166\141\144\151\163\056\142\155 -\060\035\006\003\125\035\016\004\026\004\024\213\113\155\355\323 -\051\271\006\031\354\071\071\251\360\227\204\152\313\357\337\060 -\201\256\006\003\125\035\043\004\201\246\060\201\243\200\024\213 -\113\155\355\323\051\271\006\031\354\071\071\251\360\227\204\152 -\313\357\337\241\201\204\244\201\201\060\177\061\013\060\011\006 -\003\125\004\006\023\002\102\115\061\031\060\027\006\003\125\004 -\012\023\020\121\165\157\126\141\144\151\163\040\114\151\155\151 -\164\145\144\061\045\060\043\006\003\125\004\013\023\034\122\157 -\157\164\040\103\145\162\164\151\146\151\143\141\164\151\157\156 -\040\101\165\164\150\157\162\151\164\171\061\056\060\054\006\003 -\125\004\003\023\045\121\165\157\126\141\144\151\163\040\122\157 -\157\164\040\103\145\162\164\151\146\151\143\141\164\151\157\156 -\040\101\165\164\150\157\162\151\164\171\202\004\072\266\120\213 -\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001\006 -\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003 -\202\001\001\000\212\324\024\265\376\364\232\222\247\031\324\244 -\176\162\030\217\331\150\174\122\044\335\147\157\071\172\304\252 -\136\075\342\130\260\115\160\230\204\141\350\033\343\151\030\016 -\316\373\107\120\240\116\377\360\044\037\275\262\316\365\047\374 -\354\057\123\252\163\173\003\075\164\156\346\026\236\353\245\056 -\304\277\126\047\120\053\142\272\276\113\034\074\125\134\101\035 -\044\276\202\040\107\135\325\104\176\172\026\150\337\175\115\121 -\160\170\127\035\063\036\375\002\231\234\014\315\012\005\117\307 -\273\216\244\165\372\112\155\261\200\216\011\126\271\234\032\140 -\376\135\301\327\172\334\021\170\320\326\135\301\267\325\255\062 -\231\003\072\212\314\124\045\071\061\201\173\023\042\121\272\106 -\154\241\273\236\372\004\154\111\046\164\217\322\163\353\314\060 -\242\346\352\131\042\207\370\227\365\016\375\352\314\222\244\026 -\304\122\030\352\041\316\261\361\346\204\201\345\272\251\206\050 -\362\103\132\135\022\235\254\036\331\250\345\012\152\247\177\240 -\207\051\317\362\211\115\324\354\305\342\346\172\320\066\043\212 -\112\164\066\371 -END -CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE -CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE -CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE - -# Trust for Certificate "QuoVadis Root CA" -# Issuer: CN=QuoVadis Root Certification Authority,OU=Root Certification Authority,O=QuoVadis Limited,C=BM -# Serial Number: 985026699 (0x3ab6508b) -# Subject: CN=QuoVadis Root Certification Authority,OU=Root Certification Authority,O=QuoVadis Limited,C=BM -# Not Valid Before: Mon Mar 19 18:33:33 2001 -# Not Valid After : Wed Mar 17 18:33:33 2021 -# Fingerprint (MD5): 27:DE:36:FE:72:B7:00:03:00:9D:F4:F0:1E:6C:04:24 -# Fingerprint (SHA1): DE:3F:40:BD:50:93:D3:9B:6C:60:F6:DA:BC:07:62:01:00:89:76:C9 -CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST -CKA_TOKEN CK_BBOOL CK_TRUE -CKA_PRIVATE CK_BBOOL CK_FALSE -CKA_MODIFIABLE CK_BBOOL CK_FALSE -CKA_LABEL UTF8 "QuoVadis Root CA" -CKA_CERT_SHA1_HASH MULTILINE_OCTAL -\336\077\100\275\120\223\323\233\154\140\366\332\274\007\142\001 -\000\211\166\311 -END -CKA_CERT_MD5_HASH MULTILINE_OCTAL -\047\336\066\376\162\267\000\003\000\235\364\360\036\154\004\044 -END -CKA_ISSUER MULTILINE_OCTAL -\060\177\061\013\060\011\006\003\125\004\006\023\002\102\115\061 -\031\060\027\006\003\125\004\012\023\020\121\165\157\126\141\144 -\151\163\040\114\151\155\151\164\145\144\061\045\060\043\006\003 -\125\004\013\023\034\122\157\157\164\040\103\145\162\164\151\146 -\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164 -\171\061\056\060\054\006\003\125\004\003\023\045\121\165\157\126 -\141\144\151\163\040\122\157\157\164\040\103\145\162\164\151\146 -\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164 -\171 -END -CKA_SERIAL_NUMBER MULTILINE_OCTAL -\002\004\072\266\120\213 -END -CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR -CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR -CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST -CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE - # # Certificate "QuoVadis Root CA 2" # @@ -2076,129 +1901,6 @@ CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
-# -# Certificate "Sonera Class 2 Root CA" -# -# Issuer: CN=Sonera Class2 CA,O=Sonera,C=FI -# Serial Number: 29 (0x1d) -# Subject: CN=Sonera Class2 CA,O=Sonera,C=FI -# Not Valid Before: Fri Apr 06 07:29:40 2001 -# Not Valid After : Tue Apr 06 07:29:40 2021 -# Fingerprint (MD5): A3:EC:75:0F:2E:88:DF:FA:48:01:4E:0B:5C:48:6F:FB -# Fingerprint (SHA1): 37:F7:6D:E6:07:7C:90:C5:B1:3E:93:1A:B7:41:10:B4:F2:E4:9A:27 -CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE -CKA_TOKEN CK_BBOOL CK_TRUE -CKA_PRIVATE CK_BBOOL CK_FALSE -CKA_MODIFIABLE CK_BBOOL CK_FALSE -CKA_LABEL UTF8 "Sonera Class 2 Root CA" -CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 -CKA_SUBJECT MULTILINE_OCTAL -\060\071\061\013\060\011\006\003\125\004\006\023\002\106\111\061 -\017\060\015\006\003\125\004\012\023\006\123\157\156\145\162\141 -\061\031\060\027\006\003\125\004\003\023\020\123\157\156\145\162 -\141\040\103\154\141\163\163\062\040\103\101 -END -CKA_ID UTF8 "0" -CKA_ISSUER MULTILINE_OCTAL -\060\071\061\013\060\011\006\003\125\004\006\023\002\106\111\061 -\017\060\015\006\003\125\004\012\023\006\123\157\156\145\162\141 -\061\031\060\027\006\003\125\004\003\023\020\123\157\156\145\162 -\141\040\103\154\141\163\163\062\040\103\101 -END -CKA_SERIAL_NUMBER MULTILINE_OCTAL -\002\001\035 -END -CKA_VALUE MULTILINE_OCTAL -\060\202\003\040\060\202\002\010\240\003\002\001\002\002\001\035 -\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060 -\071\061\013\060\011\006\003\125\004\006\023\002\106\111\061\017 -\060\015\006\003\125\004\012\023\006\123\157\156\145\162\141\061 -\031\060\027\006\003\125\004\003\023\020\123\157\156\145\162\141 -\040\103\154\141\163\163\062\040\103\101\060\036\027\015\060\061 -\060\064\060\066\060\067\062\071\064\060\132\027\015\062\061\060 -\064\060\066\060\067\062\071\064\060\132\060\071\061\013\060\011 -\006\003\125\004\006\023\002\106\111\061\017\060\015\006\003\125 -\004\012\023\006\123\157\156\145\162\141\061\031\060\027\006\003 -\125\004\003\023\020\123\157\156\145\162\141\040\103\154\141\163 -\163\062\040\103\101\060\202\001\042\060\015\006\011\052\206\110 -\206\367\015\001\001\001\005\000\003\202\001\017\000\060\202\001 -\012\002\202\001\001\000\220\027\112\065\235\312\360\015\226\307 -\104\372\026\067\374\110\275\275\177\200\055\065\073\341\157\250 -\147\251\277\003\034\115\214\157\062\107\325\101\150\244\023\004 -\301\065\014\232\204\103\374\134\035\377\211\263\350\027\030\315 -\221\137\373\211\343\352\277\116\135\174\033\046\323\165\171\355 -\346\204\343\127\345\255\051\304\364\072\050\347\245\173\204\066 -\151\263\375\136\166\275\243\055\231\323\220\116\043\050\175\030 -\143\361\124\073\046\235\166\133\227\102\262\377\256\360\116\354 -\335\071\225\116\203\006\177\347\111\100\310\305\001\262\124\132 -\146\035\075\374\371\351\074\012\236\201\270\160\360\001\213\344 -\043\124\174\310\256\370\220\036\000\226\162\324\124\317\141\043 -\274\352\373\235\002\225\321\266\271\161\072\151\010\077\017\264 -\341\102\307\210\365\077\230\250\247\272\034\340\161\161\357\130 -\127\201\120\172\134\153\164\106\016\203\003\230\303\216\250\156 -\362\166\062\156\047\203\302\163\363\334\030\350\264\223\352\165 -\104\153\004\140\040\161\127\207\235\363\276\240\220\043\075\212 -\044\341\332\041\333\303\002\003\001\000\001\243\063\060\061\060 -\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377 -\060\021\006\003\125\035\016\004\012\004\010\112\240\252\130\204 -\323\136\074\060\013\006\003\125\035\017\004\004\003\002\001\006 -\060\015\006\011\052\206\110\206\367\015\001\001\005\005\000\003 -\202\001\001\000\132\316\207\371\026\162\025\127\113\035\331\233 -\347\242\046\060\354\223\147\337\326\055\322\064\257\367\070\245 -\316\253\026\271\253\057\174\065\313\254\320\017\264\114\053\374 -\200\357\153\214\221\137\066\166\367\333\263\033\031\352\364\262 -\021\375\141\161\104\277\050\263\072\035\277\263\103\350\237\277 -\334\061\010\161\260\235\215\326\064\107\062\220\306\145\044\367 -\240\112\174\004\163\217\071\157\027\214\162\265\275\113\310\172 -\370\173\203\303\050\116\234\011\352\147\077\262\147\004\033\303 -\024\332\370\347\111\044\221\320\035\152\372\141\071\357\153\347 -\041\165\006\007\330\022\264\041\040\160\102\161\201\332\074\232 -\066\276\246\133\015\152\154\232\037\221\173\371\371\357\102\272 -\116\116\236\314\014\215\224\334\331\105\234\136\354\102\120\143 -\256\364\135\304\261\022\334\312\073\250\056\235\024\132\005\165 -\267\354\327\143\342\272\065\266\004\010\221\350\332\235\234\366 -\146\265\030\254\012\246\124\046\064\063\322\033\301\324\177\032 -\072\216\013\252\062\156\333\374\117\045\237\331\062\307\226\132 -\160\254\337\114 -END -CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE -CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE -CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE - -# Trust for Certificate "Sonera Class 2 Root CA" -# Issuer: CN=Sonera Class2 CA,O=Sonera,C=FI -# Serial Number: 29 (0x1d) -# Subject: CN=Sonera Class2 CA,O=Sonera,C=FI -# Not Valid Before: Fri Apr 06 07:29:40 2001 -# Not Valid After : Tue Apr 06 07:29:40 2021 -# Fingerprint (MD5): A3:EC:75:0F:2E:88:DF:FA:48:01:4E:0B:5C:48:6F:FB -# Fingerprint (SHA1): 37:F7:6D:E6:07:7C:90:C5:B1:3E:93:1A:B7:41:10:B4:F2:E4:9A:27 -CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST -CKA_TOKEN CK_BBOOL CK_TRUE -CKA_PRIVATE CK_BBOOL CK_FALSE -CKA_MODIFIABLE CK_BBOOL CK_FALSE -CKA_LABEL UTF8 "Sonera Class 2 Root CA" -CKA_CERT_SHA1_HASH MULTILINE_OCTAL -\067\367\155\346\007\174\220\305\261\076\223\032\267\101\020\264 -\362\344\232\047 -END -CKA_CERT_MD5_HASH MULTILINE_OCTAL -\243\354\165\017\056\210\337\372\110\001\116\013\134\110\157\373 -END -CKA_ISSUER MULTILINE_OCTAL -\060\071\061\013\060\011\006\003\125\004\006\023\002\106\111\061 -\017\060\015\006\003\125\004\012\023\006\123\157\156\145\162\141 -\061\031\060\027\006\003\125\004\003\023\020\123\157\156\145\162 -\141\040\103\154\141\163\163\062\040\103\101 -END -CKA_SERIAL_NUMBER MULTILINE_OCTAL -\002\001\035 -END -CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR -CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR -CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST -CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE - # # Certificate "Camerfirma Chambers of Commerce Root" # @@ -2322,7 +2024,10 @@ CKA_VALUE MULTILINE_OCTAL END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE -CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE +# For Email Distrust After: Mon Mar 01 00:00:00 2021 +CKA_NSS_EMAIL_DISTRUST_AFTER MULTILINE_OCTAL +\062\061\060\063\060\061\060\060\060\060\060\060\132 +END
# Trust for Certificate "Camerfirma Chambers of Commerce Root" # Issuer: CN=Chambers of Commerce Root,OU=http://www.chambersign.org,O=AC Camerfirma SA CIF A82743287,C=EU @@ -2484,7 +2189,10 @@ CKA_VALUE MULTILINE_OCTAL END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE -CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE +# For Email Distrust After: Mon Mar 01 00:00:00 2021 +CKA_NSS_EMAIL_DISTRUST_AFTER MULTILINE_OCTAL +\062\061\060\063\060\061\060\060\060\060\060\060\132 +END
# Trust for Certificate "Camerfirma Global Chambersign Root" # Issuer: CN=Global Chambersign Root,OU=http://www.chambersign.org,O=AC Camerfirma SA CIF A82743287,C=EU @@ -5454,322 +5162,6 @@ CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
-# -# Certificate "GeoTrust Primary Certification Authority - G2" -# -# Issuer: CN=GeoTrust Primary Certification Authority - G2,OU=(c) 2007 GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US -# Serial Number:3c:b2:f4:48:0a:00:e2:fe:eb:24:3b:5e:60:3e:c3:6b -# Subject: CN=GeoTrust Primary Certification Authority - G2,OU=(c) 2007 GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US -# Not Valid Before: Mon Nov 05 00:00:00 2007 -# Not Valid After : Mon Jan 18 23:59:59 2038 -# Fingerprint (MD5): 01:5E:D8:6B:BD:6F:3D:8E:A1:31:F8:12:E0:98:73:6A -# Fingerprint (SHA1): 8D:17:84:D5:37:F3:03:7D:EC:70:FE:57:8B:51:9A:99:E6:10:D7:B0 -CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE -CKA_TOKEN CK_BBOOL CK_TRUE -CKA_PRIVATE CK_BBOOL CK_FALSE -CKA_MODIFIABLE CK_BBOOL CK_FALSE -CKA_LABEL UTF8 "GeoTrust Primary Certification Authority - G2" -CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 -CKA_SUBJECT MULTILINE_OCTAL -\060\201\230\061\013\060\011\006\003\125\004\006\023\002\125\123 -\061\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162 -\165\163\164\040\111\156\143\056\061\071\060\067\006\003\125\004 -\013\023\060\050\143\051\040\062\060\060\067\040\107\145\157\124 -\162\165\163\164\040\111\156\143\056\040\055\040\106\157\162\040 -\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157 -\156\154\171\061\066\060\064\006\003\125\004\003\023\055\107\145 -\157\124\162\165\163\164\040\120\162\151\155\141\162\171\040\103 -\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164 -\150\157\162\151\164\171\040\055\040\107\062 -END -CKA_ID UTF8 "0" -CKA_ISSUER MULTILINE_OCTAL -\060\201\230\061\013\060\011\006\003\125\004\006\023\002\125\123 -\061\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162 -\165\163\164\040\111\156\143\056\061\071\060\067\006\003\125\004 -\013\023\060\050\143\051\040\062\060\060\067\040\107\145\157\124 -\162\165\163\164\040\111\156\143\056\040\055\040\106\157\162\040 -\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157 -\156\154\171\061\066\060\064\006\003\125\004\003\023\055\107\145 -\157\124\162\165\163\164\040\120\162\151\155\141\162\171\040\103 -\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164 -\150\157\162\151\164\171\040\055\040\107\062 -END -CKA_SERIAL_NUMBER MULTILINE_OCTAL -\002\020\074\262\364\110\012\000\342\376\353\044\073\136\140\076 -\303\153 -END -CKA_VALUE MULTILINE_OCTAL -\060\202\002\256\060\202\002\065\240\003\002\001\002\002\020\074 -\262\364\110\012\000\342\376\353\044\073\136\140\076\303\153\060 -\012\006\010\052\206\110\316\075\004\003\003\060\201\230\061\013 -\060\011\006\003\125\004\006\023\002\125\123\061\026\060\024\006 -\003\125\004\012\023\015\107\145\157\124\162\165\163\164\040\111 -\156\143\056\061\071\060\067\006\003\125\004\013\023\060\050\143 -\051\040\062\060\060\067\040\107\145\157\124\162\165\163\164\040 -\111\156\143\056\040\055\040\106\157\162\040\141\165\164\150\157 -\162\151\172\145\144\040\165\163\145\040\157\156\154\171\061\066 -\060\064\006\003\125\004\003\023\055\107\145\157\124\162\165\163 -\164\040\120\162\151\155\141\162\171\040\103\145\162\164\151\146 -\151\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164 -\171\040\055\040\107\062\060\036\027\015\060\067\061\061\060\065 -\060\060\060\060\060\060\132\027\015\063\070\060\061\061\070\062 -\063\065\071\065\071\132\060\201\230\061\013\060\011\006\003\125 -\004\006\023\002\125\123\061\026\060\024\006\003\125\004\012\023 -\015\107\145\157\124\162\165\163\164\040\111\156\143\056\061\071 -\060\067\006\003\125\004\013\023\060\050\143\051\040\062\060\060 -\067\040\107\145\157\124\162\165\163\164\040\111\156\143\056\040 -\055\040\106\157\162\040\141\165\164\150\157\162\151\172\145\144 -\040\165\163\145\040\157\156\154\171\061\066\060\064\006\003\125 -\004\003\023\055\107\145\157\124\162\165\163\164\040\120\162\151 -\155\141\162\171\040\103\145\162\164\151\146\151\143\141\164\151 -\157\156\040\101\165\164\150\157\162\151\164\171\040\055\040\107 -\062\060\166\060\020\006\007\052\206\110\316\075\002\001\006\005 -\053\201\004\000\042\003\142\000\004\025\261\350\375\003\025\103 -\345\254\353\207\067\021\142\357\322\203\066\122\175\105\127\013 -\112\215\173\124\073\072\156\137\025\002\300\120\246\317\045\057 -\175\312\110\270\307\120\143\034\052\041\010\174\232\066\330\013 -\376\321\046\305\130\061\060\050\045\363\135\135\243\270\266\245 -\264\222\355\154\054\237\353\335\103\211\242\074\113\110\221\035 -\120\354\046\337\326\140\056\275\041\243\102\060\100\060\017\006 -\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060\016 -\006\003\125\035\017\001\001\377\004\004\003\002\001\006\060\035 -\006\003\125\035\016\004\026\004\024\025\137\065\127\121\125\373 -\045\262\255\003\151\374\001\243\372\276\021\125\325\060\012\006 -\010\052\206\110\316\075\004\003\003\003\147\000\060\144\002\060 -\144\226\131\246\350\011\336\213\272\372\132\210\210\360\037\221 -\323\106\250\362\112\114\002\143\373\154\137\070\333\056\101\223 -\251\016\346\235\334\061\034\262\240\247\030\034\171\341\307\066 -\002\060\072\126\257\232\164\154\366\373\203\340\063\323\010\137 -\241\234\302\133\237\106\326\266\313\221\006\143\242\006\347\063 -\254\076\250\201\022\320\313\272\320\222\013\266\236\226\252\004 -\017\212 -END -CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE -# For Server Distrust After: Wed Jan 01 00:00:00 2020 -CKA_NSS_SERVER_DISTRUST_AFTER MULTILINE_OCTAL -\062\060\060\061\060\061\060\060\060\060\060\060\132 -END -CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE - -# Trust for Certificate "GeoTrust Primary Certification Authority - G2" -# Issuer: CN=GeoTrust Primary Certification Authority - G2,OU=(c) 2007 GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US -# Serial Number:3c:b2:f4:48:0a:00:e2:fe:eb:24:3b:5e:60:3e:c3:6b -# Subject: CN=GeoTrust Primary Certification Authority - G2,OU=(c) 2007 GeoTrust Inc. - For authorized use only,O=GeoTrust Inc.,C=US -# Not Valid Before: Mon Nov 05 00:00:00 2007 -# Not Valid After : Mon Jan 18 23:59:59 2038 -# Fingerprint (MD5): 01:5E:D8:6B:BD:6F:3D:8E:A1:31:F8:12:E0:98:73:6A -# Fingerprint (SHA1): 8D:17:84:D5:37:F3:03:7D:EC:70:FE:57:8B:51:9A:99:E6:10:D7:B0 -CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST -CKA_TOKEN CK_BBOOL CK_TRUE -CKA_PRIVATE CK_BBOOL CK_FALSE -CKA_MODIFIABLE CK_BBOOL CK_FALSE -CKA_LABEL UTF8 "GeoTrust Primary Certification Authority - G2" -CKA_CERT_SHA1_HASH MULTILINE_OCTAL -\215\027\204\325\067\363\003\175\354\160\376\127\213\121\232\231 -\346\020\327\260 -END -CKA_CERT_MD5_HASH MULTILINE_OCTAL -\001\136\330\153\275\157\075\216\241\061\370\022\340\230\163\152 -END -CKA_ISSUER MULTILINE_OCTAL -\060\201\230\061\013\060\011\006\003\125\004\006\023\002\125\123 -\061\026\060\024\006\003\125\004\012\023\015\107\145\157\124\162 -\165\163\164\040\111\156\143\056\061\071\060\067\006\003\125\004 -\013\023\060\050\143\051\040\062\060\060\067\040\107\145\157\124 -\162\165\163\164\040\111\156\143\056\040\055\040\106\157\162\040 -\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040\157 -\156\154\171\061\066\060\064\006\003\125\004\003\023\055\107\145 -\157\124\162\165\163\164\040\120\162\151\155\141\162\171\040\103 -\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164 -\150\157\162\151\164\171\040\055\040\107\062 -END -CKA_SERIAL_NUMBER MULTILINE_OCTAL -\002\020\074\262\364\110\012\000\342\376\353\044\073\136\140\076 -\303\153 -END -CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR -CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST -CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST -CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE - -# -# Certificate "VeriSign Universal Root Certification Authority" -# -# Issuer: CN=VeriSign Universal Root Certification Authority,OU="(c) 2008 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US -# Serial Number:40:1a:c4:64:21:b3:13:21:03:0e:bb:e4:12:1a:c5:1d -# Subject: CN=VeriSign Universal Root Certification Authority,OU="(c) 2008 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US -# Not Valid Before: Wed Apr 02 00:00:00 2008 -# Not Valid After : Tue Dec 01 23:59:59 2037 -# Fingerprint (MD5): 8E:AD:B5:01:AA:4D:81:E4:8C:1D:D1:E1:14:00:95:19 -# Fingerprint (SHA1): 36:79:CA:35:66:87:72:30:4D:30:A5:FB:87:3B:0F:A7:7B:B7:0D:54 -CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE -CKA_TOKEN CK_BBOOL CK_TRUE -CKA_PRIVATE CK_BBOOL CK_FALSE -CKA_MODIFIABLE CK_BBOOL CK_FALSE -CKA_LABEL UTF8 "VeriSign Universal Root Certification Authority" -CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 -CKA_SUBJECT MULTILINE_OCTAL -\060\201\275\061\013\060\011\006\003\125\004\006\023\002\125\123 -\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123 -\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125 -\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165 -\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003 -\125\004\013\023\061\050\143\051\040\062\060\060\070\040\126\145 -\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106 -\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163 -\145\040\157\156\154\171\061\070\060\066\006\003\125\004\003\023 -\057\126\145\162\151\123\151\147\156\040\125\156\151\166\145\162 -\163\141\154\040\122\157\157\164\040\103\145\162\164\151\146\151 -\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171 -END -CKA_ID UTF8 "0" -CKA_ISSUER MULTILINE_OCTAL -\060\201\275\061\013\060\011\006\003\125\004\006\023\002\125\123 -\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123 -\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125 -\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165 -\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003 -\125\004\013\023\061\050\143\051\040\062\060\060\070\040\126\145 -\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106 -\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163 -\145\040\157\156\154\171\061\070\060\066\006\003\125\004\003\023 -\057\126\145\162\151\123\151\147\156\040\125\156\151\166\145\162 -\163\141\154\040\122\157\157\164\040\103\145\162\164\151\146\151 -\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171 -END -CKA_SERIAL_NUMBER MULTILINE_OCTAL -\002\020\100\032\304\144\041\263\023\041\003\016\273\344\022\032 -\305\035 -END -CKA_VALUE MULTILINE_OCTAL -\060\202\004\271\060\202\003\241\240\003\002\001\002\002\020\100 -\032\304\144\041\263\023\041\003\016\273\344\022\032\305\035\060 -\015\006\011\052\206\110\206\367\015\001\001\013\005\000\060\201 -\275\061\013\060\011\006\003\125\004\006\023\002\125\123\061\027 -\060\025\006\003\125\004\012\023\016\126\145\162\151\123\151\147 -\156\054\040\111\156\143\056\061\037\060\035\006\003\125\004\013 -\023\026\126\145\162\151\123\151\147\156\040\124\162\165\163\164 -\040\116\145\164\167\157\162\153\061\072\060\070\006\003\125\004 -\013\023\061\050\143\051\040\062\060\060\070\040\126\145\162\151 -\123\151\147\156\054\040\111\156\143\056\040\055\040\106\157\162 -\040\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040 -\157\156\154\171\061\070\060\066\006\003\125\004\003\023\057\126 -\145\162\151\123\151\147\156\040\125\156\151\166\145\162\163\141 -\154\040\122\157\157\164\040\103\145\162\164\151\146\151\143\141 -\164\151\157\156\040\101\165\164\150\157\162\151\164\171\060\036 -\027\015\060\070\060\064\060\062\060\060\060\060\060\060\132\027 -\015\063\067\061\062\060\061\062\063\065\071\065\071\132\060\201 -\275\061\013\060\011\006\003\125\004\006\023\002\125\123\061\027 -\060\025\006\003\125\004\012\023\016\126\145\162\151\123\151\147 -\156\054\040\111\156\143\056\061\037\060\035\006\003\125\004\013 -\023\026\126\145\162\151\123\151\147\156\040\124\162\165\163\164 -\040\116\145\164\167\157\162\153\061\072\060\070\006\003\125\004 -\013\023\061\050\143\051\040\062\060\060\070\040\126\145\162\151 -\123\151\147\156\054\040\111\156\143\056\040\055\040\106\157\162 -\040\141\165\164\150\157\162\151\172\145\144\040\165\163\145\040 -\157\156\154\171\061\070\060\066\006\003\125\004\003\023\057\126 -\145\162\151\123\151\147\156\040\125\156\151\166\145\162\163\141 -\154\040\122\157\157\164\040\103\145\162\164\151\146\151\143\141 -\164\151\157\156\040\101\165\164\150\157\162\151\164\171\060\202 -\001\042\060\015\006\011\052\206\110\206\367\015\001\001\001\005 -\000\003\202\001\017\000\060\202\001\012\002\202\001\001\000\307 -\141\067\136\261\001\064\333\142\327\025\233\377\130\132\214\043 -\043\326\140\216\221\327\220\230\203\172\346\130\031\070\214\305 -\366\345\144\205\264\242\161\373\355\275\271\332\315\115\000\264 -\310\055\163\245\307\151\161\225\037\071\074\262\104\007\234\350 -\016\372\115\112\304\041\337\051\141\217\062\042\141\202\305\207 -\037\156\214\174\137\026\040\121\104\321\160\117\127\352\343\034 -\343\314\171\356\130\330\016\302\263\105\223\300\054\347\232\027 -\053\173\000\067\172\101\063\170\341\063\342\363\020\032\177\207 -\054\276\366\365\367\102\342\345\277\207\142\211\137\000\113\337 -\305\335\344\165\104\062\101\072\036\161\156\151\313\013\165\106 -\010\321\312\322\053\225\320\317\373\271\100\153\144\214\127\115 -\374\023\021\171\204\355\136\124\366\064\237\010\001\363\020\045 -\006\027\112\332\361\035\172\146\153\230\140\146\244\331\357\322 -\056\202\361\360\357\011\352\104\311\025\152\342\003\156\063\323 -\254\237\125\000\307\366\010\152\224\271\137\334\340\063\361\204 -\140\371\133\047\021\264\374\026\362\273\126\152\200\045\215\002 -\003\001\000\001\243\201\262\060\201\257\060\017\006\003\125\035 -\023\001\001\377\004\005\060\003\001\001\377\060\016\006\003\125 -\035\017\001\001\377\004\004\003\002\001\006\060\155\006\010\053 -\006\001\005\005\007\001\014\004\141\060\137\241\135\240\133\060 -\131\060\127\060\125\026\011\151\155\141\147\145\057\147\151\146 -\060\041\060\037\060\007\006\005\053\016\003\002\032\004\024\217 -\345\323\032\206\254\215\216\153\303\317\200\152\324\110\030\054 -\173\031\056\060\045\026\043\150\164\164\160\072\057\057\154\157 -\147\157\056\166\145\162\151\163\151\147\156\056\143\157\155\057 -\166\163\154\157\147\157\056\147\151\146\060\035\006\003\125\035 -\016\004\026\004\024\266\167\372\151\110\107\237\123\022\325\302 -\352\007\062\166\007\321\227\007\031\060\015\006\011\052\206\110 -\206\367\015\001\001\013\005\000\003\202\001\001\000\112\370\370 -\260\003\346\054\147\173\344\224\167\143\314\156\114\371\175\016 -\015\334\310\271\065\271\160\117\143\372\044\372\154\203\214\107 -\235\073\143\363\232\371\166\062\225\221\261\167\274\254\232\276 -\261\344\061\041\306\201\225\126\132\016\261\302\324\261\246\131 -\254\361\143\313\270\114\035\131\220\112\357\220\026\050\037\132 -\256\020\373\201\120\070\014\154\314\361\075\303\365\143\343\263 -\343\041\311\044\071\351\375\025\146\106\364\033\021\320\115\163 -\243\175\106\371\075\355\250\137\142\324\361\077\370\340\164\127 -\053\030\235\201\264\304\050\332\224\227\245\160\353\254\035\276 -\007\021\360\325\333\335\345\214\360\325\062\260\203\346\127\342 -\217\277\276\241\252\277\075\035\265\324\070\352\327\260\134\072 -\117\152\077\217\300\146\154\143\252\351\331\244\026\364\201\321 -\225\024\016\175\315\225\064\331\322\217\160\163\201\173\234\176 -\275\230\141\330\105\207\230\220\305\353\206\060\306\065\277\360 -\377\303\125\210\203\113\357\005\222\006\161\362\270\230\223\267 -\354\315\202\141\361\070\346\117\227\230\052\132\215 -END -CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE -# For Server Distrust After: Tue Apr 30 00:00:00 2019 -CKA_NSS_SERVER_DISTRUST_AFTER MULTILINE_OCTAL -\061\071\060\064\063\060\060\060\060\060\060\060\132 -END -CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE - -# Trust for Certificate "VeriSign Universal Root Certification Authority" -# Issuer: CN=VeriSign Universal Root Certification Authority,OU="(c) 2008 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US -# Serial Number:40:1a:c4:64:21:b3:13:21:03:0e:bb:e4:12:1a:c5:1d -# Subject: CN=VeriSign Universal Root Certification Authority,OU="(c) 2008 VeriSign, Inc. - For authorized use only",OU=VeriSign Trust Network,O="VeriSign, Inc.",C=US -# Not Valid Before: Wed Apr 02 00:00:00 2008 -# Not Valid After : Tue Dec 01 23:59:59 2037 -# Fingerprint (MD5): 8E:AD:B5:01:AA:4D:81:E4:8C:1D:D1:E1:14:00:95:19 -# Fingerprint (SHA1): 36:79:CA:35:66:87:72:30:4D:30:A5:FB:87:3B:0F:A7:7B:B7:0D:54 -CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST -CKA_TOKEN CK_BBOOL CK_TRUE -CKA_PRIVATE CK_BBOOL CK_FALSE -CKA_MODIFIABLE CK_BBOOL CK_FALSE -CKA_LABEL UTF8 "VeriSign Universal Root Certification Authority" -CKA_CERT_SHA1_HASH MULTILINE_OCTAL -\066\171\312\065\146\207\162\060\115\060\245\373\207\073\017\247 -\173\267\015\124 -END -CKA_CERT_MD5_HASH MULTILINE_OCTAL -\216\255\265\001\252\115\201\344\214\035\321\341\024\000\225\031 -END -CKA_ISSUER MULTILINE_OCTAL -\060\201\275\061\013\060\011\006\003\125\004\006\023\002\125\123 -\061\027\060\025\006\003\125\004\012\023\016\126\145\162\151\123 -\151\147\156\054\040\111\156\143\056\061\037\060\035\006\003\125 -\004\013\023\026\126\145\162\151\123\151\147\156\040\124\162\165 -\163\164\040\116\145\164\167\157\162\153\061\072\060\070\006\003 -\125\004\013\023\061\050\143\051\040\062\060\060\070\040\126\145 -\162\151\123\151\147\156\054\040\111\156\143\056\040\055\040\106 -\157\162\040\141\165\164\150\157\162\151\172\145\144\040\165\163 -\145\040\157\156\154\171\061\070\060\066\006\003\125\004\003\023 -\057\126\145\162\151\123\151\147\156\040\125\156\151\166\145\162 -\163\141\154\040\122\157\157\164\040\103\145\162\164\151\146\151 -\143\141\164\151\157\156\040\101\165\164\150\157\162\151\164\171 -END -CKA_SERIAL_NUMBER MULTILINE_OCTAL -\002\020\100\032\304\144\041\263\023\041\003\016\273\344\022\032 -\305\035 -END -CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR -CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR -CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST -CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE - # # Certificate "NetLock Arany (Class Gold) Főtanúsítvány" # @@ -7027,7 +6419,7 @@ END CKA_SERIAL_NUMBER MULTILINE_OCTAL \002\011\000\243\332\102\176\244\261\256\332 END -CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR +CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE @@ -7237,7 +6629,7 @@ END CKA_SERIAL_NUMBER MULTILINE_OCTAL \002\011\000\311\315\323\351\325\175\043\316 END -CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR +CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE @@ -9136,7 +8528,10 @@ CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE CKA_NSS_SERVER_DISTRUST_AFTER MULTILINE_OCTAL \061\071\061\062\062\070\060\060\060\060\060\060\132 END -CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE +# For Email Distrust After: Wed Aug 31 00:00:00 2022 +CKA_NSS_EMAIL_DISTRUST_AFTER MULTILINE_OCTAL +\062\062\060\070\063\061\060\060\060\060\060\060\132 +END
# Trust for Certificate "EC-ACC" # Issuer: CN=EC-ACC,OU=Jerarquia Entitats de Certificacio Catalanes,OU=Vegeu https://www.catcert.net/verarrel (c)03,OU=Serveis Publics de Certificacio,O=Agencia Catalana de Certificacio (NIF Q-0801176-I),C=ES @@ -9579,161 +8974,27 @@ CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE
# -# Certificate "Trustis FPS Root CA" +# Certificate "Buypass Class 2 Root CA" # -# Issuer: OU=Trustis FPS Root CA,O=Trustis Limited,C=GB -# Serial Number:1b:1f:ad:b6:20:f9:24:d3:36:6b:f7:c7:f1:8c:a0:59 -# Subject: OU=Trustis FPS Root CA,O=Trustis Limited,C=GB -# Not Valid Before: Tue Dec 23 12:14:06 2003 -# Not Valid After : Sun Jan 21 11:36:54 2024 -# Fingerprint (MD5): 30:C9:E7:1E:6B:E6:14:EB:65:B2:16:69:20:31:67:4D -# Fingerprint (SHA1): 3B:C0:38:0B:33:C3:F6:A6:0C:86:15:22:93:D9:DF:F5:4B:81:C0:04 +# Issuer: CN=Buypass Class 2 Root CA,O=Buypass AS-983163327,C=NO +# Serial Number: 2 (0x2) +# Subject: CN=Buypass Class 2 Root CA,O=Buypass AS-983163327,C=NO +# Not Valid Before: Tue Oct 26 08:38:03 2010 +# Not Valid After : Fri Oct 26 08:38:03 2040 +# Fingerprint (MD5): 46:A7:D2:FE:45:FB:64:5A:A8:59:90:9B:78:44:9B:29 +# Fingerprint (SHA1): 49:0A:75:74:DE:87:0A:47:FE:58:EE:F6:C7:6B:EB:C6:0B:12:40:99 CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE CKA_TOKEN CK_BBOOL CK_TRUE CKA_PRIVATE CK_BBOOL CK_FALSE CKA_MODIFIABLE CK_BBOOL CK_FALSE -CKA_LABEL UTF8 "Trustis FPS Root CA" +CKA_LABEL UTF8 "Buypass Class 2 Root CA" CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 CKA_SUBJECT MULTILINE_OCTAL -\060\105\061\013\060\011\006\003\125\004\006\023\002\107\102\061 -\030\060\026\006\003\125\004\012\023\017\124\162\165\163\164\151 -\163\040\114\151\155\151\164\145\144\061\034\060\032\006\003\125 -\004\013\023\023\124\162\165\163\164\151\163\040\106\120\123\040 -\122\157\157\164\040\103\101 -END -CKA_ID UTF8 "0" -CKA_ISSUER MULTILINE_OCTAL -\060\105\061\013\060\011\006\003\125\004\006\023\002\107\102\061 -\030\060\026\006\003\125\004\012\023\017\124\162\165\163\164\151 -\163\040\114\151\155\151\164\145\144\061\034\060\032\006\003\125 -\004\013\023\023\124\162\165\163\164\151\163\040\106\120\123\040 -\122\157\157\164\040\103\101 -END -CKA_SERIAL_NUMBER MULTILINE_OCTAL -\002\020\033\037\255\266\040\371\044\323\066\153\367\307\361\214 -\240\131 -END -CKA_VALUE MULTILINE_OCTAL -\060\202\003\147\060\202\002\117\240\003\002\001\002\002\020\033 -\037\255\266\040\371\044\323\066\153\367\307\361\214\240\131\060 -\015\006\011\052\206\110\206\367\015\001\001\005\005\000\060\105 -\061\013\060\011\006\003\125\004\006\023\002\107\102\061\030\060 -\026\006\003\125\004\012\023\017\124\162\165\163\164\151\163\040 -\114\151\155\151\164\145\144\061\034\060\032\006\003\125\004\013 -\023\023\124\162\165\163\164\151\163\040\106\120\123\040\122\157 -\157\164\040\103\101\060\036\027\015\060\063\061\062\062\063\061 -\062\061\064\060\066\132\027\015\062\064\060\061\062\061\061\061 -\063\066\065\064\132\060\105\061\013\060\011\006\003\125\004\006 -\023\002\107\102\061\030\060\026\006\003\125\004\012\023\017\124 -\162\165\163\164\151\163\040\114\151\155\151\164\145\144\061\034 -\060\032\006\003\125\004\013\023\023\124\162\165\163\164\151\163 -\040\106\120\123\040\122\157\157\164\040\103\101\060\202\001\042 -\060\015\006\011\052\206\110\206\367\015\001\001\001\005\000\003 -\202\001\017\000\060\202\001\012\002\202\001\001\000\305\120\173 -\236\073\065\320\337\304\214\315\216\233\355\243\300\066\231\364 -\102\352\247\076\200\203\017\246\247\131\207\311\220\105\103\176 -\000\352\206\171\052\003\275\075\067\231\211\146\267\345\212\126 -\206\223\234\150\113\150\004\214\223\223\002\076\060\322\067\072 -\042\141\211\034\205\116\175\217\325\257\173\065\366\176\050\107 -\211\061\334\016\171\144\037\231\322\133\272\376\177\140\277\255 -\353\347\074\070\051\152\057\345\221\013\125\377\354\157\130\325 -\055\311\336\114\146\161\217\014\327\004\332\007\346\036\030\343 -\275\051\002\250\372\034\341\133\271\203\250\101\110\274\032\161 -\215\347\142\345\055\262\353\337\174\317\333\253\132\312\061\361 -\114\042\363\005\023\367\202\371\163\171\014\276\327\113\034\300 -\321\025\074\223\101\144\321\346\276\043\027\042\000\211\136\037 -\153\245\254\156\247\113\214\355\243\162\346\257\143\115\057\205 -\322\024\065\232\056\116\214\352\062\230\050\206\241\221\011\101 -\072\264\341\343\362\372\360\311\012\242\101\335\251\343\003\307 -\210\025\073\034\324\032\224\327\237\144\131\022\155\002\003\001 -\000\001\243\123\060\121\060\017\006\003\125\035\023\001\001\377 -\004\005\060\003\001\001\377\060\037\006\003\125\035\043\004\030 -\060\026\200\024\272\372\161\045\171\213\127\101\045\041\206\013 -\161\353\262\144\016\213\041\147\060\035\006\003\125\035\016\004 -\026\004\024\272\372\161\045\171\213\127\101\045\041\206\013\161 -\353\262\144\016\213\041\147\060\015\006\011\052\206\110\206\367 -\015\001\001\005\005\000\003\202\001\001\000\176\130\377\375\065 -\031\175\234\030\117\236\260\053\274\216\214\024\377\054\240\332 -\107\133\303\357\201\055\257\005\352\164\110\133\363\076\116\007 -\307\155\305\263\223\317\042\065\134\266\077\165\047\137\011\226 -\315\240\376\276\100\014\134\022\125\370\223\202\312\051\351\136 -\077\126\127\213\070\066\367\105\032\114\050\315\236\101\270\355 -\126\114\204\244\100\310\270\260\245\053\151\160\004\152\303\370 -\324\022\062\371\016\303\261\334\062\204\104\054\157\313\106\017 -\352\146\101\017\117\361\130\245\246\015\015\017\141\336\245\236 -\135\175\145\241\074\027\347\250\125\116\357\240\307\355\306\104 -\177\124\365\243\340\217\360\174\125\042\217\051\266\201\243\341 -\155\116\054\033\200\147\354\255\040\237\014\142\141\325\227\377 -\103\355\055\301\332\135\051\052\205\077\254\145\356\206\017\005 -\215\220\137\337\356\237\364\277\356\035\373\230\344\177\220\053 -\204\170\020\016\154\111\123\357\025\133\145\106\112\135\257\272 -\373\072\162\035\315\366\045\210\036\227\314\041\234\051\001\015 -\145\353\127\331\363\127\226\273\110\315\201 -END -CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE -CKA_NSS_SERVER_DISTRUST_AFTER MULTILINE_OCTAL -\062\060\060\067\060\061\060\060\060\060\060\060\132 -END -CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE - -# Trust for "Trustis FPS Root CA" -# Issuer: OU=Trustis FPS Root CA,O=Trustis Limited,C=GB -# Serial Number:1b:1f:ad:b6:20:f9:24:d3:36:6b:f7:c7:f1:8c:a0:59 -# Subject: OU=Trustis FPS Root CA,O=Trustis Limited,C=GB -# Not Valid Before: Tue Dec 23 12:14:06 2003 -# Not Valid After : Sun Jan 21 11:36:54 2024 -# Fingerprint (MD5): 30:C9:E7:1E:6B:E6:14:EB:65:B2:16:69:20:31:67:4D -# Fingerprint (SHA1): 3B:C0:38:0B:33:C3:F6:A6:0C:86:15:22:93:D9:DF:F5:4B:81:C0:04 -CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST -CKA_TOKEN CK_BBOOL CK_TRUE -CKA_PRIVATE CK_BBOOL CK_FALSE -CKA_MODIFIABLE CK_BBOOL CK_FALSE -CKA_LABEL UTF8 "Trustis FPS Root CA" -CKA_CERT_SHA1_HASH MULTILINE_OCTAL -\073\300\070\013\063\303\366\246\014\206\025\042\223\331\337\365 -\113\201\300\004 -END -CKA_CERT_MD5_HASH MULTILINE_OCTAL -\060\311\347\036\153\346\024\353\145\262\026\151\040\061\147\115 -END -CKA_ISSUER MULTILINE_OCTAL -\060\105\061\013\060\011\006\003\125\004\006\023\002\107\102\061 -\030\060\026\006\003\125\004\012\023\017\124\162\165\163\164\151 -\163\040\114\151\155\151\164\145\144\061\034\060\032\006\003\125 -\004\013\023\023\124\162\165\163\164\151\163\040\106\120\123\040 -\122\157\157\164\040\103\101 -END -CKA_SERIAL_NUMBER MULTILINE_OCTAL -\002\020\033\037\255\266\040\371\044\323\066\153\367\307\361\214 -\240\131 -END -CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR -CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR -CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST -CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE - -# -# Certificate "Buypass Class 2 Root CA" -# -# Issuer: CN=Buypass Class 2 Root CA,O=Buypass AS-983163327,C=NO -# Serial Number: 2 (0x2) -# Subject: CN=Buypass Class 2 Root CA,O=Buypass AS-983163327,C=NO -# Not Valid Before: Tue Oct 26 08:38:03 2010 -# Not Valid After : Fri Oct 26 08:38:03 2040 -# Fingerprint (MD5): 46:A7:D2:FE:45:FB:64:5A:A8:59:90:9B:78:44:9B:29 -# Fingerprint (SHA1): 49:0A:75:74:DE:87:0A:47:FE:58:EE:F6:C7:6B:EB:C6:0B:12:40:99 -CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE -CKA_TOKEN CK_BBOOL CK_TRUE -CKA_PRIVATE CK_BBOOL CK_FALSE -CKA_MODIFIABLE CK_BBOOL CK_FALSE -CKA_LABEL UTF8 "Buypass Class 2 Root CA" -CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 -CKA_SUBJECT MULTILINE_OCTAL -\060\116\061\013\060\011\006\003\125\004\006\023\002\116\117\061 -\035\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163 -\163\040\101\123\055\071\070\063\061\066\063\063\062\067\061\040 -\060\036\006\003\125\004\003\014\027\102\165\171\160\141\163\163 -\040\103\154\141\163\163\040\062\040\122\157\157\164\040\103\101 +\060\116\061\013\060\011\006\003\125\004\006\023\002\116\117\061 +\035\060\033\006\003\125\004\012\014\024\102\165\171\160\141\163 +\163\040\101\123\055\071\070\063\061\066\063\063\062\067\061\040 +\060\036\006\003\125\004\003\014\027\102\165\171\160\141\163\163 +\040\103\154\141\163\163\040\062\040\122\157\157\164\040\103\101 END CKA_ID UTF8 "0" CKA_ISSUER MULTILINE_OCTAL @@ -13772,7 +13033,7 @@ END CKA_SERIAL_NUMBER MULTILINE_OCTAL \002\004\000\230\242\071 END -CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR +CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE @@ -16481,7 +15742,10 @@ CKA_VALUE MULTILINE_OCTAL END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE -CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE +# For Email Distrust After: Wed Aug 31 00:00:00 2022 +CKA_NSS_EMAIL_DISTRUST_AFTER MULTILINE_OCTAL +\062\062\060\070\063\061\060\060\060\060\060\060\132 +END
# Trust for "Symantec Class 1 Public Primary Certification Authority - G6" # Issuer: CN=Symantec Class 1 Public Primary Certification Authority - G6,OU=Symantec Trust Network,O=Symantec Corporation,C=US @@ -16637,7 +15901,10 @@ CKA_VALUE MULTILINE_OCTAL END CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE -CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE +# For Email Distrust After: Wed Aug 31 00:00:00 2022 +CKA_NSS_EMAIL_DISTRUST_AFTER MULTILINE_OCTAL +\062\062\060\070\063\061\060\060\060\060\060\060\132 +END
# Trust for "Symantec Class 2 Public Primary Certification Authority - G6" # Issuer: CN=Symantec Class 2 Public Primary Certification Authority - G6,OU=Symantec Trust Network,O=Symantec Corporation,C=US @@ -21704,3 +20971,1336 @@ CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE + +# +# Certificate "AC RAIZ FNMT-RCM SERVIDORES SEGUROS" +# +# Issuer: CN=AC RAIZ FNMT-RCM SERVIDORES SEGUROS,OID.2.5.4.97=VATES-Q2826004J,OU=Ceres,O=FNMT-RCM,C=ES +# Serial Number:62:f6:32:6c:e5:c4:e3:68:5c:1b:62:dd:9c:2e:9d:95 +# Subject: CN=AC RAIZ FNMT-RCM SERVIDORES SEGUROS,OID.2.5.4.97=VATES-Q2826004J,OU=Ceres,O=FNMT-RCM,C=ES +# Not Valid Before: Thu Dec 20 09:37:33 2018 +# Not Valid After : Sun Dec 20 09:37:33 2043 +# Fingerprint (SHA-256): 55:41:53:B1:3D:2C:F9:DD:B7:53:BF:BE:1A:4E:0A:E0:8D:0A:A4:18:70:58:FE:60:A2:B8:62:B2:E4:B8:7B:CB +# Fingerprint (SHA1): 62:FF:D9:9E:C0:65:0D:03:CE:75:93:D2:ED:3F:2D:32:C9:E3:E5:4A +CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "AC RAIZ FNMT-RCM SERVIDORES SEGUROS" +CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 +CKA_SUBJECT MULTILINE_OCTAL +\060\170\061\013\060\011\006\003\125\004\006\023\002\105\123\061 +\021\060\017\006\003\125\004\012\014\010\106\116\115\124\055\122 +\103\115\061\016\060\014\006\003\125\004\013\014\005\103\145\162 +\145\163\061\030\060\026\006\003\125\004\141\014\017\126\101\124 +\105\123\055\121\062\070\062\066\060\060\064\112\061\054\060\052 +\006\003\125\004\003\014\043\101\103\040\122\101\111\132\040\106 +\116\115\124\055\122\103\115\040\123\105\122\126\111\104\117\122 +\105\123\040\123\105\107\125\122\117\123 +END +CKA_ID UTF8 "0" +CKA_ISSUER MULTILINE_OCTAL +\060\170\061\013\060\011\006\003\125\004\006\023\002\105\123\061 +\021\060\017\006\003\125\004\012\014\010\106\116\115\124\055\122 +\103\115\061\016\060\014\006\003\125\004\013\014\005\103\145\162 +\145\163\061\030\060\026\006\003\125\004\141\014\017\126\101\124 +\105\123\055\121\062\070\062\066\060\060\064\112\061\054\060\052 +\006\003\125\004\003\014\043\101\103\040\122\101\111\132\040\106 +\116\115\124\055\122\103\115\040\123\105\122\126\111\104\117\122 +\105\123\040\123\105\107\125\122\117\123 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\020\142\366\062\154\345\304\343\150\134\033\142\335\234\056 +\235\225 +END +CKA_VALUE MULTILINE_OCTAL +\060\202\002\156\060\202\001\363\240\003\002\001\002\002\020\142 +\366\062\154\345\304\343\150\134\033\142\335\234\056\235\225\060 +\012\006\010\052\206\110\316\075\004\003\003\060\170\061\013\060 +\011\006\003\125\004\006\023\002\105\123\061\021\060\017\006\003 +\125\004\012\014\010\106\116\115\124\055\122\103\115\061\016\060 +\014\006\003\125\004\013\014\005\103\145\162\145\163\061\030\060 +\026\006\003\125\004\141\014\017\126\101\124\105\123\055\121\062 +\070\062\066\060\060\064\112\061\054\060\052\006\003\125\004\003 +\014\043\101\103\040\122\101\111\132\040\106\116\115\124\055\122 +\103\115\040\123\105\122\126\111\104\117\122\105\123\040\123\105 +\107\125\122\117\123\060\036\027\015\061\070\061\062\062\060\060 +\071\063\067\063\063\132\027\015\064\063\061\062\062\060\060\071 +\063\067\063\063\132\060\170\061\013\060\011\006\003\125\004\006 +\023\002\105\123\061\021\060\017\006\003\125\004\012\014\010\106 +\116\115\124\055\122\103\115\061\016\060\014\006\003\125\004\013 +\014\005\103\145\162\145\163\061\030\060\026\006\003\125\004\141 +\014\017\126\101\124\105\123\055\121\062\070\062\066\060\060\064 +\112\061\054\060\052\006\003\125\004\003\014\043\101\103\040\122 +\101\111\132\040\106\116\115\124\055\122\103\115\040\123\105\122 +\126\111\104\117\122\105\123\040\123\105\107\125\122\117\123\060 +\166\060\020\006\007\052\206\110\316\075\002\001\006\005\053\201 +\004\000\042\003\142\000\004\366\272\127\123\310\312\253\337\066 +\112\122\041\344\227\322\203\147\236\360\145\121\320\136\207\307 +\107\261\131\362\127\107\233\000\002\223\104\027\151\333\102\307 +\261\262\072\030\016\264\135\214\263\146\135\241\064\371\066\054 +\111\333\363\106\374\263\104\151\104\023\146\375\327\305\375\257 +\066\115\316\003\115\007\161\317\257\152\005\322\242\103\132\012 +\122\157\001\003\116\216\213\243\102\060\100\060\017\006\003\125 +\035\023\001\001\377\004\005\060\003\001\001\377\060\016\006\003 +\125\035\017\001\001\377\004\004\003\002\001\006\060\035\006\003 +\125\035\016\004\026\004\024\001\271\057\357\277\021\206\140\362 +\117\320\101\156\253\163\037\347\322\156\111\060\012\006\010\052 +\206\110\316\075\004\003\003\003\151\000\060\146\002\061\000\256 +\112\343\053\100\303\164\021\362\225\255\026\043\336\116\014\032 +\346\135\245\044\136\153\104\173\374\070\342\117\313\234\105\027 +\021\114\024\047\046\125\071\165\112\003\314\023\220\237\222\002 +\061\000\372\112\154\140\210\163\363\356\270\230\142\251\316\053 +\302\331\212\246\160\061\035\257\260\224\114\353\117\306\343\321 +\363\142\247\074\377\223\056\007\134\111\001\147\151\022\002\162 +\277\347 +END +CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE + +# Trust for "AC RAIZ FNMT-RCM SERVIDORES SEGUROS" +# Issuer: CN=AC RAIZ FNMT-RCM SERVIDORES SEGUROS,OID.2.5.4.97=VATES-Q2826004J,OU=Ceres,O=FNMT-RCM,C=ES +# Serial Number:62:f6:32:6c:e5:c4:e3:68:5c:1b:62:dd:9c:2e:9d:95 +# Subject: CN=AC RAIZ FNMT-RCM SERVIDORES SEGUROS,OID.2.5.4.97=VATES-Q2826004J,OU=Ceres,O=FNMT-RCM,C=ES +# Not Valid Before: Thu Dec 20 09:37:33 2018 +# Not Valid After : Sun Dec 20 09:37:33 2043 +# Fingerprint (SHA-256): 55:41:53:B1:3D:2C:F9:DD:B7:53:BF:BE:1A:4E:0A:E0:8D:0A:A4:18:70:58:FE:60:A2:B8:62:B2:E4:B8:7B:CB +# Fingerprint (SHA1): 62:FF:D9:9E:C0:65:0D:03:CE:75:93:D2:ED:3F:2D:32:C9:E3:E5:4A +CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "AC RAIZ FNMT-RCM SERVIDORES SEGUROS" +CKA_CERT_SHA1_HASH MULTILINE_OCTAL +\142\377\331\236\300\145\015\003\316\165\223\322\355\077\055\062 +\311\343\345\112 +END +CKA_CERT_MD5_HASH MULTILINE_OCTAL +\031\066\234\122\003\057\322\321\273\043\314\335\036\022\125\273 +END +CKA_ISSUER MULTILINE_OCTAL +\060\170\061\013\060\011\006\003\125\004\006\023\002\105\123\061 +\021\060\017\006\003\125\004\012\014\010\106\116\115\124\055\122 +\103\115\061\016\060\014\006\003\125\004\013\014\005\103\145\162 +\145\163\061\030\060\026\006\003\125\004\141\014\017\126\101\124 +\105\123\055\121\062\070\062\066\060\060\064\112\061\054\060\052 +\006\003\125\004\003\014\043\101\103\040\122\101\111\132\040\106 +\116\115\124\055\122\103\115\040\123\105\122\126\111\104\117\122 +\105\123\040\123\105\107\125\122\117\123 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\020\142\366\062\154\345\304\343\150\134\033\142\335\234\056 +\235\225 +END +CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR +CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST +CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST +CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE + +# +# Certificate "GlobalSign Secure Mail Root R45" +# +# Issuer: CN=GlobalSign Secure Mail Root R45,O=GlobalSign nv-sa,C=BE +# Serial Number:76:53:fe:a8:4c:50:ab:9f:8d:32:b5:1d:03:8f:57:dc +# Subject: CN=GlobalSign Secure Mail Root R45,O=GlobalSign nv-sa,C=BE +# Not Valid Before: Wed Mar 18 00:00:00 2020 +# Not Valid After : Sat Mar 18 00:00:00 2045 +# Fingerprint (SHA-256): 31:9A:F0:A7:72:9E:6F:89:26:9C:13:1E:A6:A3:A1:6F:CD:86:38:9F:DC:AB:3C:47:A4:A6:75:C1:61:A3:F9:74 +# Fingerprint (SHA1): 76:18:D1:F3:80:24:3D:52:40:C6:11:6A:AD:57:77:09:7D:81:30:A0 +CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "GlobalSign Secure Mail Root R45" +CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 +CKA_SUBJECT MULTILINE_OCTAL +\060\122\061\013\060\011\006\003\125\004\006\023\002\102\105\061 +\031\060\027\006\003\125\004\012\023\020\107\154\157\142\141\154 +\123\151\147\156\040\156\166\055\163\141\061\050\060\046\006\003 +\125\004\003\023\037\107\154\157\142\141\154\123\151\147\156\040 +\123\145\143\165\162\145\040\115\141\151\154\040\122\157\157\164 +\040\122\064\065 +END +CKA_ID UTF8 "0" +CKA_ISSUER MULTILINE_OCTAL +\060\122\061\013\060\011\006\003\125\004\006\023\002\102\105\061 +\031\060\027\006\003\125\004\012\023\020\107\154\157\142\141\154 +\123\151\147\156\040\156\166\055\163\141\061\050\060\046\006\003 +\125\004\003\023\037\107\154\157\142\141\154\123\151\147\156\040 +\123\145\143\165\162\145\040\115\141\151\154\040\122\157\157\164 +\040\122\064\065 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\020\166\123\376\250\114\120\253\237\215\062\265\035\003\217 +\127\334 +END +CKA_VALUE MULTILINE_OCTAL +\060\202\005\160\060\202\003\130\240\003\002\001\002\002\020\166 +\123\376\250\114\120\253\237\215\062\265\035\003\217\127\334\060 +\015\006\011\052\206\110\206\367\015\001\001\014\005\000\060\122 +\061\013\060\011\006\003\125\004\006\023\002\102\105\061\031\060 +\027\006\003\125\004\012\023\020\107\154\157\142\141\154\123\151 +\147\156\040\156\166\055\163\141\061\050\060\046\006\003\125\004 +\003\023\037\107\154\157\142\141\154\123\151\147\156\040\123\145 +\143\165\162\145\040\115\141\151\154\040\122\157\157\164\040\122 +\064\065\060\036\027\015\062\060\060\063\061\070\060\060\060\060 +\060\060\132\027\015\064\065\060\063\061\070\060\060\060\060\060 +\060\132\060\122\061\013\060\011\006\003\125\004\006\023\002\102 +\105\061\031\060\027\006\003\125\004\012\023\020\107\154\157\142 +\141\154\123\151\147\156\040\156\166\055\163\141\061\050\060\046 +\006\003\125\004\003\023\037\107\154\157\142\141\154\123\151\147 +\156\040\123\145\143\165\162\145\040\115\141\151\154\040\122\157 +\157\164\040\122\064\065\060\202\002\042\060\015\006\011\052\206 +\110\206\367\015\001\001\001\005\000\003\202\002\017\000\060\202 +\002\012\002\202\002\001\000\334\171\314\155\006\371\155\273\340 +\126\004\154\177\340\165\314\055\005\111\350\113\334\124\354\133 +\167\225\162\277\177\142\235\205\251\212\044\120\137\123\345\333 +\164\157\244\051\133\023\052\011\255\232\305\057\302\367\166\073 +\241\105\106\252\103\346\044\376\053\260\157\062\160\031\106\132 +\171\046\057\374\075\175\137\144\313\127\314\141\141\250\331\225 +\156\343\225\240\156\177\107\022\030\326\357\003\311\373\212\372 +\232\275\202\025\251\125\167\113\021\117\131\340\153\303\161\363 +\014\330\124\325\201\150\076\023\271\025\056\207\212\074\104\047 +\066\142\044\156\370\054\005\162\060\141\275\102\221\043\304\235 +\045\247\331\124\232\024\243\061\255\200\171\014\247\143\154\230 +\243\254\127\107\063\037\145\226\341\320\322\065\332\371\161\367 +\241\246\045\265\101\135\337\076\140\330\321\366\237\245\362\270 +\314\023\252\217\371\262\156\341\203\055\223\335\076\205\032\335 +\350\261\134\046\001\313\111\205\374\374\322\324\177\205\142\206 +\164\371\313\354\065\042\242\014\060\217\073\253\171\353\126\362 +\372\102\363\355\371\037\105\211\100\051\255\352\222\164\352\122 +\375\126\264\053\332\242\355\165\302\156\253\316\122\220\113\366 +\336\360\111\217\232\110\324\210\031\155\105\346\314\214\271\335 +\144\140\140\002\100\370\271\317\274\130\353\075\205\271\306\012 +\323\234\007\146\217\307\030\071\043\106\341\074\036\243\057\120 +\141\222\013\075\053\154\361\243\107\070\127\221\253\015\217\306 +\235\115\004\322\046\122\134\345\245\375\052\055\026\052\001\151 +\347\251\175\341\066\267\261\052\305\331\261\215\275\271\213\316 +\314\213\241\076\013\110\315\120\225\064\304\330\010\131\330\153 +\046\364\276\365\324\042\027\000\127\311\256\233\004\060\063\237 +\013\373\337\126\242\311\156\124\166\332\261\227\142\047\131\017 +\021\212\042\033\144\226\077\250\361\267\044\112\215\074\123\174 +\155\203\166\075\262\046\110\163\365\104\026\001\055\011\052\216 +\026\226\120\320\163\006\135\273\042\110\202\114\012\106\132\077 +\200\377\134\362\362\232\254\054\010\340\326\352\360\022\070\201 +\117\246\020\355\106\253\314\026\234\013\317\144\246\231\002\205 +\104\147\106\255\375\115\347\002\003\001\000\001\243\102\060\100 +\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001\206 +\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001 +\377\060\035\006\003\125\035\016\004\026\004\024\240\223\025\050 +\156\356\217\010\262\065\306\236\142\171\164\247\261\016\053\173 +\060\015\006\011\052\206\110\206\367\015\001\001\014\005\000\003 +\202\002\001\000\105\012\370\321\134\254\142\201\320\004\327\266 +\377\127\121\211\013\014\313\336\044\145\067\373\253\236\355\146 +\364\352\014\031\151\211\270\031\261\060\126\264\331\366\367\276 +\306\256\227\313\105\366\021\214\072\060\144\114\301\237\131\300 +\106\102\010\006\107\144\027\170\340\225\007\006\326\214\242\254 +\251\331\077\323\173\126\117\374\304\207\050\337\266\053\026\043 +\300\237\037\133\343\326\104\136\042\117\043\004\214\065\026\265 +\171\007\206\134\057\227\342\366\010\144\246\334\333\250\212\343 +\244\173\167\015\321\051\223\050\040\264\123\243\113\116\137\336 +\301\366\165\043\374\037\074\170\117\160\061\170\057\242\065\124 +\161\004\254\310\304\155\303\366\221\261\376\315\356\104\156\201 +\366\100\305\076\052\001\277\253\114\261\003\077\015\021\344\017 +\322\044\343\042\210\233\237\137\107\075\121\111\340\011\067\176 +\027\041\061\166\267\147\161\110\050\113\045\327\020\350\237\141 +\131\026\305\076\062\116\037\014\316\243\314\017\344\307\021\007 +\042\057\070\010\335\133\227\353\102\154\131\232\232\356\172\320 +\235\337\305\333\011\103\056\012\252\031\075\153\350\152\060\172 +\127\346\277\263\152\071\251\217\343\361\117\145\150\266\275\237 +\050\217\241\026\132\011\120\072\062\056\035\057\104\021\102\246 +\000\346\061\230\377\055\241\017\346\244\140\126\317\171\327\262 +\116\327\260\372\156\014\127\043\307\316\037\245\261\114\155\031 +\111\236\016\177\160\217\161\077\130\050\237\165\335\141\340\072 +\267\071\266\356\227\324\065\121\373\213\111\140\310\074\146\256 +\227\356\215\046\131\127\273\170\360\172\120\060\011\260\140\252 +\237\116\334\311\076\036\072\334\142\223\063\260\072\124\164\157 +\054\061\105\321\153\021\062\152\150\166\366\075\366\152\023\136 +\044\230\347\352\035\232\317\170\202\007\140\367\115\020\323\201 +\232\105\215\236\257\233\334\200\307\103\262\225\150\244\303\016 +\350\012\107\025\277\124\063\334\001\347\325\246\036\163\330\172 +\262\277\057\255\343\125\060\236\337\016\101\274\340\021\365\241 +\014\250\042\341\343\000\243\116\160\174\222\343\004\321\172\102 +\212\165\220\131\343\233\321\114\242\144\275\163\171\233\157\362 +\263\301\366\074 +END +CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE + +# Trust for "GlobalSign Secure Mail Root R45" +# Issuer: CN=GlobalSign Secure Mail Root R45,O=GlobalSign nv-sa,C=BE +# Serial Number:76:53:fe:a8:4c:50:ab:9f:8d:32:b5:1d:03:8f:57:dc +# Subject: CN=GlobalSign Secure Mail Root R45,O=GlobalSign nv-sa,C=BE +# Not Valid Before: Wed Mar 18 00:00:00 2020 +# Not Valid After : Sat Mar 18 00:00:00 2045 +# Fingerprint (SHA-256): 31:9A:F0:A7:72:9E:6F:89:26:9C:13:1E:A6:A3:A1:6F:CD:86:38:9F:DC:AB:3C:47:A4:A6:75:C1:61:A3:F9:74 +# Fingerprint (SHA1): 76:18:D1:F3:80:24:3D:52:40:C6:11:6A:AD:57:77:09:7D:81:30:A0 +CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "GlobalSign Secure Mail Root R45" +CKA_CERT_SHA1_HASH MULTILINE_OCTAL +\166\030\321\363\200\044\075\122\100\306\021\152\255\127\167\011 +\175\201\060\240 +END +CKA_CERT_MD5_HASH MULTILINE_OCTAL +\223\304\173\263\016\124\107\034\103\054\213\276\160\205\142\051 +END +CKA_ISSUER MULTILINE_OCTAL +\060\122\061\013\060\011\006\003\125\004\006\023\002\102\105\061 +\031\060\027\006\003\125\004\012\023\020\107\154\157\142\141\154 +\123\151\147\156\040\156\166\055\163\141\061\050\060\046\006\003 +\125\004\003\023\037\107\154\157\142\141\154\123\151\147\156\040 +\123\145\143\165\162\145\040\115\141\151\154\040\122\157\157\164 +\040\122\064\065 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\020\166\123\376\250\114\120\253\237\215\062\265\035\003\217 +\127\334 +END +CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST +CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR +CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST +CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE + +# +# Certificate "GlobalSign Secure Mail Root E45" +# +# Issuer: CN=GlobalSign Secure Mail Root E45,O=GlobalSign nv-sa,C=BE +# Serial Number:76:53:fe:aa:27:1d:95:46:5d:d6:f1:9e:e5:b8:90:0a +# Subject: CN=GlobalSign Secure Mail Root E45,O=GlobalSign nv-sa,C=BE +# Not Valid Before: Wed Mar 18 00:00:00 2020 +# Not Valid After : Sat Mar 18 00:00:00 2045 +# Fingerprint (SHA-256): 5C:BF:6F:B8:1F:D4:17:EA:41:28:CD:6F:81:72:A3:C9:40:20:94:F7:4A:B2:ED:3A:06:B4:40:5D:04:F3:0B:19 +# Fingerprint (SHA1): 18:2E:1F:32:4F:89:DF:BE:FE:88:89:F0:93:C2:C4:A0:2B:67:75:21 +CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "GlobalSign Secure Mail Root E45" +CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 +CKA_SUBJECT MULTILINE_OCTAL +\060\122\061\013\060\011\006\003\125\004\006\023\002\102\105\061 +\031\060\027\006\003\125\004\012\023\020\107\154\157\142\141\154 +\123\151\147\156\040\156\166\055\163\141\061\050\060\046\006\003 +\125\004\003\023\037\107\154\157\142\141\154\123\151\147\156\040 +\123\145\143\165\162\145\040\115\141\151\154\040\122\157\157\164 +\040\105\064\065 +END +CKA_ID UTF8 "0" +CKA_ISSUER MULTILINE_OCTAL +\060\122\061\013\060\011\006\003\125\004\006\023\002\102\105\061 +\031\060\027\006\003\125\004\012\023\020\107\154\157\142\141\154 +\123\151\147\156\040\156\166\055\163\141\061\050\060\046\006\003 +\125\004\003\023\037\107\154\157\142\141\154\123\151\147\156\040 +\123\145\143\165\162\145\040\115\141\151\154\040\122\157\157\164 +\040\105\064\065 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\020\166\123\376\252\047\035\225\106\135\326\361\236\345\270 +\220\012 +END +CKA_VALUE MULTILINE_OCTAL +\060\202\002\041\060\202\001\247\240\003\002\001\002\002\020\166 +\123\376\252\047\035\225\106\135\326\361\236\345\270\220\012\060 +\012\006\010\052\206\110\316\075\004\003\003\060\122\061\013\060 +\011\006\003\125\004\006\023\002\102\105\061\031\060\027\006\003 +\125\004\012\023\020\107\154\157\142\141\154\123\151\147\156\040 +\156\166\055\163\141\061\050\060\046\006\003\125\004\003\023\037 +\107\154\157\142\141\154\123\151\147\156\040\123\145\143\165\162 +\145\040\115\141\151\154\040\122\157\157\164\040\105\064\065\060 +\036\027\015\062\060\060\063\061\070\060\060\060\060\060\060\132 +\027\015\064\065\060\063\061\070\060\060\060\060\060\060\132\060 +\122\061\013\060\011\006\003\125\004\006\023\002\102\105\061\031 +\060\027\006\003\125\004\012\023\020\107\154\157\142\141\154\123 +\151\147\156\040\156\166\055\163\141\061\050\060\046\006\003\125 +\004\003\023\037\107\154\157\142\141\154\123\151\147\156\040\123 +\145\143\165\162\145\040\115\141\151\154\040\122\157\157\164\040 +\105\064\065\060\166\060\020\006\007\052\206\110\316\075\002\001 +\006\005\053\201\004\000\042\003\142\000\004\371\171\213\201\107 +\067\211\226\077\105\111\120\177\032\046\013\223\062\176\056\300 +\300\247\010\232\303\156\217\233\076\013\042\354\067\123\267\157 +\212\260\274\047\067\113\155\251\106\073\331\037\377\245\241\104 +\273\055\163\277\236\101\007\134\123\233\121\010\072\132\273\157 +\070\307\026\221\170\302\112\023\151\035\202\337\132\057\000\210 +\226\242\056\034\164\371\235\176\146\067\212\243\102\060\100\060 +\016\006\003\125\035\017\001\001\377\004\004\003\002\001\206\060 +\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377 +\060\035\006\003\125\035\016\004\026\004\024\337\023\136\213\137 +\302\100\002\375\126\267\224\114\266\036\325\246\261\024\226\060 +\012\006\010\052\206\110\316\075\004\003\003\003\150\000\060\145 +\002\060\023\260\276\327\161\040\076\344\253\234\316\066\022\175 +\137\114\037\052\265\151\105\063\137\323\055\132\262\344\210\307 +\336\012\066\102\062\171\235\246\153\272\341\371\104\052\173\212 +\303\022\002\061\000\240\146\034\116\207\235\207\311\355\231\114 +\033\012\356\055\140\303\067\307\035\315\265\162\260\331\306\357 +\274\362\377\077\360\122\335\010\347\252\144\171\303\344\151\127 +\221\057\244\313\174 +END +CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE + +# Trust for "GlobalSign Secure Mail Root E45" +# Issuer: CN=GlobalSign Secure Mail Root E45,O=GlobalSign nv-sa,C=BE +# Serial Number:76:53:fe:aa:27:1d:95:46:5d:d6:f1:9e:e5:b8:90:0a +# Subject: CN=GlobalSign Secure Mail Root E45,O=GlobalSign nv-sa,C=BE +# Not Valid Before: Wed Mar 18 00:00:00 2020 +# Not Valid After : Sat Mar 18 00:00:00 2045 +# Fingerprint (SHA-256): 5C:BF:6F:B8:1F:D4:17:EA:41:28:CD:6F:81:72:A3:C9:40:20:94:F7:4A:B2:ED:3A:06:B4:40:5D:04:F3:0B:19 +# Fingerprint (SHA1): 18:2E:1F:32:4F:89:DF:BE:FE:88:89:F0:93:C2:C4:A0:2B:67:75:21 +CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "GlobalSign Secure Mail Root E45" +CKA_CERT_SHA1_HASH MULTILINE_OCTAL +\030\056\037\062\117\211\337\276\376\210\211\360\223\302\304\240 +\053\147\165\041 +END +CKA_CERT_MD5_HASH MULTILINE_OCTAL +\305\374\306\056\237\364\122\055\052\250\244\272\373\147\062\377 +END +CKA_ISSUER MULTILINE_OCTAL +\060\122\061\013\060\011\006\003\125\004\006\023\002\102\105\061 +\031\060\027\006\003\125\004\012\023\020\107\154\157\142\141\154 +\123\151\147\156\040\156\166\055\163\141\061\050\060\046\006\003 +\125\004\003\023\037\107\154\157\142\141\154\123\151\147\156\040 +\123\145\143\165\162\145\040\115\141\151\154\040\122\157\157\164 +\040\105\064\065 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\020\166\123\376\252\047\035\225\106\135\326\361\236\345\270 +\220\012 +END +CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_MUST_VERIFY_TRUST +CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR +CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST +CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE + +# +# Certificate "GlobalSign Root R46" +# +# Issuer: CN=GlobalSign Root R46,O=GlobalSign nv-sa,C=BE +# Serial Number:11:d2:bb:b9:d7:23:18:9e:40:5f:0a:9d:2d:d0:df:25:67:d1 +# Subject: CN=GlobalSign Root R46,O=GlobalSign nv-sa,C=BE +# Not Valid Before: Wed Mar 20 00:00:00 2019 +# Not Valid After : Tue Mar 20 00:00:00 2046 +# Fingerprint (SHA-256): 4F:A3:12:6D:8D:3A:11:D1:C4:85:5A:4F:80:7C:BA:D6:CF:91:9D:3A:5A:88:B0:3B:EA:2C:63:72:D9:3C:40:C9 +# Fingerprint (SHA1): 53:A2:B0:4B:CA:6B:D6:45:E6:39:8A:8E:C4:0D:D2:BF:77:C3:A2:90 +CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "GlobalSign Root R46" +CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 +CKA_SUBJECT MULTILINE_OCTAL +\060\106\061\013\060\011\006\003\125\004\006\023\002\102\105\061 +\031\060\027\006\003\125\004\012\023\020\107\154\157\142\141\154 +\123\151\147\156\040\156\166\055\163\141\061\034\060\032\006\003 +\125\004\003\023\023\107\154\157\142\141\154\123\151\147\156\040 +\122\157\157\164\040\122\064\066 +END +CKA_ID UTF8 "0" +CKA_ISSUER MULTILINE_OCTAL +\060\106\061\013\060\011\006\003\125\004\006\023\002\102\105\061 +\031\060\027\006\003\125\004\012\023\020\107\154\157\142\141\154 +\123\151\147\156\040\156\166\055\163\141\061\034\060\032\006\003 +\125\004\003\023\023\107\154\157\142\141\154\123\151\147\156\040 +\122\157\157\164\040\122\064\066 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\022\021\322\273\271\327\043\030\236\100\137\012\235\055\320 +\337\045\147\321 +END +CKA_VALUE MULTILINE_OCTAL +\060\202\005\132\060\202\003\102\240\003\002\001\002\002\022\021 +\322\273\271\327\043\030\236\100\137\012\235\055\320\337\045\147 +\321\060\015\006\011\052\206\110\206\367\015\001\001\014\005\000 +\060\106\061\013\060\011\006\003\125\004\006\023\002\102\105\061 +\031\060\027\006\003\125\004\012\023\020\107\154\157\142\141\154 +\123\151\147\156\040\156\166\055\163\141\061\034\060\032\006\003 +\125\004\003\023\023\107\154\157\142\141\154\123\151\147\156\040 +\122\157\157\164\040\122\064\066\060\036\027\015\061\071\060\063 +\062\060\060\060\060\060\060\060\132\027\015\064\066\060\063\062 +\060\060\060\060\060\060\060\132\060\106\061\013\060\011\006\003 +\125\004\006\023\002\102\105\061\031\060\027\006\003\125\004\012 +\023\020\107\154\157\142\141\154\123\151\147\156\040\156\166\055 +\163\141\061\034\060\032\006\003\125\004\003\023\023\107\154\157 +\142\141\154\123\151\147\156\040\122\157\157\164\040\122\064\066 +\060\202\002\042\060\015\006\011\052\206\110\206\367\015\001\001 +\001\005\000\003\202\002\017\000\060\202\002\012\002\202\002\001 +\000\254\254\164\062\350\263\145\345\272\355\103\046\035\246\211 +\015\105\272\051\210\262\244\035\143\335\323\301\054\011\127\211 +\071\241\125\351\147\064\167\014\156\344\125\035\122\045\322\023 +\153\136\341\035\251\267\175\211\062\137\015\236\237\054\172\143 +\140\100\037\246\260\266\170\217\231\124\226\010\130\256\344\006 +\274\142\005\002\026\277\257\250\043\003\266\224\017\274\156\154 +\302\313\325\246\273\014\351\366\301\002\373\041\336\146\335\027 +\253\164\102\357\360\164\057\045\364\352\153\125\133\220\333\235 +\337\136\207\012\100\373\255\031\153\373\367\312\140\210\336\332 +\301\217\326\256\325\177\324\074\203\356\327\026\114\203\105\063 +\153\047\320\206\320\034\055\153\363\253\175\361\205\251\365\050 +\322\255\357\363\204\113\034\207\374\023\243\072\162\242\132\021 +\053\326\047\161\047\355\201\055\155\146\201\222\207\264\033\130 +\172\314\077\012\372\106\117\115\170\134\370\053\110\343\004\204 +\313\135\366\264\152\263\145\374\102\236\121\046\043\040\313\075 +\024\371\201\355\145\026\000\117\032\144\227\146\010\317\214\173 +\343\053\300\235\371\024\362\033\361\126\152\026\277\054\205\205 +\315\170\070\232\353\102\152\002\064\030\203\027\116\224\126\370 +\266\202\265\363\226\335\075\363\276\177\040\167\076\173\031\043 +\153\054\324\162\163\103\127\175\340\370\327\151\117\027\066\004 +\371\300\220\140\067\105\336\346\014\330\164\215\256\234\242\155 +\164\135\102\276\006\365\331\144\156\002\020\254\211\260\114\073 +\007\115\100\176\044\305\212\230\202\171\216\244\247\202\040\215 +\043\372\047\161\311\337\306\101\164\240\115\366\221\026\334\106 +\214\137\051\143\061\131\161\014\330\157\302\266\062\175\373\346 +\135\123\246\176\025\374\273\165\174\135\354\370\366\027\034\354 +\307\153\031\313\363\173\360\053\007\245\331\154\171\124\166\154 +\235\034\246\156\016\351\171\014\250\043\152\243\337\033\060\061 +\237\261\124\173\376\152\313\146\252\334\145\320\242\236\112\232 +\007\041\153\201\217\333\304\131\372\336\042\300\004\234\343\252 +\133\066\223\350\075\275\172\241\235\013\166\261\013\307\235\375 +\317\230\250\006\302\370\052\243\241\203\240\267\045\162\245\002 +\343\002\003\001\000\001\243\102\060\100\060\016\006\003\125\035 +\017\001\001\377\004\004\003\002\001\206\060\017\006\003\125\035 +\023\001\001\377\004\005\060\003\001\001\377\060\035\006\003\125 +\035\016\004\026\004\024\003\134\253\163\201\207\250\314\260\246 +\325\224\342\066\226\111\377\005\231\054\060\015\006\011\052\206 +\110\206\367\015\001\001\014\005\000\003\202\002\001\000\174\170 +\354\366\002\054\273\133\176\222\053\135\071\334\276\330\035\242 +\102\063\115\371\357\244\052\073\104\151\036\254\331\105\243\116 +\074\247\330\044\121\262\124\034\223\116\304\357\173\223\205\140 +\046\352\011\110\340\365\273\307\351\150\322\273\152\061\161\314 +\171\256\021\250\360\231\375\345\037\274\057\250\314\127\353\166 +\304\041\246\107\123\125\115\150\277\005\244\356\327\046\253\142 +\332\103\067\113\342\306\265\345\262\203\031\072\307\323\333\115 +\236\010\172\363\356\317\076\142\373\254\350\140\314\321\307\241 +\134\203\105\304\105\314\363\027\153\024\311\004\002\076\322\044 +\246\171\351\036\316\242\347\301\131\025\237\035\342\113\232\076 +\237\166\010\055\153\330\272\127\024\332\203\352\376\214\125\351 +\320\116\251\314\167\061\261\104\021\172\134\261\076\323\024\105 +\025\030\142\044\023\322\313\115\316\134\203\301\066\362\020\265 +\016\210\155\270\341\126\237\211\336\226\146\071\107\144\054\156 +\115\256\142\173\277\140\164\031\270\126\254\222\254\026\062\355 +\255\150\125\376\230\272\323\064\336\364\311\141\303\016\206\366 +\113\204\140\356\015\173\265\062\130\171\221\125\054\201\103\263 +\164\037\172\252\045\236\035\327\241\213\271\315\102\056\004\244 +\146\203\115\211\065\266\154\250\066\112\171\041\170\042\320\102 +\274\321\100\061\220\241\276\004\317\312\147\355\365\360\200\323 +\140\311\203\052\042\005\320\007\073\122\277\014\236\252\053\371 +\273\346\037\217\045\272\205\215\027\036\002\376\135\120\004\127 +\317\376\055\274\357\134\300\032\253\266\237\044\306\337\163\150 +\110\220\054\024\364\077\122\032\344\322\313\024\303\141\151\317 +\342\371\030\305\272\063\237\024\243\004\135\271\161\367\265\224 +\330\366\063\301\132\301\064\213\174\233\335\223\072\347\023\242 +\160\141\237\257\217\353\330\305\165\370\063\146\324\164\147\072 +\067\167\234\347\335\244\017\166\103\146\212\103\362\237\373\014 +\102\170\143\321\342\017\157\173\324\241\075\164\227\205\267\110 +\071\101\326\040\374\320\072\263\372\350\157\304\212\272\161\067 +\276\213\227\261\170\061\117\263\347\266\003\023\316\124\235\256 +\045\131\314\177\065\137\010\367\100\105\061\170\052\172 +END +CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE + +# Trust for "GlobalSign Root R46" +# Issuer: CN=GlobalSign Root R46,O=GlobalSign nv-sa,C=BE +# Serial Number:11:d2:bb:b9:d7:23:18:9e:40:5f:0a:9d:2d:d0:df:25:67:d1 +# Subject: CN=GlobalSign Root R46,O=GlobalSign nv-sa,C=BE +# Not Valid Before: Wed Mar 20 00:00:00 2019 +# Not Valid After : Tue Mar 20 00:00:00 2046 +# Fingerprint (SHA-256): 4F:A3:12:6D:8D:3A:11:D1:C4:85:5A:4F:80:7C:BA:D6:CF:91:9D:3A:5A:88:B0:3B:EA:2C:63:72:D9:3C:40:C9 +# Fingerprint (SHA1): 53:A2:B0:4B:CA:6B:D6:45:E6:39:8A:8E:C4:0D:D2:BF:77:C3:A2:90 +CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "GlobalSign Root R46" +CKA_CERT_SHA1_HASH MULTILINE_OCTAL +\123\242\260\113\312\153\326\105\346\071\212\216\304\015\322\277 +\167\303\242\220 +END +CKA_CERT_MD5_HASH MULTILINE_OCTAL +\304\024\060\344\372\146\103\224\052\152\033\044\137\031\320\357 +END +CKA_ISSUER MULTILINE_OCTAL +\060\106\061\013\060\011\006\003\125\004\006\023\002\102\105\061 +\031\060\027\006\003\125\004\012\023\020\107\154\157\142\141\154 +\123\151\147\156\040\156\166\055\163\141\061\034\060\032\006\003 +\125\004\003\023\023\107\154\157\142\141\154\123\151\147\156\040 +\122\157\157\164\040\122\064\066 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\022\021\322\273\271\327\043\030\236\100\137\012\235\055\320 +\337\045\147\321 +END +CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR +CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST +CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST +CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE + +# +# Certificate "GlobalSign Root E46" +# +# Issuer: CN=GlobalSign Root E46,O=GlobalSign nv-sa,C=BE +# Serial Number:11:d2:bb:ba:33:6e:d4:bc:e6:24:68:c5:0d:84:1d:98:e8:43 +# Subject: CN=GlobalSign Root E46,O=GlobalSign nv-sa,C=BE +# Not Valid Before: Wed Mar 20 00:00:00 2019 +# Not Valid After : Tue Mar 20 00:00:00 2046 +# Fingerprint (SHA-256): CB:B9:C4:4D:84:B8:04:3E:10:50:EA:31:A6:9F:51:49:55:D7:BF:D2:E2:C6:B4:93:01:01:9A:D6:1D:9F:50:58 +# Fingerprint (SHA1): 39:B4:6C:D5:FE:80:06:EB:E2:2F:4A:BB:08:33:A0:AF:DB:B9:DD:84 +CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "GlobalSign Root E46" +CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 +CKA_SUBJECT MULTILINE_OCTAL +\060\106\061\013\060\011\006\003\125\004\006\023\002\102\105\061 +\031\060\027\006\003\125\004\012\023\020\107\154\157\142\141\154 +\123\151\147\156\040\156\166\055\163\141\061\034\060\032\006\003 +\125\004\003\023\023\107\154\157\142\141\154\123\151\147\156\040 +\122\157\157\164\040\105\064\066 +END +CKA_ID UTF8 "0" +CKA_ISSUER MULTILINE_OCTAL +\060\106\061\013\060\011\006\003\125\004\006\023\002\102\105\061 +\031\060\027\006\003\125\004\012\023\020\107\154\157\142\141\154 +\123\151\147\156\040\156\166\055\163\141\061\034\060\032\006\003 +\125\004\003\023\023\107\154\157\142\141\154\123\151\147\156\040 +\122\157\157\164\040\105\064\066 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\022\021\322\273\272\063\156\324\274\346\044\150\305\015\204 +\035\230\350\103 +END +CKA_VALUE MULTILINE_OCTAL +\060\202\002\013\060\202\001\221\240\003\002\001\002\002\022\021 +\322\273\272\063\156\324\274\346\044\150\305\015\204\035\230\350 +\103\060\012\006\010\052\206\110\316\075\004\003\003\060\106\061 +\013\060\011\006\003\125\004\006\023\002\102\105\061\031\060\027 +\006\003\125\004\012\023\020\107\154\157\142\141\154\123\151\147 +\156\040\156\166\055\163\141\061\034\060\032\006\003\125\004\003 +\023\023\107\154\157\142\141\154\123\151\147\156\040\122\157\157 +\164\040\105\064\066\060\036\027\015\061\071\060\063\062\060\060 +\060\060\060\060\060\132\027\015\064\066\060\063\062\060\060\060 +\060\060\060\060\132\060\106\061\013\060\011\006\003\125\004\006 +\023\002\102\105\061\031\060\027\006\003\125\004\012\023\020\107 +\154\157\142\141\154\123\151\147\156\040\156\166\055\163\141\061 +\034\060\032\006\003\125\004\003\023\023\107\154\157\142\141\154 +\123\151\147\156\040\122\157\157\164\040\105\064\066\060\166\060 +\020\006\007\052\206\110\316\075\002\001\006\005\053\201\004\000 +\042\003\142\000\004\234\016\261\317\267\350\236\122\167\165\064 +\372\245\106\247\255\062\031\062\264\007\251\047\312\224\273\014 +\322\012\020\307\332\211\260\227\014\160\023\011\001\216\330\352 +\107\352\276\262\200\053\315\374\050\015\333\254\274\244\206\067 +\355\160\010\000\165\352\223\013\173\056\122\234\043\150\043\006 +\103\354\222\057\123\204\333\373\107\024\007\350\137\224\147\135 +\311\172\201\074\040\243\102\060\100\060\016\006\003\125\035\017 +\001\001\377\004\004\003\002\001\206\060\017\006\003\125\035\023 +\001\001\377\004\005\060\003\001\001\377\060\035\006\003\125\035 +\016\004\026\004\024\061\012\220\217\266\306\235\322\104\113\200 +\265\242\346\037\261\022\117\033\225\060\012\006\010\052\206\110 +\316\075\004\003\003\003\150\000\060\145\002\061\000\337\124\220 +\355\233\357\213\224\002\223\027\202\231\276\263\236\054\366\013 +\221\214\237\112\024\261\366\144\274\273\150\121\023\014\003\367 +\025\213\204\140\271\213\377\122\216\347\214\274\034\002\060\074 +\371\021\324\214\116\300\301\141\302\025\114\252\253\035\013\061 +\137\073\034\342\000\227\104\061\346\376\163\226\057\332\226\323 +\376\010\007\263\064\211\274\005\237\367\036\206\356\213\160 +END +CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE + +# Trust for "GlobalSign Root E46" +# Issuer: CN=GlobalSign Root E46,O=GlobalSign nv-sa,C=BE +# Serial Number:11:d2:bb:ba:33:6e:d4:bc:e6:24:68:c5:0d:84:1d:98:e8:43 +# Subject: CN=GlobalSign Root E46,O=GlobalSign nv-sa,C=BE +# Not Valid Before: Wed Mar 20 00:00:00 2019 +# Not Valid After : Tue Mar 20 00:00:00 2046 +# Fingerprint (SHA-256): CB:B9:C4:4D:84:B8:04:3E:10:50:EA:31:A6:9F:51:49:55:D7:BF:D2:E2:C6:B4:93:01:01:9A:D6:1D:9F:50:58 +# Fingerprint (SHA1): 39:B4:6C:D5:FE:80:06:EB:E2:2F:4A:BB:08:33:A0:AF:DB:B9:DD:84 +CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "GlobalSign Root E46" +CKA_CERT_SHA1_HASH MULTILINE_OCTAL +\071\264\154\325\376\200\006\353\342\057\112\273\010\063\240\257 +\333\271\335\204 +END +CKA_CERT_MD5_HASH MULTILINE_OCTAL +\265\270\146\355\336\010\203\343\311\342\001\064\006\254\121\157 +END +CKA_ISSUER MULTILINE_OCTAL +\060\106\061\013\060\011\006\003\125\004\006\023\002\102\105\061 +\031\060\027\006\003\125\004\012\023\020\107\154\157\142\141\154 +\123\151\147\156\040\156\166\055\163\141\061\034\060\032\006\003 +\125\004\003\023\023\107\154\157\142\141\154\123\151\147\156\040 +\122\157\157\164\040\105\064\066 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\022\021\322\273\272\063\156\324\274\346\044\150\305\015\204 +\035\230\350\103 +END +CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR +CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST +CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST +CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE + +# +# Certificate "GLOBALTRUST 2020" +# +# Issuer: CN=GLOBALTRUST 2020,O=e-commerce monitoring GmbH,C=AT +# Serial Number:5a:4b:bd:5a:fb:4f:8a:5b:fa:65:e5 +# Subject: CN=GLOBALTRUST 2020,O=e-commerce monitoring GmbH,C=AT +# Not Valid Before: Mon Feb 10 00:00:00 2020 +# Not Valid After : Sun Jun 10 00:00:00 2040 +# Fingerprint (SHA-256): 9A:29:6A:51:82:D1:D4:51:A2:E3:7F:43:9B:74:DA:AF:A2:67:52:33:29:F9:0F:9A:0D:20:07:C3:34:E2:3C:9A +# Fingerprint (SHA1): D0:67:C1:13:51:01:0C:AA:D0:C7:6A:65:37:31:16:26:4F:53:71:A2 +CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "GLOBALTRUST 2020" +CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 +CKA_SUBJECT MULTILINE_OCTAL +\060\115\061\013\060\011\006\003\125\004\006\023\002\101\124\061 +\043\060\041\006\003\125\004\012\023\032\145\055\143\157\155\155 +\145\162\143\145\040\155\157\156\151\164\157\162\151\156\147\040 +\107\155\142\110\061\031\060\027\006\003\125\004\003\023\020\107 +\114\117\102\101\114\124\122\125\123\124\040\062\060\062\060 +END +CKA_ID UTF8 "0" +CKA_ISSUER MULTILINE_OCTAL +\060\115\061\013\060\011\006\003\125\004\006\023\002\101\124\061 +\043\060\041\006\003\125\004\012\023\032\145\055\143\157\155\155 +\145\162\143\145\040\155\157\156\151\164\157\162\151\156\147\040 +\107\155\142\110\061\031\060\027\006\003\125\004\003\023\020\107 +\114\117\102\101\114\124\122\125\123\124\040\062\060\062\060 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\013\132\113\275\132\373\117\212\133\372\145\345 +END +CKA_VALUE MULTILINE_OCTAL +\060\202\005\202\060\202\003\152\240\003\002\001\002\002\013\132 +\113\275\132\373\117\212\133\372\145\345\060\015\006\011\052\206 +\110\206\367\015\001\001\013\005\000\060\115\061\013\060\011\006 +\003\125\004\006\023\002\101\124\061\043\060\041\006\003\125\004 +\012\023\032\145\055\143\157\155\155\145\162\143\145\040\155\157 +\156\151\164\157\162\151\156\147\040\107\155\142\110\061\031\060 +\027\006\003\125\004\003\023\020\107\114\117\102\101\114\124\122 +\125\123\124\040\062\060\062\060\060\036\027\015\062\060\060\062 +\061\060\060\060\060\060\060\060\132\027\015\064\060\060\066\061 +\060\060\060\060\060\060\060\132\060\115\061\013\060\011\006\003 +\125\004\006\023\002\101\124\061\043\060\041\006\003\125\004\012 +\023\032\145\055\143\157\155\155\145\162\143\145\040\155\157\156 +\151\164\157\162\151\156\147\040\107\155\142\110\061\031\060\027 +\006\003\125\004\003\023\020\107\114\117\102\101\114\124\122\125 +\123\124\040\062\060\062\060\060\202\002\042\060\015\006\011\052 +\206\110\206\367\015\001\001\001\005\000\003\202\002\017\000\060 +\202\002\012\002\202\002\001\000\256\056\126\255\033\034\357\366 +\225\217\240\167\033\053\323\143\217\204\115\105\242\017\237\133 +\105\253\131\173\121\064\371\354\213\212\170\305\335\153\257\275 +\304\337\223\105\036\277\221\070\013\256\016\026\347\101\163\370 +\333\273\321\270\121\340\313\203\073\163\070\156\167\212\017\131 +\143\046\315\247\052\316\124\373\270\342\300\174\107\316\140\174 +\077\262\163\362\300\031\266\212\222\207\065\015\220\050\242\344 +\025\004\143\076\272\257\356\174\136\314\246\213\120\262\070\367 +\101\143\312\316\377\151\217\150\016\225\066\345\314\271\214\011 +\312\113\335\061\220\226\310\314\037\375\126\226\064\333\216\034 +\352\054\276\205\056\143\335\252\251\225\323\375\051\225\023\360 +\310\230\223\331\055\026\107\220\021\203\242\072\042\242\050\127 +\242\353\376\300\214\050\240\246\175\347\052\102\073\202\200\143 +\245\143\037\031\314\174\262\146\250\302\323\155\067\157\342\176 +\006\121\331\105\204\037\022\316\044\122\144\205\013\110\200\116 +\207\261\042\042\060\252\353\256\276\340\002\340\100\350\260\102 +\200\003\121\252\264\176\252\104\327\103\141\363\242\153\026\211 +\111\244\243\244\053\212\002\304\170\364\150\212\301\344\172\066 +\261\157\033\226\033\167\111\215\324\311\006\162\217\317\123\343 +\334\027\205\040\112\334\230\047\323\221\046\053\107\036\151\007 +\257\336\242\344\344\324\153\013\263\136\174\324\044\200\107\051 +\151\073\156\350\254\375\100\353\330\355\161\161\053\362\350\130 +\035\353\101\227\042\305\037\324\071\320\047\217\207\343\030\364 +\340\251\106\015\365\164\072\202\056\320\156\054\221\243\061\134 +\073\106\352\173\004\020\126\136\200\035\365\245\145\350\202\374 +\342\007\214\142\105\365\040\336\106\160\206\241\274\223\323\036 +\164\246\154\260\054\367\003\014\210\014\313\324\162\123\206\274 +\140\106\363\230\152\302\361\277\103\371\160\040\167\312\067\101 +\171\125\122\143\215\133\022\237\305\150\304\210\235\254\362\060 +\253\267\243\061\227\147\255\217\027\017\154\307\163\355\044\224 +\153\310\203\232\320\232\067\111\004\253\261\026\310\154\111\111 +\055\253\241\320\214\222\362\101\112\171\041\045\333\143\327\266 +\234\247\176\102\151\373\072\143\002\003\001\000\001\243\143\060 +\141\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001 +\001\377\060\016\006\003\125\035\017\001\001\377\004\004\003\002 +\001\006\060\035\006\003\125\035\016\004\026\004\024\334\056\037 +\321\141\067\171\344\253\325\325\263\022\161\150\075\152\150\234 +\042\060\037\006\003\125\035\043\004\030\060\026\200\024\334\056 +\037\321\141\067\171\344\253\325\325\263\022\161\150\075\152\150 +\234\042\060\015\006\011\052\206\110\206\367\015\001\001\013\005 +\000\003\202\002\001\000\221\360\102\002\150\100\356\303\150\300 +\124\057\337\354\142\303\303\236\212\240\061\050\252\203\216\244 +\126\226\022\020\206\126\272\227\162\322\124\060\174\255\031\325 +\035\150\157\373\024\102\330\215\016\363\265\321\245\343\002\102 +\136\334\350\106\130\007\065\002\060\340\274\164\112\301\103\052 +\377\333\032\320\260\257\154\303\375\313\263\365\177\155\003\056 +\131\126\235\055\055\065\214\262\326\103\027\054\222\012\313\135 +\350\214\017\113\160\103\320\202\377\250\314\277\244\224\300\276 +\207\275\212\343\223\173\306\217\233\026\235\047\145\274\172\305 +\102\202\154\134\007\320\251\301\210\140\104\351\230\205\026\137 +\370\217\312\001\020\316\045\303\371\140\033\240\305\227\303\323 +\054\210\061\242\275\060\354\320\320\300\022\361\301\071\343\345 +\365\370\326\112\335\064\315\373\157\301\117\343\000\213\126\342 +\222\367\050\262\102\167\162\043\147\307\077\021\025\262\304\003 +\005\276\273\021\173\012\277\250\156\347\377\130\103\317\233\147 +\240\200\007\266\035\312\255\155\352\101\021\176\055\164\223\373 +\302\274\276\121\104\305\357\150\045\047\200\343\310\240\324\022 +\354\331\245\067\035\067\174\264\221\312\332\324\261\226\201\357 +\150\134\166\020\111\257\176\245\067\200\261\034\122\275\063\201 +\114\217\371\335\145\331\024\315\212\045\130\364\342\305\203\245 +\011\220\324\154\024\143\265\100\337\353\300\374\304\130\176\015 +\024\026\207\124\047\156\126\344\160\204\270\154\062\022\176\202 +\061\103\276\327\335\174\241\255\256\326\253\040\022\357\012\303 +\020\214\111\226\065\334\013\165\136\261\117\325\117\064\016\021 +\040\007\165\103\105\351\243\021\332\254\243\231\302\266\171\047 +\342\271\357\310\342\366\065\051\172\164\372\305\177\202\005\142 +\246\012\352\150\262\171\107\006\156\362\127\250\025\063\306\367 +\170\112\075\102\173\153\176\376\367\106\352\321\353\216\357\210 +\150\133\350\301\331\161\176\375\144\357\377\147\107\210\130\045 +\057\076\206\007\275\373\250\345\202\250\254\245\323\151\103\315 +\061\210\111\204\123\222\300\261\071\033\071\203\001\060\304\362 +\251\372\320\003\275\162\067\140\126\037\066\174\275\071\221\365 +\155\015\277\173\327\222 +END +CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE + +# Trust for "GLOBALTRUST 2020" +# Issuer: CN=GLOBALTRUST 2020,O=e-commerce monitoring GmbH,C=AT +# Serial Number:5a:4b:bd:5a:fb:4f:8a:5b:fa:65:e5 +# Subject: CN=GLOBALTRUST 2020,O=e-commerce monitoring GmbH,C=AT +# Not Valid Before: Mon Feb 10 00:00:00 2020 +# Not Valid After : Sun Jun 10 00:00:00 2040 +# Fingerprint (SHA-256): 9A:29:6A:51:82:D1:D4:51:A2:E3:7F:43:9B:74:DA:AF:A2:67:52:33:29:F9:0F:9A:0D:20:07:C3:34:E2:3C:9A +# Fingerprint (SHA1): D0:67:C1:13:51:01:0C:AA:D0:C7:6A:65:37:31:16:26:4F:53:71:A2 +CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "GLOBALTRUST 2020" +CKA_CERT_SHA1_HASH MULTILINE_OCTAL +\320\147\301\023\121\001\014\252\320\307\152\145\067\061\026\046 +\117\123\161\242 +END +CKA_CERT_MD5_HASH MULTILINE_OCTAL +\212\307\157\313\155\343\314\242\361\174\203\372\016\170\327\350 +END +CKA_ISSUER MULTILINE_OCTAL +\060\115\061\013\060\011\006\003\125\004\006\023\002\101\124\061 +\043\060\041\006\003\125\004\012\023\032\145\055\143\157\155\155 +\145\162\143\145\040\155\157\156\151\164\157\162\151\156\147\040 +\107\155\142\110\061\031\060\027\006\003\125\004\003\023\020\107 +\114\117\102\101\114\124\122\125\123\124\040\062\060\062\060 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\013\132\113\275\132\373\117\212\133\372\145\345 +END +CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR +CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR +CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST +CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE + +# +# Certificate "ANF Secure Server Root CA" +# +# Issuer: CN=ANF Secure Server Root CA,OU=ANF CA Raiz,O=ANF Autoridad de Certificacion,C=ES,serialNumber=G63287510 +# Serial Number:0d:d3:e3:bc:6c:f9:6b:b1 +# Subject: CN=ANF Secure Server Root CA,OU=ANF CA Raiz,O=ANF Autoridad de Certificacion,C=ES,serialNumber=G63287510 +# Not Valid Before: Wed Sep 04 10:00:38 2019 +# Not Valid After : Tue Aug 30 10:00:38 2039 +# Fingerprint (SHA-256): FB:8F:EC:75:91:69:B9:10:6B:1E:51:16:44:C6:18:C5:13:04:37:3F:6C:06:43:08:8D:8B:EF:FD:1B:99:75:99 +# Fingerprint (SHA1): 5B:6E:68:D0:CC:15:B6:A0:5F:1E:C1:5F:AE:02:FC:6B:2F:5D:6F:74 +CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "ANF Secure Server Root CA" +CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 +CKA_SUBJECT MULTILINE_OCTAL +\060\201\204\061\022\060\020\006\003\125\004\005\023\011\107\066 +\063\062\070\067\065\061\060\061\013\060\011\006\003\125\004\006 +\023\002\105\123\061\047\060\045\006\003\125\004\012\023\036\101 +\116\106\040\101\165\164\157\162\151\144\141\144\040\144\145\040 +\103\145\162\164\151\146\151\143\141\143\151\157\156\061\024\060 +\022\006\003\125\004\013\023\013\101\116\106\040\103\101\040\122 +\141\151\172\061\042\060\040\006\003\125\004\003\023\031\101\116 +\106\040\123\145\143\165\162\145\040\123\145\162\166\145\162\040 +\122\157\157\164\040\103\101 +END +CKA_ID UTF8 "0" +CKA_ISSUER MULTILINE_OCTAL +\060\201\204\061\022\060\020\006\003\125\004\005\023\011\107\066 +\063\062\070\067\065\061\060\061\013\060\011\006\003\125\004\006 +\023\002\105\123\061\047\060\045\006\003\125\004\012\023\036\101 +\116\106\040\101\165\164\157\162\151\144\141\144\040\144\145\040 +\103\145\162\164\151\146\151\143\141\143\151\157\156\061\024\060 +\022\006\003\125\004\013\023\013\101\116\106\040\103\101\040\122 +\141\151\172\061\042\060\040\006\003\125\004\003\023\031\101\116 +\106\040\123\145\143\165\162\145\040\123\145\162\166\145\162\040 +\122\157\157\164\040\103\101 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\010\015\323\343\274\154\371\153\261 +END +CKA_VALUE MULTILINE_OCTAL +\060\202\005\357\060\202\003\327\240\003\002\001\002\002\010\015 +\323\343\274\154\371\153\261\060\015\006\011\052\206\110\206\367 +\015\001\001\013\005\000\060\201\204\061\022\060\020\006\003\125 +\004\005\023\011\107\066\063\062\070\067\065\061\060\061\013\060 +\011\006\003\125\004\006\023\002\105\123\061\047\060\045\006\003 +\125\004\012\023\036\101\116\106\040\101\165\164\157\162\151\144 +\141\144\040\144\145\040\103\145\162\164\151\146\151\143\141\143 +\151\157\156\061\024\060\022\006\003\125\004\013\023\013\101\116 +\106\040\103\101\040\122\141\151\172\061\042\060\040\006\003\125 +\004\003\023\031\101\116\106\040\123\145\143\165\162\145\040\123 +\145\162\166\145\162\040\122\157\157\164\040\103\101\060\036\027 +\015\061\071\060\071\060\064\061\060\060\060\063\070\132\027\015 +\063\071\060\070\063\060\061\060\060\060\063\070\132\060\201\204 +\061\022\060\020\006\003\125\004\005\023\011\107\066\063\062\070 +\067\065\061\060\061\013\060\011\006\003\125\004\006\023\002\105 +\123\061\047\060\045\006\003\125\004\012\023\036\101\116\106\040 +\101\165\164\157\162\151\144\141\144\040\144\145\040\103\145\162 +\164\151\146\151\143\141\143\151\157\156\061\024\060\022\006\003 +\125\004\013\023\013\101\116\106\040\103\101\040\122\141\151\172 +\061\042\060\040\006\003\125\004\003\023\031\101\116\106\040\123 +\145\143\165\162\145\040\123\145\162\166\145\162\040\122\157\157 +\164\040\103\101\060\202\002\042\060\015\006\011\052\206\110\206 +\367\015\001\001\001\005\000\003\202\002\017\000\060\202\002\012 +\002\202\002\001\000\333\353\153\053\346\144\124\225\202\220\243 +\162\244\031\001\235\234\013\201\137\163\111\272\247\254\363\004 +\116\173\226\013\354\021\340\133\246\034\316\033\322\015\203\034 +\053\270\236\035\176\105\062\140\017\007\351\167\130\176\237\152 +\310\141\116\266\046\301\114\215\377\114\357\064\262\037\145\330 +\271\170\365\255\251\161\271\357\117\130\035\245\336\164\040\227 +\241\355\150\114\336\222\027\113\274\253\377\145\232\236\373\107 +\331\127\162\363\011\241\256\166\104\023\156\234\055\104\071\274 +\371\307\073\244\130\075\101\275\264\302\111\243\310\015\322\227 +\057\007\145\122\000\247\156\310\257\150\354\364\024\226\266\127 +\037\126\303\071\237\053\155\344\363\076\366\065\144\332\014\034 +\241\204\113\057\113\113\342\054\044\235\155\223\100\353\265\043 +\216\062\312\157\105\323\250\211\173\036\317\036\372\133\103\213 +\315\315\250\017\152\312\014\136\271\236\107\217\360\331\266\012 +\013\130\145\027\063\271\043\344\167\031\175\313\112\056\222\173 +\117\057\020\167\261\215\057\150\234\142\314\340\120\370\354\221 +\247\124\114\127\011\325\166\143\305\350\145\036\356\155\152\317 +\011\235\372\174\117\255\140\010\375\126\231\017\025\054\173\251 +\200\253\214\141\217\112\007\166\102\336\075\364\335\262\044\063 +\133\270\265\243\104\311\254\177\167\074\035\043\354\202\251\246 +\342\310\006\114\002\376\254\134\231\231\013\057\020\212\246\364 +\177\325\207\164\015\131\111\105\366\360\161\134\071\051\326\277 +\112\043\213\365\137\001\143\322\207\163\050\265\113\012\365\370 +\253\202\054\176\163\045\062\035\013\143\012\027\201\000\377\266 +\166\136\347\264\261\100\312\041\273\325\200\121\345\110\122\147 +\054\322\141\211\007\015\017\316\102\167\300\104\163\234\104\120 +\240\333\020\012\055\225\034\201\257\344\034\345\024\036\361\066 +\101\001\002\057\175\163\247\336\102\314\114\351\211\015\126\367 +\237\221\324\003\306\154\311\217\333\330\034\340\100\230\135\146 +\231\230\200\156\055\377\001\305\316\313\106\037\254\002\306\103 +\346\256\242\204\074\305\116\036\075\155\311\024\114\343\056\101 +\273\312\071\277\066\074\052\031\252\101\207\116\245\316\113\062 +\171\335\220\111\177\002\003\001\000\001\243\143\060\141\060\037 +\006\003\125\035\043\004\030\060\026\200\024\234\137\320\154\143 +\243\137\223\312\223\230\010\255\214\207\245\054\134\301\067\060 +\035\006\003\125\035\016\004\026\004\024\234\137\320\154\143\243 +\137\223\312\223\230\010\255\214\207\245\054\134\301\067\060\016 +\006\003\125\035\017\001\001\377\004\004\003\002\001\206\060\017 +\006\003\125\035\023\001\001\377\004\005\060\003\001\001\377\060 +\015\006\011\052\206\110\206\367\015\001\001\013\005\000\003\202 +\002\001\000\116\036\271\212\306\240\230\077\156\303\151\300\152 +\134\111\122\254\313\053\135\170\070\301\325\124\204\237\223\360 +\207\031\075\054\146\211\353\015\102\374\314\360\165\205\077\213 +\364\200\135\171\345\027\147\275\065\202\342\362\074\216\175\133 +\066\313\132\200\000\051\362\316\053\054\361\217\252\155\005\223 +\154\162\307\126\353\337\120\043\050\345\105\020\075\350\147\243 +\257\016\125\017\220\011\142\357\113\131\242\366\123\361\300\065 +\344\057\301\044\275\171\057\116\040\042\073\375\032\040\260\244 +\016\054\160\355\164\077\270\023\225\006\121\310\350\207\046\312 +\244\133\152\026\041\222\335\163\140\236\020\030\336\074\201\352 +\350\030\303\174\211\362\213\120\076\275\021\342\025\003\250\066 +\175\063\001\154\110\025\327\210\220\231\004\305\314\346\007\364 +\274\364\220\355\023\342\352\213\303\217\243\063\017\301\051\114 +\023\116\332\025\126\161\163\162\202\120\366\232\063\174\242\261 +\250\032\064\164\145\134\316\321\353\253\123\340\032\200\330\352 +\072\111\344\046\060\233\345\034\212\250\251\025\062\206\231\222 +\012\020\043\126\022\340\366\316\114\342\273\276\333\215\222\163 +\001\146\057\142\076\262\162\047\105\066\355\115\126\343\227\231 +\377\072\065\076\245\124\112\122\131\113\140\333\356\376\170\021 +\177\112\334\024\171\140\266\153\144\003\333\025\203\341\242\276 +\366\043\227\120\360\011\063\066\247\161\226\045\363\271\102\175 +\333\070\077\054\130\254\350\102\341\016\330\323\073\114\056\202 +\351\203\056\153\061\331\335\107\206\117\155\227\221\056\117\342 +\050\161\065\026\321\362\163\376\045\053\007\107\044\143\047\310 +\370\366\331\153\374\022\061\126\010\300\123\102\257\234\320\063 +\176\374\006\360\061\104\003\024\361\130\352\362\152\015\251\021 +\262\203\276\305\032\277\007\352\131\334\243\210\065\357\234\166 +\062\074\115\006\042\316\025\345\335\236\330\217\332\336\322\304 +\071\345\027\201\317\070\107\353\177\210\155\131\033\337\237\102 +\024\256\176\317\250\260\146\145\332\067\257\237\252\075\352\050 +\266\336\325\061\130\026\202\133\352\273\031\165\002\163\032\312 +\110\032\041\223\220\012\216\223\204\247\175\073\043\030\222\211 +\240\215\254 +END +CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE + +# Trust for "ANF Secure Server Root CA" +# Issuer: CN=ANF Secure Server Root CA,OU=ANF CA Raiz,O=ANF Autoridad de Certificacion,C=ES,serialNumber=G63287510 +# Serial Number:0d:d3:e3:bc:6c:f9:6b:b1 +# Subject: CN=ANF Secure Server Root CA,OU=ANF CA Raiz,O=ANF Autoridad de Certificacion,C=ES,serialNumber=G63287510 +# Not Valid Before: Wed Sep 04 10:00:38 2019 +# Not Valid After : Tue Aug 30 10:00:38 2039 +# Fingerprint (SHA-256): FB:8F:EC:75:91:69:B9:10:6B:1E:51:16:44:C6:18:C5:13:04:37:3F:6C:06:43:08:8D:8B:EF:FD:1B:99:75:99 +# Fingerprint (SHA1): 5B:6E:68:D0:CC:15:B6:A0:5F:1E:C1:5F:AE:02:FC:6B:2F:5D:6F:74 +CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "ANF Secure Server Root CA" +CKA_CERT_SHA1_HASH MULTILINE_OCTAL +\133\156\150\320\314\025\266\240\137\036\301\137\256\002\374\153 +\057\135\157\164 +END +CKA_CERT_MD5_HASH MULTILINE_OCTAL +\046\246\104\132\331\257\116\057\262\035\266\145\260\116\350\226 +END +CKA_ISSUER MULTILINE_OCTAL +\060\201\204\061\022\060\020\006\003\125\004\005\023\011\107\066 +\063\062\070\067\065\061\060\061\013\060\011\006\003\125\004\006 +\023\002\105\123\061\047\060\045\006\003\125\004\012\023\036\101 +\116\106\040\101\165\164\157\162\151\144\141\144\040\144\145\040 +\103\145\162\164\151\146\151\143\141\143\151\157\156\061\024\060 +\022\006\003\125\004\013\023\013\101\116\106\040\103\101\040\122 +\141\151\172\061\042\060\040\006\003\125\004\003\023\031\101\116 +\106\040\123\145\143\165\162\145\040\123\145\162\166\145\162\040 +\122\157\157\164\040\103\101 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\010\015\323\343\274\154\371\153\261 +END +CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR +CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_MUST_VERIFY_TRUST +CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST +CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE + +# +# Certificate "Certum EC-384 CA" +# +# Issuer: CN=Certum EC-384 CA,OU=Certum Certification Authority,O=Asseco Data Systems S.A.,C=PL +# Serial Number:78:8f:27:5c:81:12:52:20:a5:04:d0:2d:dd:ba:73:f4 +# Subject: CN=Certum EC-384 CA,OU=Certum Certification Authority,O=Asseco Data Systems S.A.,C=PL +# Not Valid Before: Mon Mar 26 07:24:54 2018 +# Not Valid After : Thu Mar 26 07:24:54 2043 +# Fingerprint (SHA-256): 6B:32:80:85:62:53:18:AA:50:D1:73:C9:8D:8B:DA:09:D5:7E:27:41:3D:11:4C:F7:87:A0:F5:D0:6C:03:0C:F6 +# Fingerprint (SHA1): F3:3E:78:3C:AC:DF:F4:A2:CC:AC:67:55:69:56:D7:E5:16:3C:E1:ED +CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "Certum EC-384 CA" +CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 +CKA_SUBJECT MULTILINE_OCTAL +\060\164\061\013\060\011\006\003\125\004\006\023\002\120\114\061 +\041\060\037\006\003\125\004\012\023\030\101\163\163\145\143\157 +\040\104\141\164\141\040\123\171\163\164\145\155\163\040\123\056 +\101\056\061\047\060\045\006\003\125\004\013\023\036\103\145\162 +\164\165\155\040\103\145\162\164\151\146\151\143\141\164\151\157 +\156\040\101\165\164\150\157\162\151\164\171\061\031\060\027\006 +\003\125\004\003\023\020\103\145\162\164\165\155\040\105\103\055 +\063\070\064\040\103\101 +END +CKA_ID UTF8 "0" +CKA_ISSUER MULTILINE_OCTAL +\060\164\061\013\060\011\006\003\125\004\006\023\002\120\114\061 +\041\060\037\006\003\125\004\012\023\030\101\163\163\145\143\157 +\040\104\141\164\141\040\123\171\163\164\145\155\163\040\123\056 +\101\056\061\047\060\045\006\003\125\004\013\023\036\103\145\162 +\164\165\155\040\103\145\162\164\151\146\151\143\141\164\151\157 +\156\040\101\165\164\150\157\162\151\164\171\061\031\060\027\006 +\003\125\004\003\023\020\103\145\162\164\165\155\040\105\103\055 +\063\070\064\040\103\101 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\020\170\217\047\134\201\022\122\040\245\004\320\055\335\272 +\163\364 +END +CKA_VALUE MULTILINE_OCTAL +\060\202\002\145\060\202\001\353\240\003\002\001\002\002\020\170 +\217\047\134\201\022\122\040\245\004\320\055\335\272\163\364\060 +\012\006\010\052\206\110\316\075\004\003\003\060\164\061\013\060 +\011\006\003\125\004\006\023\002\120\114\061\041\060\037\006\003 +\125\004\012\023\030\101\163\163\145\143\157\040\104\141\164\141 +\040\123\171\163\164\145\155\163\040\123\056\101\056\061\047\060 +\045\006\003\125\004\013\023\036\103\145\162\164\165\155\040\103 +\145\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164 +\150\157\162\151\164\171\061\031\060\027\006\003\125\004\003\023 +\020\103\145\162\164\165\155\040\105\103\055\063\070\064\040\103 +\101\060\036\027\015\061\070\060\063\062\066\060\067\062\064\065 +\064\132\027\015\064\063\060\063\062\066\060\067\062\064\065\064 +\132\060\164\061\013\060\011\006\003\125\004\006\023\002\120\114 +\061\041\060\037\006\003\125\004\012\023\030\101\163\163\145\143 +\157\040\104\141\164\141\040\123\171\163\164\145\155\163\040\123 +\056\101\056\061\047\060\045\006\003\125\004\013\023\036\103\145 +\162\164\165\155\040\103\145\162\164\151\146\151\143\141\164\151 +\157\156\040\101\165\164\150\157\162\151\164\171\061\031\060\027 +\006\003\125\004\003\023\020\103\145\162\164\165\155\040\105\103 +\055\063\070\064\040\103\101\060\166\060\020\006\007\052\206\110 +\316\075\002\001\006\005\053\201\004\000\042\003\142\000\004\304 +\050\216\253\030\133\152\276\156\144\067\143\344\315\354\253\072 +\367\314\241\270\016\202\111\327\206\051\237\241\224\362\343\140 +\170\230\201\170\006\115\362\354\232\016\127\140\203\237\264\346 +\027\057\032\263\135\002\133\211\043\074\302\021\005\052\247\210 +\023\030\363\120\204\327\275\064\054\047\211\125\377\316\114\347 +\337\246\037\050\304\360\124\303\271\174\267\123\255\353\302\243 +\102\060\100\060\017\006\003\125\035\023\001\001\377\004\005\060 +\003\001\001\377\060\035\006\003\125\035\016\004\026\004\024\215 +\006\146\164\044\166\072\363\211\367\274\326\275\107\175\057\274 +\020\137\113\060\016\006\003\125\035\017\001\001\377\004\004\003 +\002\001\006\060\012\006\010\052\206\110\316\075\004\003\003\003 +\150\000\060\145\002\060\003\125\055\246\346\030\304\174\357\311 +\120\156\301\047\017\234\207\257\156\325\033\010\030\275\222\051 +\301\357\224\221\170\322\072\034\125\211\142\345\033\011\036\272 +\144\153\361\166\264\324\002\061\000\264\102\204\231\377\253\347 +\236\373\221\227\047\135\334\260\133\060\161\316\136\070\032\152 +\331\045\347\352\367\141\222\126\370\352\332\066\302\207\145\226 +\056\162\045\057\177\337\303\023\311 +END +CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE + +# Trust for "Certum EC-384 CA" +# Issuer: CN=Certum EC-384 CA,OU=Certum Certification Authority,O=Asseco Data Systems S.A.,C=PL +# Serial Number:78:8f:27:5c:81:12:52:20:a5:04:d0:2d:dd:ba:73:f4 +# Subject: CN=Certum EC-384 CA,OU=Certum Certification Authority,O=Asseco Data Systems S.A.,C=PL +# Not Valid Before: Mon Mar 26 07:24:54 2018 +# Not Valid After : Thu Mar 26 07:24:54 2043 +# Fingerprint (SHA-256): 6B:32:80:85:62:53:18:AA:50:D1:73:C9:8D:8B:DA:09:D5:7E:27:41:3D:11:4C:F7:87:A0:F5:D0:6C:03:0C:F6 +# Fingerprint (SHA1): F3:3E:78:3C:AC:DF:F4:A2:CC:AC:67:55:69:56:D7:E5:16:3C:E1:ED +CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "Certum EC-384 CA" +CKA_CERT_SHA1_HASH MULTILINE_OCTAL +\363\076\170\074\254\337\364\242\314\254\147\125\151\126\327\345 +\026\074\341\355 +END +CKA_CERT_MD5_HASH MULTILINE_OCTAL +\266\145\263\226\140\227\022\241\354\116\341\075\243\306\311\361 +END +CKA_ISSUER MULTILINE_OCTAL +\060\164\061\013\060\011\006\003\125\004\006\023\002\120\114\061 +\041\060\037\006\003\125\004\012\023\030\101\163\163\145\143\157 +\040\104\141\164\141\040\123\171\163\164\145\155\163\040\123\056 +\101\056\061\047\060\045\006\003\125\004\013\023\036\103\145\162 +\164\165\155\040\103\145\162\164\151\146\151\143\141\164\151\157 +\156\040\101\165\164\150\157\162\151\164\171\061\031\060\027\006 +\003\125\004\003\023\020\103\145\162\164\165\155\040\105\103\055 +\063\070\064\040\103\101 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\020\170\217\047\134\201\022\122\040\245\004\320\055\335\272 +\163\364 +END +CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR +CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR +CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST +CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE + +# +# Certificate "Certum Trusted Root CA" +# +# Issuer: CN=Certum Trusted Root CA,OU=Certum Certification Authority,O=Asseco Data Systems S.A.,C=PL +# Serial Number:1e:bf:59:50:b8:c9:80:37:4c:06:f7:eb:55:4f:b5:ed +# Subject: CN=Certum Trusted Root CA,OU=Certum Certification Authority,O=Asseco Data Systems S.A.,C=PL +# Not Valid Before: Fri Mar 16 12:10:13 2018 +# Not Valid After : Mon Mar 16 12:10:13 2043 +# Fingerprint (SHA-256): FE:76:96:57:38:55:77:3E:37:A9:5E:7A:D4:D9:CC:96:C3:01:57:C1:5D:31:76:5B:A9:B1:57:04:E1:AE:78:FD +# Fingerprint (SHA1): C8:83:44:C0:18:AE:9F:CC:F1:87:B7:8F:22:D1:C5:D7:45:84:BA:E5 +CKA_CLASS CK_OBJECT_CLASS CKO_CERTIFICATE +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "Certum Trusted Root CA" +CKA_CERTIFICATE_TYPE CK_CERTIFICATE_TYPE CKC_X_509 +CKA_SUBJECT MULTILINE_OCTAL +\060\172\061\013\060\011\006\003\125\004\006\023\002\120\114\061 +\041\060\037\006\003\125\004\012\023\030\101\163\163\145\143\157 +\040\104\141\164\141\040\123\171\163\164\145\155\163\040\123\056 +\101\056\061\047\060\045\006\003\125\004\013\023\036\103\145\162 +\164\165\155\040\103\145\162\164\151\146\151\143\141\164\151\157 +\156\040\101\165\164\150\157\162\151\164\171\061\037\060\035\006 +\003\125\004\003\023\026\103\145\162\164\165\155\040\124\162\165 +\163\164\145\144\040\122\157\157\164\040\103\101 +END +CKA_ID UTF8 "0" +CKA_ISSUER MULTILINE_OCTAL +\060\172\061\013\060\011\006\003\125\004\006\023\002\120\114\061 +\041\060\037\006\003\125\004\012\023\030\101\163\163\145\143\157 +\040\104\141\164\141\040\123\171\163\164\145\155\163\040\123\056 +\101\056\061\047\060\045\006\003\125\004\013\023\036\103\145\162 +\164\165\155\040\103\145\162\164\151\146\151\143\141\164\151\157 +\156\040\101\165\164\150\157\162\151\164\171\061\037\060\035\006 +\003\125\004\003\023\026\103\145\162\164\165\155\040\124\162\165 +\163\164\145\144\040\122\157\157\164\040\103\101 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\020\036\277\131\120\270\311\200\067\114\006\367\353\125\117 +\265\355 +END +CKA_VALUE MULTILINE_OCTAL +\060\202\005\300\060\202\003\250\240\003\002\001\002\002\020\036 +\277\131\120\270\311\200\067\114\006\367\353\125\117\265\355\060 +\015\006\011\052\206\110\206\367\015\001\001\015\005\000\060\172 +\061\013\060\011\006\003\125\004\006\023\002\120\114\061\041\060 +\037\006\003\125\004\012\023\030\101\163\163\145\143\157\040\104 +\141\164\141\040\123\171\163\164\145\155\163\040\123\056\101\056 +\061\047\060\045\006\003\125\004\013\023\036\103\145\162\164\165 +\155\040\103\145\162\164\151\146\151\143\141\164\151\157\156\040 +\101\165\164\150\157\162\151\164\171\061\037\060\035\006\003\125 +\004\003\023\026\103\145\162\164\165\155\040\124\162\165\163\164 +\145\144\040\122\157\157\164\040\103\101\060\036\027\015\061\070 +\060\063\061\066\061\062\061\060\061\063\132\027\015\064\063\060 +\063\061\066\061\062\061\060\061\063\132\060\172\061\013\060\011 +\006\003\125\004\006\023\002\120\114\061\041\060\037\006\003\125 +\004\012\023\030\101\163\163\145\143\157\040\104\141\164\141\040 +\123\171\163\164\145\155\163\040\123\056\101\056\061\047\060\045 +\006\003\125\004\013\023\036\103\145\162\164\165\155\040\103\145 +\162\164\151\146\151\143\141\164\151\157\156\040\101\165\164\150 +\157\162\151\164\171\061\037\060\035\006\003\125\004\003\023\026 +\103\145\162\164\165\155\040\124\162\165\163\164\145\144\040\122 +\157\157\164\040\103\101\060\202\002\042\060\015\006\011\052\206 +\110\206\367\015\001\001\001\005\000\003\202\002\017\000\060\202 +\002\012\002\202\002\001\000\321\055\216\273\267\066\352\155\067 +\221\237\116\223\247\005\344\051\003\045\316\034\202\367\174\231 +\237\101\006\315\355\243\272\300\333\011\054\301\174\337\051\176 +\113\145\057\223\247\324\001\153\003\050\030\243\330\235\005\301 +\052\330\105\361\221\336\337\073\320\200\002\214\317\070\017\352 +\247\134\170\021\244\301\310\205\134\045\323\323\262\347\045\317 +\021\124\227\253\065\300\036\166\034\357\000\123\237\071\334\024 +\245\054\042\045\263\162\162\374\215\263\345\076\010\036\024\052 +\067\013\210\074\312\260\364\310\302\241\256\274\301\276\051\147 +\125\342\374\255\131\134\376\275\127\054\260\220\215\302\355\067 +\266\174\231\210\265\325\003\232\075\025\015\075\072\250\250\105 +\360\225\116\045\131\035\315\230\151\273\323\314\062\311\215\357 +\201\376\255\175\211\273\272\140\023\312\145\225\147\240\363\031 +\366\003\126\324\152\323\047\342\241\255\203\360\112\022\042\167 +\034\005\163\342\031\161\102\300\354\165\106\232\220\130\340\152 +\216\053\245\106\060\004\216\031\262\027\343\276\251\272\177\126 +\361\044\003\327\262\041\050\166\016\066\060\114\171\325\101\232 +\232\250\270\065\272\014\072\362\104\033\040\210\367\305\045\327 +\075\306\343\076\103\335\207\376\304\352\365\123\076\114\145\377 +\073\112\313\170\132\153\027\137\015\307\303\117\116\232\052\242 +\355\127\115\042\342\106\232\077\017\221\064\044\175\125\343\214 +\225\067\323\032\360\011\053\054\322\311\215\264\015\000\253\147 +\051\050\330\001\365\031\004\266\035\276\166\376\162\134\304\205 +\312\322\200\101\337\005\250\243\325\204\220\117\013\363\340\077 +\233\031\322\067\211\077\362\173\122\034\214\366\341\367\074\007 +\227\214\016\242\131\201\014\262\220\075\323\343\131\106\355\017 +\251\247\336\200\153\132\252\007\266\031\313\274\127\363\227\041 +\172\014\261\053\164\076\353\332\247\147\055\114\304\230\236\066 +\011\166\146\146\374\032\077\352\110\124\034\276\060\275\200\120 +\277\174\265\316\000\366\014\141\331\347\044\003\340\343\001\201 +\016\275\330\205\064\210\275\262\066\250\173\134\010\345\104\200 +\214\157\370\057\325\041\312\035\034\320\373\304\265\207\321\072 +\116\307\166\265\065\110\265\002\003\001\000\001\243\102\060\100 +\060\017\006\003\125\035\023\001\001\377\004\005\060\003\001\001 +\377\060\035\006\003\125\035\016\004\026\004\024\214\373\034\165 +\274\002\323\237\116\056\110\331\371\140\124\252\304\263\117\372 +\060\016\006\003\125\035\017\001\001\377\004\004\003\002\001\006 +\060\015\006\011\052\206\110\206\367\015\001\001\015\005\000\003 +\202\002\001\000\110\242\325\000\013\056\320\077\274\034\325\265 +\124\111\036\132\153\364\344\362\340\100\067\340\314\024\173\271 +\311\372\065\265\165\027\223\152\005\151\205\234\315\117\031\170 +\133\031\201\363\143\076\303\316\133\217\365\057\136\001\166\023 +\077\054\000\271\315\226\122\071\111\155\004\116\305\351\017\206 +\015\341\372\263\137\202\022\361\072\316\146\006\044\064\053\350 +\314\312\347\151\334\207\235\302\064\327\171\321\323\167\270\252 +\131\130\376\235\046\372\070\206\076\235\212\207\144\127\345\027 +\072\342\371\215\271\343\063\170\301\220\330\270\335\267\203\121 +\344\304\314\043\325\006\174\346\121\323\315\064\061\300\366\106 +\273\013\255\374\075\020\005\052\073\112\221\045\356\214\324\204 +\207\200\052\274\011\214\252\072\023\137\350\064\171\120\301\020 +\031\371\323\050\036\324\321\121\060\051\263\256\220\147\326\037 +\012\143\261\305\251\306\102\061\143\027\224\357\151\313\057\372 +\214\024\175\304\103\030\211\331\360\062\100\346\200\342\106\137 +\345\343\301\000\131\250\371\350\040\274\211\054\016\107\064\013 +\352\127\302\123\066\374\247\324\257\061\315\376\002\345\165\372 +\271\047\011\371\363\365\073\312\175\237\251\042\313\210\311\252 +\321\107\075\066\167\250\131\144\153\047\317\357\047\301\343\044 +\265\206\367\256\176\062\115\260\171\150\321\071\350\220\130\303 +\203\274\017\054\326\227\353\316\014\341\040\307\332\267\076\303 +\077\277\057\334\064\244\373\053\041\315\147\217\113\364\343\352 +\324\077\347\117\272\271\245\223\105\034\146\037\041\372\144\136 +\157\340\166\224\062\313\165\365\156\345\366\217\307\270\244\314 +\250\226\175\144\373\044\132\112\003\154\153\070\306\350\003\103 +\232\367\127\271\263\051\151\223\070\364\003\362\273\373\202\153 +\007\040\321\122\037\232\144\002\173\230\146\333\134\115\132\017 +\320\204\225\240\074\024\103\006\312\312\333\270\101\066\332\152 +\104\147\207\257\257\343\105\021\025\151\010\262\276\026\071\227 +\044\157\022\105\321\147\135\011\250\311\025\332\372\322\246\137 +\023\141\037\277\205\254\264\255\255\005\224\010\203\036\165\027 +\323\161\073\223\120\043\131\240\355\074\221\124\235\166\000\305 +\303\270\070\333 +END +CKA_NSS_MOZILLA_CA_POLICY CK_BBOOL CK_TRUE +CKA_NSS_SERVER_DISTRUST_AFTER CK_BBOOL CK_FALSE +CKA_NSS_EMAIL_DISTRUST_AFTER CK_BBOOL CK_FALSE + +# Trust for "Certum Trusted Root CA" +# Issuer: CN=Certum Trusted Root CA,OU=Certum Certification Authority,O=Asseco Data Systems S.A.,C=PL +# Serial Number:1e:bf:59:50:b8:c9:80:37:4c:06:f7:eb:55:4f:b5:ed +# Subject: CN=Certum Trusted Root CA,OU=Certum Certification Authority,O=Asseco Data Systems S.A.,C=PL +# Not Valid Before: Fri Mar 16 12:10:13 2018 +# Not Valid After : Mon Mar 16 12:10:13 2043 +# Fingerprint (SHA-256): FE:76:96:57:38:55:77:3E:37:A9:5E:7A:D4:D9:CC:96:C3:01:57:C1:5D:31:76:5B:A9:B1:57:04:E1:AE:78:FD +# Fingerprint (SHA1): C8:83:44:C0:18:AE:9F:CC:F1:87:B7:8F:22:D1:C5:D7:45:84:BA:E5 +CKA_CLASS CK_OBJECT_CLASS CKO_NSS_TRUST +CKA_TOKEN CK_BBOOL CK_TRUE +CKA_PRIVATE CK_BBOOL CK_FALSE +CKA_MODIFIABLE CK_BBOOL CK_FALSE +CKA_LABEL UTF8 "Certum Trusted Root CA" +CKA_CERT_SHA1_HASH MULTILINE_OCTAL +\310\203\104\300\030\256\237\314\361\207\267\217\042\321\305\327 +\105\204\272\345 +END +CKA_CERT_MD5_HASH MULTILINE_OCTAL +\121\341\302\347\376\114\204\257\131\016\057\364\124\157\352\051 +END +CKA_ISSUER MULTILINE_OCTAL +\060\172\061\013\060\011\006\003\125\004\006\023\002\120\114\061 +\041\060\037\006\003\125\004\012\023\030\101\163\163\145\143\157 +\040\104\141\164\141\040\123\171\163\164\145\155\163\040\123\056 +\101\056\061\047\060\045\006\003\125\004\013\023\036\103\145\162 +\164\165\155\040\103\145\162\164\151\146\151\143\141\164\151\157 +\156\040\101\165\164\150\157\162\151\164\171\061\037\060\035\006 +\003\125\004\003\023\026\103\145\162\164\165\155\040\124\162\165 +\163\164\145\144\040\122\157\157\164\040\103\101 +END +CKA_SERIAL_NUMBER MULTILINE_OCTAL +\002\020\036\277\131\120\270\311\200\067\114\006\367\353\125\117 +\265\355 +END +CKA_TRUST_SERVER_AUTH CK_TRUST CKT_NSS_TRUSTED_DELEGATOR +CKA_TRUST_EMAIL_PROTECTION CK_TRUST CKT_NSS_TRUSTED_DELEGATOR +CKA_TRUST_CODE_SIGNING CK_TRUST CKT_NSS_MUST_VERIFY_TRUST +CKA_TRUST_STEP_UP_APPROVED CK_BBOOL CK_FALSE diff --git a/config/cfgroot/general-functions.pl b/config/cfgroot/general-functions.pl index a6656ccf5..550afcf82 100644 --- a/config/cfgroot/general-functions.pl +++ b/config/cfgroot/general-functions.pl @@ -28,6 +28,77 @@ $General::adminmanualurl = 'http://wiki.ipfire.org';
require "${General::swroot}/network-functions.pl";
+# This function executes a shell command without forking a shell or do any other +# Perl-voodoo before it. It deprecates the "system" command and is the only way +# to call shell commands. +sub safe_system($) { + my @command = @_; + + system { ${command[0]} } @command; + + # Return exit code + return $? >> 8; +} + +# Calls a process in the background and returns nothing +sub system_background($) { + my $pid = fork(); + + unless ($pid) { + my $rc = &system(@_); + exit($rc); + } + + return 0; +} + +# Returns the output of a shell command +sub system_output($) { + my @command = @_; + my $pid; + my @output = (); + + unless ($pid = open(OUTPUT, "-|")) { + open(STDERR, ">&STDOUT"); + exec { ${command[0]} } @command; + die "Could not execute @command: $!"; + } + + waitpid($pid, 0); + + while (<OUTPUT>) { + push(@output, $_); + } + close(OUTPUT); + + return @output; +} + +# Calls a shell command and throws away the output +sub system($) { + my @command = @_; + + open(SAVEOUT, ">&STDOUT"); + open(SAVEERR, ">&STDERR"); + + open(STDOUT, ">/dev/null"); + open(STDERR, ">&STDOUT"); + + select(STDERR); $|=1; + select(STDOUT); $|=1; + + my $rc = &safe_system(@command); + + close(STDOUT); + close(STDERR); + + # Restore + open(STDOUT, ">&SAVEOUT"); + open(STDERR, ">&SAVEERR"); + + return $rc; +} + # Function to remove duplicates from an array sub uniq { my %seen; grep !$seen{$_}++, @_ }
@@ -42,7 +113,7 @@ sub log my $logmessage = $_[0]; $logmessage =~ /([\w\W]*)/; $logmessage = $1; - system('logger', '-t', $tag, $logmessage); + &system('logger', '-t', $tag, $logmessage); } sub setup_default_networks { @@ -1152,7 +1223,7 @@ sub firewall_needs_reload() { }
sub firewall_reload() { - system("/usr/local/bin/firewallctrl"); + &system("/usr/local/bin/firewallctrl"); }
# Function which will return the used interface for the red network zone (red0, ppp0, etc). diff --git a/config/cfgroot/ids-functions.pl b/config/cfgroot/ids-functions.pl index 2fdae4a7a..0e397ca19 100644 --- a/config/cfgroot/ids-functions.pl +++ b/config/cfgroot/ids-functions.pl @@ -118,7 +118,7 @@ sub check_and_create_filelayout() { # sub checkdiskspace () { # Call diskfree to gather the free disk space of /var. - my @df = `/bin/df -B M /var`; + my @df = &General::system_output("/bin/df", "-B", "M", "/var");
# Loop through the output. foreach my $line (@df) { @@ -463,7 +463,7 @@ sub call_suricatactrl ($) {
# Call the suricatactrl binary and pass the "cron" command # with the requrested interval. - system("$suricatactrl $option $interval &>/dev/null"); + &General::system("$suricatactrl", "$option", "$interval");
# Return "1" - True. return 1; @@ -475,7 +475,7 @@ sub call_suricatactrl ($) { } else { # Call the suricatactrl binary and pass the requrested # option to it. - system("$suricatactrl $option &>/dev/null"); + &General::system("$suricatactrl", "$option");
# Return "1" - True. return 1; diff --git a/config/cfgroot/network-functions.pl b/config/cfgroot/network-functions.pl index 2f704dfbf..b7a840559 100644 --- a/config/cfgroot/network-functions.pl +++ b/config/cfgroot/network-functions.pl @@ -360,7 +360,7 @@ sub _get_wireless_status($) { my $intf = shift;
if (!$wireless_status{$intf}) { - $wireless_status{$intf} = `iwconfig $intf`; + $wireless_status{$intf} = &General::system_output("iwconfig", "$intf"); }
return $wireless_status{$intf}; diff --git a/config/elinks/elinks.conf b/config/elinks/elinks.conf old mode 100755 new mode 100644 diff --git a/config/fbset/fb.modes b/config/fbset/fb.modes deleted file mode 100644 index 2b535299c..000000000 --- a/config/fbset/fb.modes +++ /dev/null @@ -1,85 +0,0 @@ -# -# DirectFB video modes, should be placed into "/etc" -# - -mode "640x480 75Hz 16bit" - # D: 31.50 MHz, H: 37.500 kHz, V: 75.00 Hz - geometry 640 480 640 480 16 - timings 31747 120 16 16 1 64 3 -endmode - -mode "720x576 50Hz 16bit" - geometry 720 576 720 576 16 - timings 31208 144 40 32 10 128 3 -endmode - -mode "768x576 75Hz 16bit" - # D: 49.188 MHz, H: 46.580 kHz, V: 75.008 Hz - geometry 768 576 768 576 16 - timings 20330 128 32 32 8 128 5 -endmode - - -mode "800x600 75Hz 16bit" - # D: 49.50 MHz, H: 46.875 kHz, V: 75.00 Hz - geometry 800 600 800 600 16 - timings 20203 160 16 21 1 80 3 - hsync high - vsync high -endmode - - -mode "1024x768 72Hz 16bit" - # D: 75.00 MHz, H: 58.230 kHz, V: 72.245 Hz - geometry 1024 768 1024 768 16 - timings 13334 104 24 29 3 136 6 -endmode - - -mode "1280x1024-75" - # D: 134.880 MHz, H: 79.905 kHz, V: 74.958 Hz - geometry 1280 1024 1280 3264 16 - timings 7414 232 64 38 1 112 3 - hsync high - vsync high -endmode - -mode "1280x1024 60Hz 16bit" - # D: 108.00 MHz, H: 63.981 kHz, V: 60.02 Hz - geometry 1280 1024 1280 1024 16 - timings 9260 248 48 38 1 112 3 - hsync high - vsync high -endmode - - -mode "1600x1200 60Hz 16bit" - # D: 156.00 MHz, H: 76.200 kHz, V: 60.00 Hz - geometry 1600 1200 1600 1200 16 - timings 6411 256 32 52 10 160 8 -endmode - - -mode "640x400 93Hz 16bit" - geometry 640 400 640 400 16 - timings 28272 48 32 17 22 128 12 -endmode - -mode "400x300 100Hz 16bit" - geometry 400 300 400 300 16 - timings 31747 40 16 16 1 40 3 - double true -endmode - - -mode "320x240 85Hz 16bit" - geometry 320 240 320 240 16 - timings 51383 32 32 20 4 48 1 - double true -endmode - -mode "320x200 85Hz 16bit" - geometry 320 200 320 200 16 - timings 60440 32 32 20 4 48 1 - double true -endmode diff --git a/config/firewall/ipsec-policy b/config/firewall/ipsec-policy index 1ad4de650..334e2d9bb 100644 --- a/config/firewall/ipsec-policy +++ b/config/firewall/ipsec-policy @@ -34,6 +34,11 @@ block_subnet() { local subnet="${1}" local action="${2}"
+ # Nothing to be done if no action is requested + if [ "${action}" = "none" ]; then + return 0 + fi + # Don't block a wildcard subnet if [ "${subnet}" = "0.0.0.0/0" ] || [ "${subnet}" = "0.0.0.0/0.0.0.0" ]; then return 0 @@ -108,7 +113,7 @@ install_policy() {
case "${route}" in route) - action="drop" + action="none" ;; *) action="reject" diff --git a/config/menu/50-firewall.menu b/config/menu/50-firewall.menu index 7f654785b..6ae9687dc 100644 --- a/config/menu/50-firewall.menu +++ b/config/menu/50-firewall.menu @@ -39,13 +39,7 @@ 'title' => "$Lang::tr{'blue access'}", 'enabled' => 1, }; - $subfirewall->{'80.upnp'} = { - 'caption' => 'UPnP', - 'uri' => '/cgi-bin/upnp.cgi', - 'title' => "Universal Plug and Play", - 'enabled' => 0, - }; - $subfirewall->{'90.iptables'} = { + $subfirewall->{'90.iptables'} = { 'caption' => $Lang::tr{'ipts'}, 'uri' => '/cgi-bin/iptables.cgi', 'title' => "$Lang::tr{'ipts'}", diff --git a/config/miniupnpd/miniupnpd.conf b/config/miniupnpd/miniupnpd.conf deleted file mode 100644 index 582758192..000000000 --- a/config/miniupnpd/miniupnpd.conf +++ /dev/null @@ -1,50 +0,0 @@ - -# LAN network interfaces IPs / networks -# there can be multiple listening ips for SSDP traffic. -# should be under the form nnn.nnn.nnn.nnn/nn -listening_ip=green0 -#listening_ip=green1 - -# HTTP is available on all interfaces -# port for HTTP (descriptions and SOAP) traffic. set 0 for autoselect. -port=0 - -# chain names for netfilter (not used for pf or ipf). -upnp_forward_chain=UPNPFW -upnp_nat_chain=UPNPFW - -# bitrates reported by daemon in bits per second -bitrate_up=1000000 -bitrate_down=10000000 - -# "secure" mode : when enabled, UPnP client are allowed to add mappings only -# to their IP. -secure_mode=yes - -# report system uptime instead of daemon uptime -system_uptime=yes - -# notify interval in seconds. default is 30 seconds. -notify_interval=60 - -# unused rules cleaning. -# never remove any rule before this threshold for the number -# of redirections is exceeded. default to 20 -#clean_ruleset_threshold=10 -# clean process work interval in seconds. default to 0 (disabled). -# a 600 seconds (10 minutes) interval makes sense -clean_ruleset_interval=600 - -# serial and model number the daemon will report to clients -# in its XML description -serial=12345678 -model_number=1 - -# UPnP permission rules -# (allow|deny) (external port range) ip/mask (internal port range) -# A port range is <min port>-<max port> or <port> if there is only -# one port in the range. -# ip/mask format must be nn.nn.nn.nn/nn -# it is advised to only allow redirection of port above 1024 -# and to finish the rule set with "deny 0-65535 0.0.0.0/0 0-65535" -allow 0-65535 0.0.0.0/0 0-65535 diff --git a/config/motion/motion.conf b/config/motion/motion.conf deleted file mode 100644 index 0d2853ada..000000000 --- a/config/motion/motion.conf +++ /dev/null @@ -1,637 +0,0 @@ -# Rename this distribution example file to motion.conf -# -# This config file was generated by motion 3.2.11 - - -############################################################ -# Daemon -############################################################ - -# Start in daemon (background) mode and release terminal (default: off) -daemon on - -# File to store the process ID, also called pid file. (default: not defined) -process_id_file /var/run/motion.pid - -############################################################ -# Basic Setup Mode -############################################################ - -# Start in Setup-Mode, daemon disabled. (default: off) -setup_mode off - -########################################################### -# Capture device options -############################################################ - -# Videodevice to be used for capturing (default /dev/video0) -# for FreeBSD default is /dev/bktr0 -videodevice /dev/video0 - -# v4l2_palette allows to choose preferable palette to be use by motion -# to capture from those supported by your videodevice. (default: 8) -# E.g. if your videodevice supports both V4L2_PIX_FMT_SBGGR8 and -# V4L2_PIX_FMT_MJPEG then motion will by default use V4L2_PIX_FMT_MJPEG. -# Setting v4l2_palette to 1 forces motion to use V4L2_PIX_FMT_SBGGR8 -# instead. -# -# Values : -# V4L2_PIX_FMT_SN9C10X : 0 'S910' -# V4L2_PIX_FMT_SBGGR8 : 1 'BA81' -# V4L2_PIX_FMT_MJPEG : 2 'MJPEG' -# V4L2_PIX_FMT_JPEG : 3 'JPEG' -# V4L2_PIX_FMT_RGB24 : 4 'RGB3' -# V4L2_PIX_FMT_UYVY : 5 'UYVY' -# V4L2_PIX_FMT_YUYV : 6 'YUYV' -# V4L2_PIX_FMT_YUV422P : 7 '422P' -# V4L2_PIX_FMT_YUV420 : 8 'YU12' -v4l2_palette 8 - -# Tuner device to be used for capturing using tuner as source (default /dev/tuner0) -# This is ONLY used for FreeBSD. Leave it commented out for Linux -; tunerdevice /dev/tuner0 - -# The video input to be used (default: 8) -# Should normally be set to 0 or 1 for video/TV cards, and 8 for USB cameras -input 8 - -# The video norm to use (only for video capture and TV tuner cards) -# Values: 0 (PAL), 1 (NTSC), 2 (SECAM), 3 (PAL NC no colour). Default: 0 (PAL) -norm 0 - -# The frequency to set the tuner to (kHz) (only for TV tuner cards) (default: 0) -frequency 0 - -# Rotate image this number of degrees. The rotation affects all saved images as -# well as mpeg movies. Valid values: 0 (default = no rotation), 90, 180 and 270. -rotate 0 - -# Image width (pixels). Valid range: Camera dependent, default: 352 -width 640 - -# Image height (pixels). Valid range: Camera dependent, default: 288 -height 480 - -# Maximum number of frames to be captured per second. -# Valid range: 2-100. Default: 100 (almost no limit). -framerate 2 - -# Minimum time in seconds between capturing picture frames from the camera. -# Default: 0 = disabled - the capture rate is given by the camera framerate. -# This option is used when you want to capture images at a rate lower than 2 per second. -minimum_frame_time 0 - -# URL to use if you are using a network camera, size will be autodetected (incl http:// ftp:// or file:///) -# Must be a URL that returns single jpeg pictures or a raw mjpeg stream. Default: Not defined -; netcam_url value - -# Username and password for network camera (only if required). Default: not defined -# Syntax is user:password -; netcam_userpass value - -# The setting for keep-alive of network socket, should improve performance on compatible net cameras. -# 1.0: The historical implementation using HTTP/1.0, closing the socket after each http request. -# keep_alive: Use HTTP/1.0 requests with keep alive header to reuse the same connection. -# 1.1: Use HTTP/1.1 requests that support keep alive as default. -# Default: 1.0 -; netcam_http 1.0 - -# URL to use for a netcam proxy server, if required, e.g. "http://myproxy". -# If a port number other than 80 is needed, use "http://myproxy:1234". -# Default: not defined -; netcam_proxy value - -# Set less strict jpeg checks for network cameras with a poor/buggy firmware. -# Default: off -netcam_tolerant_check off - -# Let motion regulate the brightness of a video device (default: off). -# The auto_brightness feature uses the brightness option as its target value. -# If brightness is zero auto_brightness will adjust to average brightness value 128. -# Only recommended for cameras without auto brightness -auto_brightness on - -# Set the initial brightness of a video device. -# If auto_brightness is enabled, this value defines the average brightness level -# which Motion will try and adjust to. -# Valid range 0-255, default 0 = disabled -brightness 128 - -# Set the contrast of a video device. -# Valid range 0-255, default 0 = disabled -contrast 0 - -# Set the saturation of a video device. -# Valid range 0-255, default 0 = disabled -saturation 0 - -# Set the hue of a video device (NTSC feature). -# Valid range 0-255, default 0 = disabled -hue 0 - - -############################################################ -# Round Robin (multiple inputs on same video device name) -############################################################ - -# Number of frames to capture in each roundrobin step (default: 1) -roundrobin_frames 1 - -# Number of frames to skip before each roundrobin step (default: 1) -roundrobin_skip 1 - -# Try to filter out noise generated by roundrobin (default: off) -switchfilter off - - -############################################################ -# Motion Detection Settings: -############################################################ - -# Threshold for number of changed pixels in an image that -# triggers motion detection (default: 1500) -threshold 1500 - -# Automatically tune the threshold down if possible (default: off) -threshold_tune off - -# Noise threshold for the motion detection (default: 32) -noise_level 32 - -# Automatically tune the noise threshold (default: on) -noise_tune on - -# Despeckle motion image using (e)rode or (d)ilate or (l)abel (Default: not defined) -# Recommended value is EedDl. Any combination (and number of) of E, e, d, and D is valid. -# (l)abeling must only be used once and the 'l' must be the last letter. -# Comment out to disable -despeckle EedDl - -# Detect motion in predefined areas (1 - 9). Areas are numbered like that: 1 2 3 -# A script (on_area_detected) is started immediately when motion is 4 5 6 -# detected in one of the given areas, but only once during an event. 7 8 9 -# One or more areas can be specified with this option. (Default: not defined) -; area_detect value - -# PGM file to use as a sensitivity mask. -# Full path name to. (Default: not defined) -; mask_file value - -# Dynamically create a mask file during operation (default: 0) -# Adjust speed of mask changes from 0 (off) to 10 (fast) -smart_mask_speed 0 - -# Ignore sudden massive light intensity changes given as a percentage of the picture -# area that changed intensity. Valid range: 0 - 100 , default: 0 = disabled -lightswitch 0 - -# Picture frames must contain motion at least the specified number of frames -# in a row before they are detected as true motion. At the default of 1, all -# motion is detected. Valid range: 1 to thousands, recommended 1-5 -minimum_motion_frames 1 - -# Specifies the number of pre-captured (buffered) pictures from before motion -# was detected that will be output at motion detection. -# Recommended range: 0 to 5 (default: 0) -# Do not use large values! Large values will cause Motion to skip video frames and -# cause unsmooth mpegs. To smooth mpegs use larger values of post_capture instead. -pre_capture 5 - -# Number of frames to capture after motion is no longer detected (default: 0) -post_capture 5 - -# Gap is the seconds of no motion detection that triggers the end of an event -# An event is defined as a series of motion images taken within a short timeframe. -# Recommended value is 60 seconds (Default). The value 0 is allowed and disables -# events causing all Motion to be written to one single mpeg file and no pre_capture. -gap 0 - -# Maximum length in seconds of an mpeg movie -# When value is exceeded a new mpeg file is created. (Default: 0 = infinite) -max_mpeg_time 86400 - -# Always save images even if there was no motion (default: off) -output_all off - - -############################################################ -# Image File Output -############################################################ - -# Output 'normal' pictures when motion is detected (default: on) -# Valid values: on, off, first, best, center -# When set to 'first', only the first picture of an event is saved. -# Picture with most motion of an event is saved when set to 'best'. -# Picture with motion nearest center of picture is saved when set to 'center'. -# Can be used as preview shot for the corresponding movie. -output_normal off - -# Output pictures with only the pixels moving object (ghost images) (default: off) -output_motion off - -# The quality (in percent) to be used by the jpeg compression (default: 75) -quality 75 - -# Output ppm images instead of jpeg (default: off) -ppm off - - -############################################################ -# FFMPEG related options -# Film (mpeg) file output, and deinterlacing of the video input -# The options movie_filename and timelapse_filename are also used -# by the ffmpeg feature -############################################################ - -# Use ffmpeg to encode mpeg movies in realtime (default: off) -ffmpeg_cap_new off - -# Use ffmpeg to make movies with only the pixels moving -# object (ghost images) (default: off) -ffmpeg_cap_motion off - -# Use ffmpeg to encode a timelapse movie -# Default value 0 = off - else save frame every Nth second -ffmpeg_timelapse 0 - -# The file rollover mode of the timelapse video -# Valid values: hourly, daily (default), weekly-sunday, weekly-monday, monthly, manual -ffmpeg_timelapse_mode daily - -# Bitrate to be used by the ffmpeg encoder (default: 400000) -# This option is ignored if ffmpeg_variable_bitrate is not 0 (disabled) -ffmpeg_bps 500000 - -# Enables and defines variable bitrate for the ffmpeg encoder. -# ffmpeg_bps is ignored if variable bitrate is enabled. -# Valid values: 0 (default) = fixed bitrate defined by ffmpeg_bps, -# or the range 2 - 31 where 2 means best quality and 31 is worst. -ffmpeg_variable_bitrate 0 - -# Codec to used by ffmpeg for the video compression. -# Timelapse mpegs are always made in mpeg1 format independent from this option. -# Supported formats are: mpeg1 (ffmpeg-0.4.8 only), mpeg4 (default), and msmpeg4. -# mpeg1 - gives you files with extension .mpg -# mpeg4 or msmpeg4 - gives you files with extension .avi -# msmpeg4 is recommended for use with Windows Media Player because -# it requires no installation of codec on the Windows client. -# swf - gives you a flash film with extension .swf -# flv - gives you a flash video with extension .flv -# ffv1 - FF video codec 1 for Lossless Encoding ( experimental ) -# mov - QuickTime ( testing ) -ffmpeg_video_codec msmpeg4 - -# Use ffmpeg to deinterlace video. Necessary if you use an analog camera -# and see horizontal combing on moving objects in video or pictures. -# (default: off) -ffmpeg_deinterlace off - - -############################################################ -# Snapshots (Traditional Periodic Webcam File Output) -############################################################ - -# Make automated snapshot every N seconds (default: 0 = disabled) -snapshot_interval 0 - - -############################################################ -# Text Display -# %Y = year, %m = month, %d = date, -# %H = hour, %M = minute, %S = second, %T = HH:MM:SS, -# %v = event, %q = frame number, %t = thread (camera) number, -# %D = changed pixels, %N = noise level, \n = new line, -# %i and %J = width and height of motion area, -# %K and %L = X and Y coordinates of motion center -# %C = value defined by text_event - do not use with text_event! -# You can put quotation marks around the text to allow -# leading spaces -############################################################ - -# Locate and draw a box around the moving object. -# Valid values: on, off and preview (default: off) -# Set to 'preview' will only draw a box in preview_shot pictures. -locate off - -# Draws the timestamp using same options as C function strftime(3) -# Default: %Y-%m-%d\n%T = date in ISO format and time in 24 hour clock -# Text is placed in lower right corner -text_right %Y-%m-%d\n%T-%q - -# Draw a user defined text on the images using same options as C function strftime(3) -# Default: Not defined = no text -# Text is placed in lower left corner -text_left CAMERA %t\nhttp://www.ipfire.org - -# Draw the number of changed pixed on the images (default: off) -# Will normally be set to off except when you setup and adjust the motion settings -# Text is placed in upper right corner -text_changes off - -# This option defines the value of the special event conversion specifier %C -# You can use any conversion specifier in this option except %C. Date and time -# values are from the timestamp of the first image in the current event. -# Default: %Y%m%d%H%M%S -# The idea is that %C can be used filenames and text_left/right for creating -# a unique identifier for each event. -text_event %Y%m%d%H%M%S - -# Draw characters at twice normal size on images. (default: off) -text_double off - - -############################################################ -# Target Directories and filenames For Images And Films -# For the options snapshot_, jpeg_, mpeg_ and timelapse_filename -# you can use conversion specifiers -# %Y = year, %m = month, %d = date, -# %H = hour, %M = minute, %S = second, -# %v = event, %q = frame number, %t = thread (camera) number, -# %D = changed pixels, %N = noise level, -# %i and %J = width and height of motion area, -# %K and %L = X and Y coordinates of motion center -# %C = value defined by text_event -# Quotation marks round string are allowed. -############################################################ - -# Target base directory for pictures and films -# Recommended to use absolute path. (Default: current working directory) -target_dir /var/motion/cam1 - -# File path for snapshots (jpeg or ppm) relative to target_dir -# Default: %v-%Y%m%d%H%M%S-snapshot -# Default value is equivalent to legacy oldlayout option -# For Motion 3.0 compatible mode choose: %Y/%m/%d/%H/%M/%S-snapshot -# File extension .jpg or .ppm is automatically added so do not include this. -# Note: A symbolic link called lastsnap.jpg created in the target_dir will always -# point to the latest snapshot, unless snapshot_filename is exactly 'lastsnap' -snapshot_filename %v-%Y%m%d%H%M%S-snapshot - -# File path for motion triggered images (jpeg or ppm) relative to target_dir -# Default: %v-%Y%m%d%H%M%S-%q -# Default value is equivalent to legacy oldlayout option -# For Motion 3.0 compatible mode choose: %Y/%m/%d/%H/%M/%S-%q -# File extension .jpg or .ppm is automatically added so do not include this -# Set to 'preview' together with best-preview feature enables special naming -# convention for preview shots. See motion guide for details -jpeg_filename %v-%Y%m%d%H%M%S-%q - -# File path for motion triggered ffmpeg films (mpeg) relative to target_dir -# Default: %v-%Y%m%d%H%M%S -# Default value is equivalent to legacy oldlayout option -# For Motion 3.0 compatible mode choose: %Y/%m/%d/%H%M%S -# File extension .mpg or .avi is automatically added so do not include this -# This option was previously called ffmpeg_filename -movie_filename %v-%Y%m%d%H%M%S - -# File path for timelapse mpegs relative to target_dir -# Default: %Y%m%d-timelapse -# Default value is near equivalent to legacy oldlayout option -# For Motion 3.0 compatible mode choose: %Y/%m/%d-timelapse -# File extension .mpg is automatically added so do not include this -timelapse_filename %Y%m%d-timelapse - - -############################################################ -# Live Webcam Server -############################################################ - -# The mini-http server listens to this port for requests (default: 0 = disabled) -webcam_port 2500 - -# Quality of the jpeg images produced (default: 50) -webcam_quality 50 - -# Output frames at 1 fps when no motion is detected and increase to the -# rate given by webcam_maxrate when motion is detected (default: off) -webcam_motion off - -# Maximum framerate for webcam streams (default: 1) -webcam_maxrate 1 - -# Restrict webcam connections to localhost only (default: on) -webcam_localhost off - -# Limits the number of images per connection (default: 0 = unlimited) -# Number can be defined by multiplying actual webcam rate by desired number of seconds -# Actual webcam rate is the smallest of the numbers framerate and webcam_maxrate -webcam_limit 0 - - -############################################################ -# HTTP Based Control -############################################################ - -# TCP/IP port for the http server to listen on (default: 0 = disabled) -control_port 0 - -# Restrict control connections to localhost only (default: on) -control_localhost on - -# Output for http server, select off to choose raw text plain (default: on) -control_html_output on - -# Authentication for the http based control. Syntax username:password -# Default: not defined (Disabled) -; control_authentication username:password - - -############################################################ -# Tracking (Pan/Tilt) -############################################################ - -# Type of tracker (0=none (default), 1=stepper, 2=iomojo, 3=pwc, 4=generic, 5=uvcvideo) -# The generic type enables the definition of motion center and motion size to -# be used with the conversion specifiers for options like on_motion_detected -track_type 0 - -# Enable auto tracking (default: off) -track_auto off - -# Serial port of motor (default: none) -; track_port value - -# Motor number for x-axis (default: 0) -track_motorx 0 - -# Motor number for y-axis (default: 0) -track_motory 0 - -# Maximum value on x-axis (default: 0) -track_maxx 0 - -# Maximum value on y-axis (default: 0) -track_maxy 0 - -# ID of an iomojo camera if used (default: 0) -track_iomojo_id 0 - -# Angle in degrees the camera moves per step on the X-axis -# with auto-track (default: 10) -# Currently only used with pwc type cameras -track_step_angle_x 10 - -# Angle in degrees the camera moves per step on the Y-axis -# with auto-track (default: 10) -# Currently only used with pwc type cameras -track_step_angle_y 10 - -# Delay to wait for after tracking movement as number -# of picture frames (default: 10) -track_move_wait 10 - -# Speed to set the motor to (stepper motor option) (default: 255) -track_speed 255 - -# Number of steps to make (stepper motor option) (default: 40) -track_stepsize 40 - - -############################################################ -# External Commands, Warnings and Logging: -# You can use conversion specifiers for the on_xxxx commands -# %Y = year, %m = month, %d = date, -# %H = hour, %M = minute, %S = second, -# %v = event, %q = frame number, %t = thread (camera) number, -# %D = changed pixels, %N = noise level, -# %i and %J = width and height of motion area, -# %K and %L = X and Y coordinates of motion center -# %C = value defined by text_event -# %f = filename with full path -# %n = number indicating filetype -# Both %f and %n are only defined for on_picture_save, -# on_movie_start and on_movie_end -# Quotation marks round string are allowed. -############################################################ - -# Do not sound beeps when detecting motion (default: on) -# Note: Motion never beeps when running in daemon mode. -quiet on - -# Command to be executed when an event starts. (default: none) -# An event starts at first motion detected after a period of no motion defined by gap -; on_event_start value - -# Command to be executed when an event ends after a period of no motion -# (default: none). The period of no motion is defined by option gap. -; on_event_end value - -# Command to be executed when a picture (.ppm|.jpg) is saved (default: none) -# To give the filename as an argument to a command append it with %f -; on_picture_save value - -# Command to be executed when a motion frame is detected (default: none) -; on_motion_detected value - -# Command to be executed when motion in a predefined area is detected -# Check option 'area_detect'. (default: none) -; on_area_detected value - -# Command to be executed when a movie file (.mpg|.avi) is created. (default: none) -# To give the filename as an argument to a command append it with %f -; on_movie_start value - -# Command to be executed when a movie file (.mpg|.avi) is closed. (default: none) -# To give the filename as an argument to a command append it with %f -; on_movie_end value - -# Command to be executed when a camera can't be opened or if it is lost -# NOTE: There is situations when motion doesn't detect a lost camera! -# It depends on the driver, some drivers don't detect a lost camera at all -# Some hang the motion thread. Some even hang the PC! (default: none) -; on_camera_lost value - -############################################################ -# Common Options For MySQL and PostgreSQL database features. -# Options require the MySQL/PostgreSQL options to be active also. -############################################################ - -# Log to the database when creating motion triggered image file (default: on) -sql_log_image on - -# Log to the database when creating a snapshot image file (default: on) -sql_log_snapshot on - -# Log to the database when creating motion triggered mpeg file (default: off) -sql_log_mpeg off - -# Log to the database when creating timelapse mpeg file (default: off) -sql_log_timelapse off - -# SQL query string that is sent to the database -# Use same conversion specifiers has for text features -# Additional special conversion specifiers are -# %n = the number representing the file_type -# %f = filename with full path -# Default value: -# insert into security(camera, filename, frame, file_type, time_stamp, text_event) values('%t', '%f', '%q', '%n', '%Y-%m-%d %T', '%C') -sql_query insert into security(camera, filename, frame, file_type, time_stamp, event_time_stamp) values('%t', '%f', '%q', '%n', '%Y-%m-%d %T', '%C') - - -############################################################ -# Database Options For MySQL -############################################################ - -# Mysql database to log to (default: not defined) -; mysql_db value - -# The host on which the database is located (default: localhost) -; mysql_host value - -# User account name for MySQL database (default: not defined) -; mysql_user value - -# User password for MySQL database (default: not defined) -; mysql_password value - - -############################################################ -# Database Options For PostgreSQL -############################################################ - -# PostgreSQL database to log to (default: not defined) -; pgsql_db value - -# The host on which the database is located (default: localhost) -; pgsql_host value - -# User account name for PostgreSQL database (default: not defined) -; pgsql_user value - -# User password for PostgreSQL database (default: not defined) -; pgsql_password value - -# Port on which the PostgreSQL database is located (default: 5432) -; pgsql_port 5432 - - -############################################################ -# Video Loopback Device (vloopback project) -############################################################ - -# Output images to a video4linux loopback device -# The value '-' means next available (default: not defined) -; video_pipe value - -# Output motion images to a video4linux loopback device -# The value '-' means next available (default: not defined) -; motion_video_pipe value - - -############################################################## -# Thread config files - One for each camera. -# Except if only one camera - You only need this config file. -# If you have more than one camera you MUST define one thread -# config file for each camera in addition to this config file. -############################################################## - -# Remember: If you have more than one camera you must have one -# thread file for each camera. E.g. 2 cameras requires 3 files: -# This motion.conf file AND thread1.conf and thread2.conf. -# Only put the options that are unique to each camera in the -# thread config files. -; thread /usr/local/etc/thread1.conf -; thread /usr/local/etc/thread2.conf -; thread /usr/local/etc/thread3.conf -; thread /usr/local/etc/thread4.conf - diff --git a/config/rootfiles/common/XML-Parser b/config/rootfiles/common/XML-Parser index 8a389c004..3b82a96a7 100644 --- a/config/rootfiles/common/XML-Parser +++ b/config/rootfiles/common/XML-Parser @@ -6,6 +6,8 @@ usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encod #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/README #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/big5.enc #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/euc-kr.enc +#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/ibm866.enc +#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/iso-8859-15.enc #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/iso-8859-2.enc #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/iso-8859-3.enc #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/iso-8859-4.enc @@ -13,8 +15,11 @@ usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encod #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/iso-8859-7.enc #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/iso-8859-8.enc #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/iso-8859-9.enc +#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/koi8-r.enc #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/windows-1250.enc +#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/windows-1251.enc #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/windows-1252.enc +#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/windows-1255.enc #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/x-euc-jp-jisx0221.enc #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/x-euc-jp-unicode.enc #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Encodings/x-sjis-cp932.enc @@ -33,7 +38,6 @@ usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/XML/Parser/Style #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/XML/Parser #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/XML/Parser/.packlist #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/XML/Parser/Expat -#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/XML/Parser/Expat/Expat.bs usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/XML/Parser/Expat/Expat.so #usr/share/man/man3/XML::Parser.3 #usr/share/man/man3/XML::Parser::Expat.3 diff --git a/config/rootfiles/common/aarch64/initscripts b/config/rootfiles/common/aarch64/initscripts index 800005966..4e607012a 100644 --- a/config/rootfiles/common/aarch64/initscripts +++ b/config/rootfiles/common/aarch64/initscripts @@ -46,14 +46,12 @@ etc/rc.d/init.d/networking/orange etc/rc.d/init.d/networking/red #etc/rc.d/init.d/networking/red.down etc/rc.d/init.d/networking/red.down/10-ipsec -etc/rc.d/init.d/networking/red.down/10-miniupnpd etc/rc.d/init.d/networking/red.down/10-ovpn etc/rc.d/init.d/networking/red.down/10-static-routes etc/rc.d/init.d/networking/red.down/20-firewall etc/rc.d/init.d/networking/red.down/99-beep #etc/rc.d/init.d/networking/red.up etc/rc.d/init.d/networking/red.up/01-conntrack-cleanup -etc/rc.d/init.d/networking/red.up/10-miniupnpd etc/rc.d/init.d/networking/red.up/10-multicast etc/rc.d/init.d/networking/red.up/10-static-routes etc/rc.d/init.d/networking/red.up/20-firewall @@ -93,7 +91,6 @@ etc/rc.d/init.d/template etc/rc.d/init.d/udev etc/rc.d/init.d/udev_retry etc/rc.d/init.d/unbound -etc/rc.d/init.d/upnpd etc/rc.d/init.d/vnstat etc/rc.d/init.d/waitdrives etc/rc.d/init.d/wlanclient @@ -114,7 +111,6 @@ etc/rc.d/rc0.d/K78suricata etc/rc.d/rc0.d/K79leds etc/rc.d/rc0.d/K80network etc/rc.d/rc0.d/K82wlanclient -#etc/rc.d/rc0.d/K84bluetooth #etc/rc.d/rc0.d/K85messagebus etc/rc.d/rc0.d/K86unbound etc/rc.d/rc0.d/K87acpid @@ -131,7 +127,6 @@ etc/rc.d/rc3.d/S11unbound etc/rc.d/rc3.d/S12acpid etc/rc.d/rc3.d/S15fireinfo #etc/rc.d/rc3.d/S15messagebus -#etc/rc.d/rc3.d/S16bluetooth #etc/rc.d/rc3.d/S18cpufreq etc/rc.d/rc3.d/S19smartenabler etc/rc.d/rc3.d/S19wlanclient @@ -165,7 +160,6 @@ etc/rc.d/rc6.d/K78suricata etc/rc.d/rc6.d/K79leds etc/rc.d/rc6.d/K80network etc/rc.d/rc6.d/K82wlanclient -#etc/rc.d/rc6.d/K84bluetooth #etc/rc.d/rc6.d/K85messagebus etc/rc.d/rc6.d/K86unbound etc/rc.d/rc6.d/K87acpid diff --git a/config/rootfiles/common/apache2 b/config/rootfiles/common/apache2 index 4bd3e3794..8442446df 100644 --- a/config/rootfiles/common/apache2 +++ b/config/rootfiles/common/apache2 @@ -422,6 +422,7 @@ srv/web/ipfire/html/captive #srv/web/ipfire/manual/getting-started.html #srv/web/ipfire/manual/getting-started.html.en #srv/web/ipfire/manual/getting-started.html.fr.utf8 +#srv/web/ipfire/manual/getting-started.html.ru.utf8 #srv/web/ipfire/manual/glossary.html #srv/web/ipfire/manual/glossary.html.de #srv/web/ipfire/manual/glossary.html.en @@ -545,6 +546,7 @@ srv/web/ipfire/html/captive #srv/web/ipfire/manual/index.html.ja.utf8 #srv/web/ipfire/manual/index.html.ko.euc-kr #srv/web/ipfire/manual/index.html.pt-br +#srv/web/ipfire/manual/index.html.ru.utf8 #srv/web/ipfire/manual/index.html.tr.utf8 #srv/web/ipfire/manual/index.html.zh-cn.utf8 #srv/web/ipfire/manual/install.html @@ -1174,7 +1176,6 @@ srv/web/ipfire/html/captive #srv/web/ipfire/manual/new_features_2_0.html.ja.utf8 #srv/web/ipfire/manual/new_features_2_0.html.ko.euc-kr #srv/web/ipfire/manual/new_features_2_0.html.pt-br -#srv/web/ipfire/manual/new_features_2_0.html.ru.koi8-r #srv/web/ipfire/manual/new_features_2_0.html.tr.utf8 #srv/web/ipfire/manual/new_features_2_2.html #srv/web/ipfire/manual/new_features_2_2.html.en @@ -1515,6 +1516,7 @@ usr/bin/htpasswd #usr/include/apache/http_main.h #usr/include/apache/http_protocol.h #usr/include/apache/http_request.h +#usr/include/apache/http_ssl.h #usr/include/apache/http_vhost.h #usr/include/apache/httpd.h #usr/include/apache/mod_auth.h diff --git a/config/rootfiles/common/armv5tel/initscripts b/config/rootfiles/common/armv5tel/initscripts index 800005966..4e607012a 100644 --- a/config/rootfiles/common/armv5tel/initscripts +++ b/config/rootfiles/common/armv5tel/initscripts @@ -46,14 +46,12 @@ etc/rc.d/init.d/networking/orange etc/rc.d/init.d/networking/red #etc/rc.d/init.d/networking/red.down etc/rc.d/init.d/networking/red.down/10-ipsec -etc/rc.d/init.d/networking/red.down/10-miniupnpd etc/rc.d/init.d/networking/red.down/10-ovpn etc/rc.d/init.d/networking/red.down/10-static-routes etc/rc.d/init.d/networking/red.down/20-firewall etc/rc.d/init.d/networking/red.down/99-beep #etc/rc.d/init.d/networking/red.up etc/rc.d/init.d/networking/red.up/01-conntrack-cleanup -etc/rc.d/init.d/networking/red.up/10-miniupnpd etc/rc.d/init.d/networking/red.up/10-multicast etc/rc.d/init.d/networking/red.up/10-static-routes etc/rc.d/init.d/networking/red.up/20-firewall @@ -93,7 +91,6 @@ etc/rc.d/init.d/template etc/rc.d/init.d/udev etc/rc.d/init.d/udev_retry etc/rc.d/init.d/unbound -etc/rc.d/init.d/upnpd etc/rc.d/init.d/vnstat etc/rc.d/init.d/waitdrives etc/rc.d/init.d/wlanclient @@ -114,7 +111,6 @@ etc/rc.d/rc0.d/K78suricata etc/rc.d/rc0.d/K79leds etc/rc.d/rc0.d/K80network etc/rc.d/rc0.d/K82wlanclient -#etc/rc.d/rc0.d/K84bluetooth #etc/rc.d/rc0.d/K85messagebus etc/rc.d/rc0.d/K86unbound etc/rc.d/rc0.d/K87acpid @@ -131,7 +127,6 @@ etc/rc.d/rc3.d/S11unbound etc/rc.d/rc3.d/S12acpid etc/rc.d/rc3.d/S15fireinfo #etc/rc.d/rc3.d/S15messagebus -#etc/rc.d/rc3.d/S16bluetooth #etc/rc.d/rc3.d/S18cpufreq etc/rc.d/rc3.d/S19smartenabler etc/rc.d/rc3.d/S19wlanclient @@ -165,7 +160,6 @@ etc/rc.d/rc6.d/K78suricata etc/rc.d/rc6.d/K79leds etc/rc.d/rc6.d/K80network etc/rc.d/rc6.d/K82wlanclient -#etc/rc.d/rc6.d/K84bluetooth #etc/rc.d/rc6.d/K85messagebus etc/rc.d/rc6.d/K86unbound etc/rc.d/rc6.d/K87acpid diff --git a/config/rootfiles/common/bind b/config/rootfiles/common/bind index 7e1ecd48f..6fb228a5a 100644 --- a/config/rootfiles/common/bind +++ b/config/rootfiles/common/bind @@ -272,8 +272,8 @@ usr/lib/libbind9.so.161 usr/lib/libbind9.so.161.0.4 #usr/lib/libdns.la #usr/lib/libdns.so -usr/lib/libdns.so.1113 -usr/lib/libdns.so.1113.0.2 +usr/lib/libdns.so.1115 +usr/lib/libdns.so.1115.0.0 #usr/lib/libisc.la #usr/lib/libisc.so usr/lib/libisc.so.1107 diff --git a/config/rootfiles/common/configroot b/config/rootfiles/common/configroot index 8c91ca5d5..d496594bc 100644 --- a/config/rootfiles/common/configroot +++ b/config/rootfiles/common/configroot @@ -184,8 +184,6 @@ var/ipfire/time var/ipfire/updatexlrator var/ipfire/updatexlrator/autocheck var/ipfire/updatexlrator/bin -var/ipfire/upnp -#var/ipfire/upnp/settings var/ipfire/urlfilter #var/ipfire/urlfilter/autoupdate #var/ipfire/urlfilter/bin diff --git a/config/rootfiles/common/conntrack-tools b/config/rootfiles/common/conntrack-tools index 27161b1fb..b6632ec07 100644 --- a/config/rootfiles/common/conntrack-tools +++ b/config/rootfiles/common/conntrack-tools @@ -1,24 +1,24 @@ #usr/lib/conntrack-tools #usr/lib/conntrack-tools/ct_helper_amanda.la -usr/lib/conntrack-tools/ct_helper_amanda.so +#usr/lib/conntrack-tools/ct_helper_amanda.so #usr/lib/conntrack-tools/ct_helper_dhcpv6.la #usr/lib/conntrack-tools/ct_helper_dhcpv6.so #usr/lib/conntrack-tools/ct_helper_ftp.la -usr/lib/conntrack-tools/ct_helper_ftp.so +#usr/lib/conntrack-tools/ct_helper_ftp.so #usr/lib/conntrack-tools/ct_helper_mdns.la -usr/lib/conntrack-tools/ct_helper_mdns.so +#usr/lib/conntrack-tools/ct_helper_mdns.so #usr/lib/conntrack-tools/ct_helper_rpc.la -usr/lib/conntrack-tools/ct_helper_rpc.so +#usr/lib/conntrack-tools/ct_helper_rpc.so #usr/lib/conntrack-tools/ct_helper_sane.la -usr/lib/conntrack-tools/ct_helper_sane.so +#usr/lib/conntrack-tools/ct_helper_sane.so #usr/lib/conntrack-tools/ct_helper_slp.la -usr/lib/conntrack-tools/ct_helper_slp.so +#usr/lib/conntrack-tools/ct_helper_slp.so #usr/lib/conntrack-tools/ct_helper_ssdp.la -usr/lib/conntrack-tools/ct_helper_ssdp.so +#usr/lib/conntrack-tools/ct_helper_ssdp.so #usr/lib/conntrack-tools/ct_helper_tftp.la -usr/lib/conntrack-tools/ct_helper_tftp.so +#usr/lib/conntrack-tools/ct_helper_tftp.so #usr/lib/conntrack-tools/ct_helper_tns.la -usr/lib/conntrack-tools/ct_helper_tns.so +#usr/lib/conntrack-tools/ct_helper_tns.so usr/sbin/conntrack usr/sbin/conntrackd usr/sbin/nfct diff --git a/config/rootfiles/common/curl b/config/rootfiles/common/curl index 83a85d548..b29662977 100644 --- a/config/rootfiles/common/curl +++ b/config/rootfiles/common/curl @@ -113,6 +113,7 @@ usr/lib/libcurl.so.4.7.0 #usr/share/man/man3/CURLOPT_AWS_SIGV4.3 #usr/share/man/man3/CURLOPT_BUFFERSIZE.3 #usr/share/man/man3/CURLOPT_CAINFO.3 +#usr/share/man/man3/CURLOPT_CAINFO_BLOB.3 #usr/share/man/man3/CURLOPT_CAPATH.3 #usr/share/man/man3/CURLOPT_CERTINFO.3 #usr/share/man/man3/CURLOPT_CHUNK_BGN_FUNCTION.3 @@ -265,6 +266,7 @@ usr/lib/libcurl.so.4.7.0 #usr/share/man/man3/CURLOPT_PROXYUSERNAME.3 #usr/share/man/man3/CURLOPT_PROXYUSERPWD.3 #usr/share/man/man3/CURLOPT_PROXY_CAINFO.3 +#usr/share/man/man3/CURLOPT_PROXY_CAINFO_BLOB.3 #usr/share/man/man3/CURLOPT_PROXY_CAPATH.3 #usr/share/man/man3/CURLOPT_PROXY_CRLFILE.3 #usr/share/man/man3/CURLOPT_PROXY_ISSUERCERT.3 diff --git a/config/rootfiles/common/ethtool b/config/rootfiles/common/ethtool index 930cd05de..1ffc4025d 100644 --- a/config/rootfiles/common/ethtool +++ b/config/rootfiles/common/ethtool @@ -1,2 +1,3 @@ usr/sbin/ethtool +#usr/share/bash-completion/completions/ethtool #usr/share/man/man8/ethtool.8 diff --git a/config/rootfiles/common/expat b/config/rootfiles/common/expat index 365286f85..4dcfe4a7d 100644 --- a/config/rootfiles/common/expat +++ b/config/rootfiles/common/expat @@ -2,22 +2,22 @@ #usr/include/expat.h #usr/include/expat_config.h #usr/include/expat_external.h -#usr/lib/cmake/expat-2.3.0 -#usr/lib/cmake/expat-2.3.0/expat-config-version.cmake -#usr/lib/cmake/expat-2.3.0/expat-config.cmake -#usr/lib/cmake/expat-2.3.0/expat-noconfig.cmake -#usr/lib/cmake/expat-2.3.0/expat.cmake +#usr/lib/cmake/expat-2.4.1 +#usr/lib/cmake/expat-2.4.1/expat-config-version.cmake +#usr/lib/cmake/expat-2.4.1/expat-config.cmake +#usr/lib/cmake/expat-2.4.1/expat-noconfig.cmake +#usr/lib/cmake/expat-2.4.1/expat.cmake #usr/lib/libexpat.a #usr/lib/libexpat.la #usr/lib/libexpat.so usr/lib/libexpat.so.1 -usr/lib/libexpat.so.1.7.0 +usr/lib/libexpat.so.1.8.1 #usr/lib/pkgconfig/expat.pc #usr/share/doc/expat -#usr/share/doc/expat-2.3.0 -#usr/share/doc/expat-2.3.0/expat.png -#usr/share/doc/expat-2.3.0/reference.html -#usr/share/doc/expat-2.3.0/style.css -#usr/share/doc/expat-2.3.0/valid-xhtml10.png +#usr/share/doc/expat-2.4.1 +#usr/share/doc/expat-2.4.1/ok.min.css +#usr/share/doc/expat-2.4.1/reference.html +#usr/share/doc/expat-2.4.1/style.css +#usr/share/doc/expat-2.4.1/valid-xhtml10.png #usr/share/doc/expat/AUTHORS #usr/share/doc/expat/changelog diff --git a/config/rootfiles/common/fbset b/config/rootfiles/common/fbset deleted file mode 100644 index 15d937fea..000000000 --- a/config/rootfiles/common/fbset +++ /dev/null @@ -1,4 +0,0 @@ -#usr/man/man5/fb.modes.5 -#usr/man/man8/fbset.8 -usr/sbin/fbset -etc/fb.modes diff --git a/config/rootfiles/common/fireinfo b/config/rootfiles/common/fireinfo index a4e209f94..11f472943 100644 --- a/config/rootfiles/common/fireinfo +++ b/config/rootfiles/common/fireinfo @@ -1,27 +1,13 @@ usr/bin/sendprofile -usr/lib/python2.7/site-packages/fireinfo -usr/lib/python2.7/site-packages/fireinfo/__init__.py -usr/lib/python2.7/site-packages/fireinfo/__init__.pyc -usr/lib/python2.7/site-packages/fireinfo/__init__.pyo -#usr/lib/python2.7/site-packages/fireinfo/_fireinfo.la -usr/lib/python2.7/site-packages/fireinfo/_fireinfo.so -usr/lib/python2.7/site-packages/fireinfo/bios.py -usr/lib/python2.7/site-packages/fireinfo/bios.pyc -usr/lib/python2.7/site-packages/fireinfo/bios.pyo -usr/lib/python2.7/site-packages/fireinfo/cpu.py -usr/lib/python2.7/site-packages/fireinfo/cpu.pyc -usr/lib/python2.7/site-packages/fireinfo/cpu.pyo -usr/lib/python2.7/site-packages/fireinfo/device.py -usr/lib/python2.7/site-packages/fireinfo/device.pyc -usr/lib/python2.7/site-packages/fireinfo/device.pyo -usr/lib/python2.7/site-packages/fireinfo/hypervisor.py -usr/lib/python2.7/site-packages/fireinfo/hypervisor.pyc -usr/lib/python2.7/site-packages/fireinfo/hypervisor.pyo -usr/lib/python2.7/site-packages/fireinfo/network.py -usr/lib/python2.7/site-packages/fireinfo/network.pyc -usr/lib/python2.7/site-packages/fireinfo/network.pyo -usr/lib/python2.7/site-packages/fireinfo/system.py -usr/lib/python2.7/site-packages/fireinfo/system.pyc -usr/lib/python2.7/site-packages/fireinfo/system.pyo -usr/share/doc/fireinfo -usr/share/doc/fireinfo/COPYING +#usr/lib/python3.8/site-packages/fireinfo +usr/lib/python3.8/site-packages/fireinfo/__init__.py +#usr/lib/python3.8/site-packages/fireinfo/_fireinfo.la +usr/lib/python3.8/site-packages/fireinfo/_fireinfo.so +usr/lib/python3.8/site-packages/fireinfo/bios.py +usr/lib/python3.8/site-packages/fireinfo/cpu.py +usr/lib/python3.8/site-packages/fireinfo/device.py +usr/lib/python3.8/site-packages/fireinfo/hypervisor.py +usr/lib/python3.8/site-packages/fireinfo/network.py +usr/lib/python3.8/site-packages/fireinfo/system.py +#usr/share/doc/fireinfo +#usr/share/doc/fireinfo/COPYING diff --git a/config/rootfiles/common/fuse b/config/rootfiles/common/fuse index 3a0a52378..86fa084fd 100644 --- a/config/rootfiles/common/fuse +++ b/config/rootfiles/common/fuse @@ -12,7 +12,7 @@ usr/bin/fusermount3 #usr/include/fuse3/fuse_opt.h #usr/lib/libfuse3.so usr/lib/libfuse3.so.3 -usr/lib/libfuse3.so.3.10.3 +usr/lib/libfuse3.so.3.10.4 #usr/lib/pkgconfig/fuse3.pc #usr/share/man/man1/fusermount3.1 #usr/share/man/man8/mount.fuse3.8 diff --git a/config/rootfiles/common/glib b/config/rootfiles/common/glib index a72b6fee8..d3973a99d 100644 --- a/config/rootfiles/common/glib +++ b/config/rootfiles/common/glib @@ -294,19 +294,19 @@ #usr/lib/glib-2.0/include/glibconfig.h #usr/lib/libgio-2.0.so usr/lib/libgio-2.0.so.0 -usr/lib/libgio-2.0.so.0.6800.1 +usr/lib/libgio-2.0.so.0.6800.3 #usr/lib/libglib-2.0.so usr/lib/libglib-2.0.so.0 -usr/lib/libglib-2.0.so.0.6800.1 +usr/lib/libglib-2.0.so.0.6800.3 #usr/lib/libgmodule-2.0.so usr/lib/libgmodule-2.0.so.0 -usr/lib/libgmodule-2.0.so.0.6800.1 +usr/lib/libgmodule-2.0.so.0.6800.3 #usr/lib/libgobject-2.0.so usr/lib/libgobject-2.0.so.0 -usr/lib/libgobject-2.0.so.0.6800.1 +usr/lib/libgobject-2.0.so.0.6800.3 #usr/lib/libgthread-2.0.so usr/lib/libgthread-2.0.so.0 -usr/lib/libgthread-2.0.so.0.6800.1 +usr/lib/libgthread-2.0.so.0.6800.3 #usr/lib/pkgconfig/gio-2.0.pc #usr/lib/pkgconfig/gio-unix-2.0.pc #usr/lib/pkgconfig/glib-2.0.pc @@ -326,8 +326,8 @@ usr/lib/libgthread-2.0.so.0.6800.1 #usr/share/gdb/auto-load #usr/share/gdb/auto-load/usr #usr/share/gdb/auto-load/usr/lib -#usr/share/gdb/auto-load/usr/lib/libglib-2.0.so.0.6800.1-gdb.py -#usr/share/gdb/auto-load/usr/lib/libgobject-2.0.so.0.6800.1-gdb.py +#usr/share/gdb/auto-load/usr/lib/libglib-2.0.so.0.6800.3-gdb.py +#usr/share/gdb/auto-load/usr/lib/libgobject-2.0.so.0.6800.3-gdb.py #usr/share/gettext/its #usr/share/gettext/its/gschema.its #usr/share/gettext/its/gschema.loc diff --git a/config/rootfiles/common/gnutls b/config/rootfiles/common/gnutls index cb7ecf8e5..e59c1a84f 100644 --- a/config/rootfiles/common/gnutls +++ b/config/rootfiles/common/gnutls @@ -33,7 +33,7 @@ usr/lib/libgnutls-dane.so.0.4.1 #usr/lib/libgnutls.la #usr/lib/libgnutls.so usr/lib/libgnutls.so.30 -usr/lib/libgnutls.so.30.28.0 +usr/lib/libgnutls.so.30.28.2 #usr/lib/libgnutlsxx.la #usr/lib/libgnutlsxx.so usr/lib/libgnutlsxx.so.28 diff --git a/config/rootfiles/common/i586/dmidecode b/config/rootfiles/common/i586/dmidecode index 888395856..5b2ba45ed 100644 --- a/config/rootfiles/common/i586/dmidecode +++ b/config/rootfiles/common/i586/dmidecode @@ -5,6 +5,7 @@ usr/sbin/vpddecode #usr/share/doc/dmidecode #usr/share/doc/dmidecode/AUTHORS #usr/share/doc/dmidecode/CHANGELOG +#usr/share/doc/dmidecode/NEWS #usr/share/doc/dmidecode/README #usr/share/man/man8/biosdecode.8 #usr/share/man/man8/dmidecode.8 diff --git a/config/rootfiles/common/i586/initscripts b/config/rootfiles/common/i586/initscripts index 18c5a897a..dba397e73 100644 --- a/config/rootfiles/common/i586/initscripts +++ b/config/rootfiles/common/i586/initscripts @@ -46,14 +46,12 @@ etc/rc.d/init.d/networking/orange etc/rc.d/init.d/networking/red #etc/rc.d/init.d/networking/red.down etc/rc.d/init.d/networking/red.down/10-ipsec -etc/rc.d/init.d/networking/red.down/10-miniupnpd etc/rc.d/init.d/networking/red.down/10-ovpn etc/rc.d/init.d/networking/red.down/10-static-routes etc/rc.d/init.d/networking/red.down/20-firewall etc/rc.d/init.d/networking/red.down/99-beep #etc/rc.d/init.d/networking/red.up etc/rc.d/init.d/networking/red.up/01-conntrack-cleanup -etc/rc.d/init.d/networking/red.up/10-miniupnpd etc/rc.d/init.d/networking/red.up/10-multicast etc/rc.d/init.d/networking/red.up/10-static-routes etc/rc.d/init.d/networking/red.up/20-firewall @@ -92,7 +90,6 @@ etc/rc.d/init.d/template etc/rc.d/init.d/udev etc/rc.d/init.d/udev_retry etc/rc.d/init.d/unbound -etc/rc.d/init.d/upnpd etc/rc.d/init.d/vnstat etc/rc.d/init.d/waitdrives etc/rc.d/init.d/wlanclient @@ -113,7 +110,6 @@ etc/rc.d/rc0.d/K78suricata etc/rc.d/rc0.d/K79leds etc/rc.d/rc0.d/K80network etc/rc.d/rc0.d/K82wlanclient -#etc/rc.d/rc0.d/K84bluetooth #etc/rc.d/rc0.d/K85messagebus etc/rc.d/rc0.d/K86unbound etc/rc.d/rc0.d/K87acpid @@ -129,7 +125,6 @@ etc/rc.d/rc3.d/S10sysklogd etc/rc.d/rc3.d/S12acpid etc/rc.d/rc3.d/S15fireinfo #etc/rc.d/rc3.d/S15messagebus -#etc/rc.d/rc3.d/S16bluetooth #etc/rc.d/rc3.d/S18cpufreq etc/rc.d/rc3.d/S19smartenabler etc/rc.d/rc3.d/S19wlanclient @@ -164,7 +159,6 @@ etc/rc.d/rc6.d/K78suricata etc/rc.d/rc6.d/K79leds etc/rc.d/rc6.d/K80network etc/rc.d/rc6.d/K82wlanclient -#etc/rc.d/rc6.d/K84bluetooth #etc/rc.d/rc6.d/K85messagebus etc/rc.d/rc6.d/K86unbound etc/rc.d/rc6.d/K87acpid diff --git a/config/rootfiles/common/i586/intel-microcode b/config/rootfiles/common/i586/intel-microcode index ee43ff015..962590af5 100644 --- a/config/rootfiles/common/i586/intel-microcode +++ b/config/rootfiles/common/i586/intel-microcode @@ -67,6 +67,7 @@ lib/firmware/intel-ucode/06-4d-08 lib/firmware/intel-ucode/06-4e-03 lib/firmware/intel-ucode/06-55-03 lib/firmware/intel-ucode/06-55-04 +lib/firmware/intel-ucode/06-55-05 lib/firmware/intel-ucode/06-55-06 lib/firmware/intel-ucode/06-55-07 lib/firmware/intel-ucode/06-55-0b @@ -80,14 +81,23 @@ lib/firmware/intel-ucode/06-5c-0a lib/firmware/intel-ucode/06-5e-03 lib/firmware/intel-ucode/06-5f-01 lib/firmware/intel-ucode/06-66-03 +lib/firmware/intel-ucode/06-6a-05 +lib/firmware/intel-ucode/06-6a-06 lib/firmware/intel-ucode/06-7a-01 lib/firmware/intel-ucode/06-7a-08 lib/firmware/intel-ucode/06-7e-05 +lib/firmware/intel-ucode/06-86-04 +lib/firmware/intel-ucode/06-86-05 lib/firmware/intel-ucode/06-8a-01 +lib/firmware/intel-ucode/06-8c-01 +lib/firmware/intel-ucode/06-8c-02 +lib/firmware/intel-ucode/06-8d-01 lib/firmware/intel-ucode/06-8e-09 lib/firmware/intel-ucode/06-8e-0a lib/firmware/intel-ucode/06-8e-0b lib/firmware/intel-ucode/06-8e-0c +lib/firmware/intel-ucode/06-96-01 +lib/firmware/intel-ucode/06-9c-00 lib/firmware/intel-ucode/06-9e-09 lib/firmware/intel-ucode/06-9e-0a lib/firmware/intel-ucode/06-9e-0b @@ -98,6 +108,7 @@ lib/firmware/intel-ucode/06-a5-03 lib/firmware/intel-ucode/06-a5-05 lib/firmware/intel-ucode/06-a6-00 lib/firmware/intel-ucode/06-a6-01 +lib/firmware/intel-ucode/06-a7-01 lib/firmware/intel-ucode/0f-00-07 lib/firmware/intel-ucode/0f-00-0a lib/firmware/intel-ucode/0f-01-02 diff --git a/config/rootfiles/packages/intltool b/config/rootfiles/common/intltool similarity index 69% rename from config/rootfiles/packages/intltool rename to config/rootfiles/common/intltool index e1421fad7..545c64221 100644 --- a/config/rootfiles/packages/intltool +++ b/config/rootfiles/common/intltool @@ -1,8 +1,8 @@ -usr/bin/intltool-extract -usr/bin/intltool-merge -usr/bin/intltool-prepare -usr/bin/intltool-update -usr/bin/intltoolize +#usr/bin/intltool-extract +#usr/bin/intltool-merge +#usr/bin/intltool-prepare +#usr/bin/intltool-update +#usr/bin/intltoolize #usr/share/aclocal/intltool.m4 #usr/share/intltool #usr/share/intltool/Makefile.in.in diff --git a/config/rootfiles/common/iputils b/config/rootfiles/common/iputils index 3484cbb24..37e0cb603 100644 --- a/config/rootfiles/common/iputils +++ b/config/rootfiles/common/iputils @@ -1,3 +1,15 @@ bin/ping +#etc/rc.d/init.d/ninfod.sh +#usr/bin/arping +#usr/bin/clockdiff usr/bin/ping usr/bin/tracepath +#usr/sbin/ninfod +#usr/sbin/rdisc +#usr/share/locale/de/LC_MESSAGES/iputils.mo +#usr/share/locale/fr/LC_MESSAGES/iputils.mo +#usr/share/locale/ja/LC_MESSAGES/iputils.mo +#usr/share/locale/pt_BR/LC_MESSAGES/iputils.mo +#usr/share/locale/tr/LC_MESSAGES/iputils.mo +#usr/share/locale/uk/LC_MESSAGES/iputils.mo +#usr/share/locale/zh_CN/LC_MESSAGES/iputils.mo diff --git a/config/rootfiles/common/libcap b/config/rootfiles/common/libcap index a3bfbc157..def30cb5a 100644 --- a/config/rootfiles/common/libcap +++ b/config/rootfiles/common/libcap @@ -1,10 +1,10 @@ #lib/libcap.a lib/libcap.so.2 -lib/libcap.so.2.49 +lib/libcap.so.2.50 #lib/libpsx.a #lib/libpsx.so #lib/libpsx.so.2 -#lib/libpsx.so.2.49 +#lib/libpsx.so.2.50 #lib/pkgconfig/libcap.pc #lib/pkgconfig/libpsx.pc lib/security/pam_cap.so diff --git a/config/rootfiles/common/libedit b/config/rootfiles/common/libedit index b0e8cf19c..2a1b8f534 100644 --- a/config/rootfiles/common/libedit +++ b/config/rootfiles/common/libedit @@ -4,7 +4,7 @@ #usr/lib/libedit.la #usr/lib/libedit.so usr/lib/libedit.so.0 -usr/lib/libedit.so.0.0.65 +usr/lib/libedit.so.0.0.66 #usr/lib/pkgconfig/libedit.pc #usr/share/man/man3/editline.3 #usr/share/man/man3/el_deletestr.3 diff --git a/config/rootfiles/common/libnl-3 b/config/rootfiles/common/libnl-3 index 0ad3c36e2..deee0591b 100644 --- a/config/rootfiles/common/libnl-3 +++ b/config/rootfiles/common/libnl-3 @@ -57,7 +57,10 @@ etc/libnl/pktloc #usr/include/libnl3/netlink/object.h #usr/include/libnl3/netlink/route #usr/include/libnl3/netlink/route/act +#usr/include/libnl3/netlink/route/act/gact.h #usr/include/libnl3/netlink/route/act/mirred.h +#usr/include/libnl3/netlink/route/act/skbedit.h +#usr/include/libnl3/netlink/route/act/vlan.h #usr/include/libnl3/netlink/route/action.h #usr/include/libnl3/netlink/route/addr.h #usr/include/libnl3/netlink/route/class.h @@ -72,6 +75,7 @@ etc/libnl/pktloc #usr/include/libnl3/netlink/route/cls/ematch/nbyte.h #usr/include/libnl3/netlink/route/cls/ematch/text.h #usr/include/libnl3/netlink/route/cls/fw.h +#usr/include/libnl3/netlink/route/cls/matchall.h #usr/include/libnl3/netlink/route/cls/police.h #usr/include/libnl3/netlink/route/cls/u32.h #usr/include/libnl3/netlink/route/link @@ -80,19 +84,29 @@ etc/libnl/pktloc #usr/include/libnl3/netlink/route/link/bonding.h #usr/include/libnl3/netlink/route/link/bridge.h #usr/include/libnl3/netlink/route/link/can.h +#usr/include/libnl3/netlink/route/link/geneve.h #usr/include/libnl3/netlink/route/link/inet.h +#usr/include/libnl3/netlink/route/link/inet6.h #usr/include/libnl3/netlink/route/link/info-api.h #usr/include/libnl3/netlink/route/link/ip6tnl.h #usr/include/libnl3/netlink/route/link/ipgre.h #usr/include/libnl3/netlink/route/link/ipip.h +#usr/include/libnl3/netlink/route/link/ipvlan.h #usr/include/libnl3/netlink/route/link/ipvti.h +#usr/include/libnl3/netlink/route/link/macsec.h #usr/include/libnl3/netlink/route/link/macvlan.h +#usr/include/libnl3/netlink/route/link/macvtap.h +#usr/include/libnl3/netlink/route/link/ppp.h #usr/include/libnl3/netlink/route/link/sit.h +#usr/include/libnl3/netlink/route/link/sriov.h #usr/include/libnl3/netlink/route/link/veth.h #usr/include/libnl3/netlink/route/link/vlan.h +#usr/include/libnl3/netlink/route/link/vrf.h #usr/include/libnl3/netlink/route/link/vxlan.h +#usr/include/libnl3/netlink/route/link/xfrmi.h #usr/include/libnl3/netlink/route/neighbour.h #usr/include/libnl3/netlink/route/neightbl.h +#usr/include/libnl3/netlink/route/netconf.h #usr/include/libnl3/netlink/route/nexthop.h #usr/include/libnl3/netlink/route/pktloc.h #usr/include/libnl3/netlink/route/qdisc @@ -101,7 +115,9 @@ etc/libnl/pktloc #usr/include/libnl3/netlink/route/qdisc/dsmark.h #usr/include/libnl3/netlink/route/qdisc/fifo.h #usr/include/libnl3/netlink/route/qdisc/fq_codel.h +#usr/include/libnl3/netlink/route/qdisc/hfsc.h #usr/include/libnl3/netlink/route/qdisc/htb.h +#usr/include/libnl3/netlink/route/qdisc/mqprio.h #usr/include/libnl3/netlink/route/qdisc/netem.h #usr/include/libnl3/netlink/route/qdisc/plug.h #usr/include/libnl3/netlink/route/qdisc/prio.h @@ -117,73 +133,86 @@ etc/libnl/pktloc #usr/include/libnl3/netlink/types.h #usr/include/libnl3/netlink/utils.h #usr/include/libnl3/netlink/version.h +#usr/include/libnl3/netlink/xfrm +#usr/include/libnl3/netlink/xfrm/ae.h +#usr/include/libnl3/netlink/xfrm/lifetime.h +#usr/include/libnl3/netlink/xfrm/sa.h +#usr/include/libnl3/netlink/xfrm/selector.h +#usr/include/libnl3/netlink/xfrm/sp.h +#usr/include/libnl3/netlink/xfrm/template.h #usr/lib/libnl -#usr/lib/libnl-3.a #usr/lib/libnl-3.la #usr/lib/libnl-3.so usr/lib/libnl-3.so.200 -usr/lib/libnl-3.so.200.20.0 -#usr/lib/libnl-cli-3.a +usr/lib/libnl-3.so.200.26.0 #usr/lib/libnl-cli-3.la #usr/lib/libnl-cli-3.so usr/lib/libnl-cli-3.so.200 -usr/lib/libnl-cli-3.so.200.20.0 -#usr/lib/libnl-genl-3.a +usr/lib/libnl-cli-3.so.200.26.0 #usr/lib/libnl-genl-3.la #usr/lib/libnl-genl-3.so usr/lib/libnl-genl-3.so.200 -usr/lib/libnl-genl-3.so.200.20.0 -#usr/lib/libnl-idiag-3.a +usr/lib/libnl-genl-3.so.200.26.0 #usr/lib/libnl-idiag-3.la #usr/lib/libnl-idiag-3.so usr/lib/libnl-idiag-3.so.200 -usr/lib/libnl-idiag-3.so.200.20.0 -#usr/lib/libnl-nf-3.a +usr/lib/libnl-idiag-3.so.200.26.0 #usr/lib/libnl-nf-3.la #usr/lib/libnl-nf-3.so usr/lib/libnl-nf-3.so.200 -usr/lib/libnl-nf-3.so.200.20.0 -#usr/lib/libnl-route-3.a +usr/lib/libnl-nf-3.so.200.26.0 #usr/lib/libnl-route-3.la #usr/lib/libnl-route-3.so usr/lib/libnl-route-3.so.200 -usr/lib/libnl-route-3.so.200.20.0 +usr/lib/libnl-route-3.so.200.26.0 +#usr/lib/libnl-xfrm-3.la +#usr/lib/libnl-xfrm-3.so +usr/lib/libnl-xfrm-3.so.200 +usr/lib/libnl-xfrm-3.so.200.26.0 #usr/lib/libnl/cli #usr/lib/libnl/cli/cls -#usr/lib/libnl/cli/cls/basic.a #usr/lib/libnl/cli/cls/basic.la usr/lib/libnl/cli/cls/basic.so -#usr/lib/libnl/cli/cls/cgroup.a #usr/lib/libnl/cli/cls/cgroup.la usr/lib/libnl/cli/cls/cgroup.so #usr/lib/libnl/cli/qdisc -#usr/lib/libnl/cli/qdisc/bfifo.a #usr/lib/libnl/cli/qdisc/bfifo.la usr/lib/libnl/cli/qdisc/bfifo.so -#usr/lib/libnl/cli/qdisc/blackhole.a #usr/lib/libnl/cli/qdisc/blackhole.la usr/lib/libnl/cli/qdisc/blackhole.so -#usr/lib/libnl/cli/qdisc/fq_codel.a #usr/lib/libnl/cli/qdisc/fq_codel.la usr/lib/libnl/cli/qdisc/fq_codel.so -#usr/lib/libnl/cli/qdisc/htb.a +#usr/lib/libnl/cli/qdisc/hfsc.la +#usr/lib/libnl/cli/qdisc/hfsc.so #usr/lib/libnl/cli/qdisc/htb.la usr/lib/libnl/cli/qdisc/htb.so -#usr/lib/libnl/cli/qdisc/ingress.a #usr/lib/libnl/cli/qdisc/ingress.la usr/lib/libnl/cli/qdisc/ingress.so -#usr/lib/libnl/cli/qdisc/pfifo.a #usr/lib/libnl/cli/qdisc/pfifo.la usr/lib/libnl/cli/qdisc/pfifo.so -#usr/lib/libnl/cli/qdisc/plug.a #usr/lib/libnl/cli/qdisc/plug.la usr/lib/libnl/cli/qdisc/plug.so #usr/lib/pkgconfig/libnl-3.0.pc #usr/lib/pkgconfig/libnl-cli-3.0.pc #usr/lib/pkgconfig/libnl-genl-3.0.pc +#usr/lib/pkgconfig/libnl-idiag-3.0.pc #usr/lib/pkgconfig/libnl-nf-3.0.pc #usr/lib/pkgconfig/libnl-route-3.0.pc +#usr/lib/pkgconfig/libnl-xfrm-3.0.pc #usr/sbin/genl-ctrl-list +#usr/sbin/idiag-socket-details +#usr/sbin/nf-ct-add +#usr/sbin/nf-ct-events +#usr/sbin/nf-ct-list +#usr/sbin/nf-exp-add +#usr/sbin/nf-exp-delete +#usr/sbin/nf-exp-list +#usr/sbin/nf-log +#usr/sbin/nf-monitor +#usr/sbin/nf-queue +#usr/sbin/nl-addr-add +#usr/sbin/nl-addr-delete +#usr/sbin/nl-addr-list usr/sbin/nl-class-add usr/sbin/nl-class-delete usr/sbin/nl-class-list @@ -191,11 +220,32 @@ usr/sbin/nl-classid-lookup usr/sbin/nl-cls-add usr/sbin/nl-cls-delete usr/sbin/nl-cls-list +#usr/sbin/nl-fib-lookup +#usr/sbin/nl-link-enslave +#usr/sbin/nl-link-ifindex2name usr/sbin/nl-link-list +#usr/sbin/nl-link-name2ifindex +#usr/sbin/nl-link-release +#usr/sbin/nl-link-set +#usr/sbin/nl-link-stats +#usr/sbin/nl-list-caches +#usr/sbin/nl-list-sockets +#usr/sbin/nl-monitor +#usr/sbin/nl-neigh-add +#usr/sbin/nl-neigh-delete +#usr/sbin/nl-neigh-list +#usr/sbin/nl-neightbl-list usr/sbin/nl-pktloc-lookup usr/sbin/nl-qdisc-add usr/sbin/nl-qdisc-delete usr/sbin/nl-qdisc-list +#usr/sbin/nl-route-add +#usr/sbin/nl-route-delete +#usr/sbin/nl-route-get +#usr/sbin/nl-route-list +#usr/sbin/nl-rule-list +#usr/sbin/nl-tctree-list +#usr/sbin/nl-util-addr #usr/share/man/man8/genl-ctrl-list.8 #usr/share/man/man8/nl-classid-lookup.8 #usr/share/man/man8/nl-pktloc-lookup.8 diff --git a/config/rootfiles/common/libpcap b/config/rootfiles/common/libpcap index c97b9e8c0..514f57558 100644 --- a/config/rootfiles/common/libpcap +++ b/config/rootfiles/common/libpcap @@ -21,7 +21,7 @@ #usr/lib/libpcap.a usr/lib/libpcap.so usr/lib/libpcap.so.1 -usr/lib/libpcap.so.1.10.0 +usr/lib/libpcap.so.1.10.1 #usr/lib/pkgconfig/libpcap.pc #usr/share/man/man1/pcap-config.1 #usr/share/man/man3/pcap.3pcap diff --git a/config/rootfiles/common/libupnp b/config/rootfiles/common/libupnp deleted file mode 100644 index 6b3f3e310..000000000 --- a/config/rootfiles/common/libupnp +++ /dev/null @@ -1,37 +0,0 @@ -#usr/include/upnp -#usr/include/upnp/Callback.h -#usr/include/upnp/UpnpActionComplete.h -#usr/include/upnp/UpnpActionRequest.h -#usr/include/upnp/UpnpDiscovery.h -#usr/include/upnp/UpnpEvent.h -#usr/include/upnp/UpnpEventSubscribe.h -#usr/include/upnp/UpnpExtraHeaders.h -#usr/include/upnp/UpnpFileInfo.h -#usr/include/upnp/UpnpGlobal.h -#usr/include/upnp/UpnpInet.h -#usr/include/upnp/UpnpIntTypes.h -#usr/include/upnp/UpnpStateVarComplete.h -#usr/include/upnp/UpnpStateVarRequest.h -#usr/include/upnp/UpnpStdInt.h -#usr/include/upnp/UpnpString.h -#usr/include/upnp/UpnpSubscriptionRequest.h -#usr/include/upnp/UpnpUniStd.h -#usr/include/upnp/ithread.h -#usr/include/upnp/ixml.h -#usr/include/upnp/ixmldebug.h -#usr/include/upnp/list.h -#usr/include/upnp/upnp.h -#usr/include/upnp/upnpconfig.h -#usr/include/upnp/upnpdebug.h -#usr/include/upnp/upnptools.h -#usr/lib/libixml.a -#usr/lib/libixml.la -#usr/lib/libixml.so -usr/lib/libixml.so.11 -usr/lib/libixml.so.11.0.1 -#usr/lib/libupnp.a -#usr/lib/libupnp.la -#usr/lib/libupnp.so -usr/lib/libupnp.so.17 -usr/lib/libupnp.so.17.0.6 -#usr/lib/pkgconfig/libupnp.pc diff --git a/config/rootfiles/common/libusb b/config/rootfiles/common/libusb index 232574159..db0215195 100644 --- a/config/rootfiles/common/libusb +++ b/config/rootfiles/common/libusb @@ -5,5 +5,5 @@ etc/udev/rules.d/23-usb.rules #usr/lib/libusb-1.0.la #usr/lib/libusb-1.0.so usr/lib/libusb-1.0.so.0 -usr/lib/libusb-1.0.so.0.2.0 +usr/lib/libusb-1.0.so.0.3.0 #usr/lib/pkgconfig/libusb-1.0.pc diff --git a/config/rootfiles/common/linux-firmware b/config/rootfiles/common/linux-firmware index 02f78c0ee..434bad66b 100644 --- a/config/rootfiles/common/linux-firmware +++ b/config/rootfiles/common/linux-firmware @@ -29,7 +29,18 @@ lib/firmware/amd-ucode/microcode_amd_fam15h.bin lib/firmware/amd-ucode/microcode_amd_fam16h.bin lib/firmware/amd-ucode/microcode_amd_fam17h.bin lib/firmware/amd/amd_sev_fam17h_model0xh.sbin +lib/firmware/amd/amd_sev_fam17h_model3xh.sbin #lib/firmware/amdgpu +lib/firmware/amdgpu/arcturus_asd.bin +lib/firmware/amdgpu/arcturus_gpu_info.bin +lib/firmware/amdgpu/arcturus_mec.bin +lib/firmware/amdgpu/arcturus_mec2.bin +lib/firmware/amdgpu/arcturus_rlc.bin +lib/firmware/amdgpu/arcturus_sdma.bin +lib/firmware/amdgpu/arcturus_smc.bin +lib/firmware/amdgpu/arcturus_sos.bin +lib/firmware/amdgpu/arcturus_ta.bin +lib/firmware/amdgpu/arcturus_vcn.bin lib/firmware/amdgpu/banks_k_2_smc.bin lib/firmware/amdgpu/bonaire_ce.bin lib/firmware/amdgpu/bonaire_k_smc.bin @@ -65,6 +76,17 @@ lib/firmware/amdgpu/fiji_sdma1.bin lib/firmware/amdgpu/fiji_smc.bin lib/firmware/amdgpu/fiji_uvd.bin lib/firmware/amdgpu/fiji_vce.bin +lib/firmware/amdgpu/green_sardine_asd.bin +lib/firmware/amdgpu/green_sardine_ce.bin +lib/firmware/amdgpu/green_sardine_dmcub.bin +lib/firmware/amdgpu/green_sardine_me.bin +lib/firmware/amdgpu/green_sardine_mec.bin +lib/firmware/amdgpu/green_sardine_mec2.bin +lib/firmware/amdgpu/green_sardine_pfp.bin +lib/firmware/amdgpu/green_sardine_rlc.bin +lib/firmware/amdgpu/green_sardine_sdma.bin +lib/firmware/amdgpu/green_sardine_ta.bin +lib/firmware/amdgpu/green_sardine_vcn.bin lib/firmware/amdgpu/hainan_ce.bin lib/firmware/amdgpu/hainan_k_smc.bin lib/firmware/amdgpu/hainan_mc.bin @@ -126,6 +148,21 @@ lib/firmware/amdgpu/navi10_smc.bin lib/firmware/amdgpu/navi10_sos.bin lib/firmware/amdgpu/navi10_ta.bin lib/firmware/amdgpu/navi10_vcn.bin +lib/firmware/amdgpu/navi12_asd.bin +lib/firmware/amdgpu/navi12_ce.bin +lib/firmware/amdgpu/navi12_dmcu.bin +lib/firmware/amdgpu/navi12_gpu_info.bin +lib/firmware/amdgpu/navi12_me.bin +lib/firmware/amdgpu/navi12_mec.bin +lib/firmware/amdgpu/navi12_mec2.bin +lib/firmware/amdgpu/navi12_pfp.bin +lib/firmware/amdgpu/navi12_rlc.bin +lib/firmware/amdgpu/navi12_sdma.bin +lib/firmware/amdgpu/navi12_sdma1.bin +lib/firmware/amdgpu/navi12_smc.bin +lib/firmware/amdgpu/navi12_sos.bin +lib/firmware/amdgpu/navi12_ta.bin +lib/firmware/amdgpu/navi12_vcn.bin lib/firmware/amdgpu/navi14_asd.bin lib/firmware/amdgpu/navi14_ce.bin lib/firmware/amdgpu/navi14_ce_wks.bin @@ -145,6 +182,18 @@ lib/firmware/amdgpu/navi14_smc.bin lib/firmware/amdgpu/navi14_sos.bin lib/firmware/amdgpu/navi14_ta.bin lib/firmware/amdgpu/navi14_vcn.bin +lib/firmware/amdgpu/navy_flounder_ce.bin +lib/firmware/amdgpu/navy_flounder_dmcub.bin +lib/firmware/amdgpu/navy_flounder_me.bin +lib/firmware/amdgpu/navy_flounder_mec.bin +lib/firmware/amdgpu/navy_flounder_mec2.bin +lib/firmware/amdgpu/navy_flounder_pfp.bin +lib/firmware/amdgpu/navy_flounder_rlc.bin +lib/firmware/amdgpu/navy_flounder_sdma.bin +lib/firmware/amdgpu/navy_flounder_smc.bin +lib/firmware/amdgpu/navy_flounder_sos.bin +lib/firmware/amdgpu/navy_flounder_ta.bin +lib/firmware/amdgpu/navy_flounder_vcn.bin lib/firmware/amdgpu/oland_ce.bin lib/firmware/amdgpu/oland_k_smc.bin lib/firmware/amdgpu/oland_mc.bin @@ -152,6 +201,7 @@ lib/firmware/amdgpu/oland_me.bin lib/firmware/amdgpu/oland_pfp.bin lib/firmware/amdgpu/oland_rlc.bin lib/firmware/amdgpu/oland_smc.bin +lib/firmware/amdgpu/oland_uvd.bin lib/firmware/amdgpu/picasso_asd.bin lib/firmware/amdgpu/picasso_ce.bin lib/firmware/amdgpu/picasso_gpu_info.bin @@ -171,6 +221,7 @@ lib/firmware/amdgpu/pitcairn_me.bin lib/firmware/amdgpu/pitcairn_pfp.bin lib/firmware/amdgpu/pitcairn_rlc.bin lib/firmware/amdgpu/pitcairn_smc.bin +lib/firmware/amdgpu/pitcairn_uvd.bin lib/firmware/amdgpu/polaris10_ce.bin lib/firmware/amdgpu/polaris10_ce_2.bin lib/firmware/amdgpu/polaris10_k2_smc.bin @@ -213,6 +264,7 @@ lib/firmware/amdgpu/polaris11_smc.bin lib/firmware/amdgpu/polaris11_smc_sk.bin lib/firmware/amdgpu/polaris11_uvd.bin lib/firmware/amdgpu/polaris11_vce.bin +lib/firmware/amdgpu/polaris12_32_mc.bin lib/firmware/amdgpu/polaris12_ce.bin lib/firmware/amdgpu/polaris12_ce_2.bin lib/firmware/amdgpu/polaris12_k_mc.bin @@ -266,8 +318,21 @@ lib/firmware/amdgpu/renoir_mec2.bin lib/firmware/amdgpu/renoir_pfp.bin lib/firmware/amdgpu/renoir_rlc.bin lib/firmware/amdgpu/renoir_sdma.bin +lib/firmware/amdgpu/renoir_ta.bin lib/firmware/amdgpu/renoir_vcn.bin lib/firmware/amdgpu/si58_mc.bin +lib/firmware/amdgpu/sienna_cichlid_ce.bin +lib/firmware/amdgpu/sienna_cichlid_dmcub.bin +lib/firmware/amdgpu/sienna_cichlid_me.bin +lib/firmware/amdgpu/sienna_cichlid_mec.bin +lib/firmware/amdgpu/sienna_cichlid_mec2.bin +lib/firmware/amdgpu/sienna_cichlid_pfp.bin +lib/firmware/amdgpu/sienna_cichlid_rlc.bin +lib/firmware/amdgpu/sienna_cichlid_sdma.bin +lib/firmware/amdgpu/sienna_cichlid_smc.bin +lib/firmware/amdgpu/sienna_cichlid_sos.bin +lib/firmware/amdgpu/sienna_cichlid_ta.bin +lib/firmware/amdgpu/sienna_cichlid_vcn.bin lib/firmware/amdgpu/stoney_ce.bin lib/firmware/amdgpu/stoney_me.bin lib/firmware/amdgpu/stoney_mec.bin @@ -283,6 +348,7 @@ lib/firmware/amdgpu/tahiti_me.bin lib/firmware/amdgpu/tahiti_pfp.bin lib/firmware/amdgpu/tahiti_rlc.bin lib/firmware/amdgpu/tahiti_smc.bin +lib/firmware/amdgpu/tahiti_uvd.bin lib/firmware/amdgpu/tonga_ce.bin lib/firmware/amdgpu/tonga_k_smc.bin lib/firmware/amdgpu/tonga_mc.bin @@ -347,6 +413,7 @@ lib/firmware/amdgpu/vega20_sdma.bin lib/firmware/amdgpu/vega20_sdma1.bin lib/firmware/amdgpu/vega20_smc.bin lib/firmware/amdgpu/vega20_sos.bin +lib/firmware/amdgpu/vega20_ta.bin lib/firmware/amdgpu/vega20_uvd.bin lib/firmware/amdgpu/vega20_vce.bin lib/firmware/amdgpu/vegam_ce.bin @@ -367,6 +434,7 @@ lib/firmware/amdgpu/verde_me.bin lib/firmware/amdgpu/verde_pfp.bin lib/firmware/amdgpu/verde_rlc.bin lib/firmware/amdgpu/verde_smc.bin +lib/firmware/amdgpu/verde_uvd.bin #lib/firmware/ar3k #lib/firmware/ar3k/1020200 lib/firmware/ar3k/1020200/PS_ASIC.pst @@ -432,12 +500,14 @@ lib/firmware/ath10k/QCA6174/hw3.0/board-2.bin lib/firmware/ath10k/QCA6174/hw3.0/board.bin lib/firmware/ath10k/QCA6174/hw3.0/firmware-4.bin lib/firmware/ath10k/QCA6174/hw3.0/firmware-6.bin +lib/firmware/ath10k/QCA6174/hw3.0/firmware-sdio-6.bin #lib/firmware/ath10k/QCA9377 #lib/firmware/ath10k/QCA9377/hw1.0 lib/firmware/ath10k/QCA9377/hw1.0/board-2.bin lib/firmware/ath10k/QCA9377/hw1.0/board.bin lib/firmware/ath10k/QCA9377/hw1.0/firmware-5.bin lib/firmware/ath10k/QCA9377/hw1.0/firmware-6.bin +lib/firmware/ath10k/QCA9377/hw1.0/firmware-sdio-5.bin #lib/firmware/ath10k/QCA9887 #lib/firmware/ath10k/QCA9887/hw1.0 lib/firmware/ath10k/QCA9887/hw1.0/board.bin @@ -463,6 +533,48 @@ lib/firmware/ath10k/QCA99X0/hw2.0/firmware-5.bin lib/firmware/ath10k/WCN3990/hw1.0 lib/firmware/ath10k/WCN3990/hw1.0/firmware-5.bin lib/firmware/ath10k/WCN3990/hw1.0/wlanmdsp.mbn +lib/firmware/ath11k +lib/firmware/ath11k/IPQ6018 +lib/firmware/ath11k/IPQ6018/hw1.0 +lib/firmware/ath11k/IPQ6018/hw1.0/board-2.bin +lib/firmware/ath11k/IPQ6018/hw1.0/m3_fw.b00 +lib/firmware/ath11k/IPQ6018/hw1.0/m3_fw.b01 +lib/firmware/ath11k/IPQ6018/hw1.0/m3_fw.b02 +lib/firmware/ath11k/IPQ6018/hw1.0/m3_fw.flist +lib/firmware/ath11k/IPQ6018/hw1.0/m3_fw.mdt +lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.b00 +lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.b01 +lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.b02 +lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.b03 +lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.b04 +lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.b05 +lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.b07 +lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.b08 +lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.flist +lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.mdt +lib/firmware/ath11k/IPQ8074 +lib/firmware/ath11k/IPQ8074/hw2.0 +lib/firmware/ath11k/IPQ8074/hw2.0/board-2.bin +lib/firmware/ath11k/IPQ8074/hw2.0/m3_fw.b00 +lib/firmware/ath11k/IPQ8074/hw2.0/m3_fw.b01 +lib/firmware/ath11k/IPQ8074/hw2.0/m3_fw.b02 +lib/firmware/ath11k/IPQ8074/hw2.0/m3_fw.flist +lib/firmware/ath11k/IPQ8074/hw2.0/m3_fw.mdt +lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.b00 +lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.b01 +lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.b02 +lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.b03 +lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.b04 +lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.b05 +lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.b07 +lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.b08 +lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.flist +lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.mdt +lib/firmware/ath11k/QCA6390 +lib/firmware/ath11k/QCA6390/hw2.0 +lib/firmware/ath11k/QCA6390/hw2.0/amss.bin +lib/firmware/ath11k/QCA6390/hw2.0/board-2.bin +lib/firmware/ath11k/QCA6390/hw2.0/m3.bin lib/firmware/ath3k-1.fw #lib/firmware/ath6k #lib/firmware/ath6k/AR6002 @@ -518,6 +630,7 @@ lib/firmware/ath9k_htc/htc_9271-1.4.0.fw lib/firmware/atmel/wilc1000_ap_fw.bin lib/firmware/atmel/wilc1000_fw.bin lib/firmware/atmel/wilc1000_p2p_fw.bin +lib/firmware/atmel/wilc1000_wifi_firmware-1.bin lib/firmware/atmel/wilc1000_wifi_firmware.bin lib/firmware/atmsar11.fw #lib/firmware/atusb @@ -611,6 +724,8 @@ lib/firmware/brcm/BCM-0bb4-0306.hcd lib/firmware/brcm/bcm4329-fullmac-4.bin lib/firmware/brcm/bcm43xx-0.fw lib/firmware/brcm/bcm43xx_hdr-0.fw +lib/firmware/brcm/brcmfmac43012-sdio.bin +lib/firmware/brcm/brcmfmac43012-sdio.clm_blob lib/firmware/brcm/brcmfmac43143-sdio.bin lib/firmware/brcm/brcmfmac43143.bin lib/firmware/brcm/brcmfmac43236b.bin @@ -625,6 +740,7 @@ lib/firmware/brcm/brcmfmac4334-sdio.bin lib/firmware/brcm/brcmfmac43340-sdio.bin lib/firmware/brcm/brcmfmac43340-sdio.meegopad-t08.txt lib/firmware/brcm/brcmfmac43340-sdio.pov-tab-p1006w-data.txt +lib/firmware/brcm/brcmfmac43340-sdio.predia-basic.txt lib/firmware/brcm/brcmfmac4335-sdio.bin lib/firmware/brcm/brcmfmac43362-sdio.bin lib/firmware/brcm/brcmfmac43362-sdio.cubietech,cubietruck.txt @@ -634,22 +750,39 @@ lib/firmware/brcm/brcmfmac43430-sdio.AP6212.txt lib/firmware/brcm/brcmfmac43430-sdio.Hampoo-D2D3_Vi8A1.txt lib/firmware/brcm/brcmfmac43430-sdio.MUR1DX.txt lib/firmware/brcm/brcmfmac43430-sdio.bin +lib/firmware/brcm/brcmfmac43430-sdio.clm_blob lib/firmware/brcm/brcmfmac43430-sdio.raspberrypi,3-model-b.txt +lib/firmware/brcm/brcmfmac43430-sdio.raspberrypi,model-zero-w.txt +lib/firmware/brcm/brcmfmac43430-sdio.sinovoip,bpi-m2-plus.txt +lib/firmware/brcm/brcmfmac43430-sdio.sinovoip,bpi-m2-ultra.txt +lib/firmware/brcm/brcmfmac43430-sdio.sinovoip,bpi-m2-zero.txt +lib/firmware/brcm/brcmfmac43430-sdio.sinovoip,bpi-m3.txt lib/firmware/brcm/brcmfmac43430a0-sdio.ONDA-V80_PLUS.txt lib/firmware/brcm/brcmfmac43430a0-sdio.bin +lib/firmware/brcm/brcmfmac43430a0-sdio.ilife-S806.txt lib/firmware/brcm/brcmfmac43430a0-sdio.jumper-ezpad-mini3.txt lib/firmware/brcm/brcmfmac43455-sdio.MINIX-NEO_Z83-4.txt +lib/firmware/brcm/brcmfmac43455-sdio.Raspberry_Pi_Foundation-Raspberry_Pi_4_Model_B.txt +lib/firmware/brcm/brcmfmac43455-sdio.Raspberry_Pi_Foundation-Raspberry_Pi_Compute_Module_4.txt lib/firmware/brcm/brcmfmac43455-sdio.bin +lib/firmware/brcm/brcmfmac43455-sdio.clm_blob +lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,3-model-a-plus.txt lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.txt lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.txt lib/firmware/brcm/brcmfmac4350-pcie.bin lib/firmware/brcm/brcmfmac4350c2-pcie.bin lib/firmware/brcm/brcmfmac4354-sdio.bin +lib/firmware/brcm/brcmfmac4354-sdio.clm_blob lib/firmware/brcm/brcmfmac4356-pcie.bin +lib/firmware/brcm/brcmfmac4356-pcie.clm_blob lib/firmware/brcm/brcmfmac4356-pcie.gpd-win-pocket.txt lib/firmware/brcm/brcmfmac4356-sdio.bin +lib/firmware/brcm/brcmfmac4356-sdio.clm_blob +lib/firmware/brcm/brcmfmac4356-sdio.khadas,vim2.txt +lib/firmware/brcm/brcmfmac4356-sdio.vamrs,rock960.txt lib/firmware/brcm/brcmfmac43569.bin lib/firmware/brcm/brcmfmac43570-pcie.bin +lib/firmware/brcm/brcmfmac43570-pcie.clm_blob lib/firmware/brcm/brcmfmac4358-pcie.bin lib/firmware/brcm/brcmfmac43602-pcie.ap.bin lib/firmware/brcm/brcmfmac43602-pcie.bin @@ -657,7 +790,10 @@ lib/firmware/brcm/brcmfmac4366b-pcie.bin lib/firmware/brcm/brcmfmac4366c-pcie.bin lib/firmware/brcm/brcmfmac4371-pcie.bin lib/firmware/brcm/brcmfmac4373-sdio.bin +lib/firmware/brcm/brcmfmac4373-sdio.clm_blob lib/firmware/brcm/brcmfmac4373.bin +lib/firmware/brcm/brcmfmac54591-pcie.bin +lib/firmware/brcm/brcmfmac54591-pcie.clm_blob #lib/firmware/cadence lib/firmware/cadence/mhdp8546.bin lib/firmware/carl9170-1.fw @@ -719,16 +855,38 @@ lib/firmware/cxgb4/configs/t6-config-hashfilter.txt lib/firmware/cxgb4/t4-config.txt lib/firmware/cxgb4/t4fw-1.14.4.0.bin lib/firmware/cxgb4/t4fw-1.15.37.0.bin -lib/firmware/cxgb4/t4fw-1.24.14.0.bin +lib/firmware/cxgb4/t4fw-1.25.4.0.bin lib/firmware/cxgb4/t4fw.bin lib/firmware/cxgb4/t5-config.txt lib/firmware/cxgb4/t5fw-1.14.4.0.bin lib/firmware/cxgb4/t5fw-1.15.37.0.bin -lib/firmware/cxgb4/t5fw-1.24.14.0.bin +lib/firmware/cxgb4/t5fw-1.25.4.0.bin lib/firmware/cxgb4/t5fw.bin lib/firmware/cxgb4/t6-config.txt -lib/firmware/cxgb4/t6fw-1.24.14.0.bin +lib/firmware/cxgb4/t6fw-1.25.4.0.bin lib/firmware/cxgb4/t6fw.bin +lib/firmware/cypress +lib/firmware/cypress/cyfmac43012-sdio.bin +lib/firmware/cypress/cyfmac43012-sdio.clm_blob +lib/firmware/cypress/cyfmac43340-sdio.bin +lib/firmware/cypress/cyfmac43362-sdio.bin +lib/firmware/cypress/cyfmac4339-sdio.bin +lib/firmware/cypress/cyfmac43430-sdio.bin +lib/firmware/cypress/cyfmac43430-sdio.clm_blob +lib/firmware/cypress/cyfmac43455-sdio.bin +lib/firmware/cypress/cyfmac43455-sdio.clm_blob +lib/firmware/cypress/cyfmac4354-sdio.bin +lib/firmware/cypress/cyfmac4354-sdio.clm_blob +lib/firmware/cypress/cyfmac4356-pcie.bin +lib/firmware/cypress/cyfmac4356-pcie.clm_blob +lib/firmware/cypress/cyfmac4356-sdio.bin +lib/firmware/cypress/cyfmac4356-sdio.clm_blob +lib/firmware/cypress/cyfmac43570-pcie.bin +lib/firmware/cypress/cyfmac43570-pcie.clm_blob +lib/firmware/cypress/cyfmac4373-sdio.bin +lib/firmware/cypress/cyfmac4373-sdio.clm_blob +lib/firmware/cypress/cyfmac54591-pcie.bin +lib/firmware/cypress/cyfmac54591-pcie.clm_blob #lib/firmware/dabusb lib/firmware/dabusb/bitstream.bin lib/firmware/dabusb/firmware.fw @@ -806,30 +964,41 @@ lib/firmware/i2400m-fw-usb-1.4.sbcf lib/firmware/i2400m-fw-usb-1.5.sbcf lib/firmware/i6050-fw-usb-1.5.sbcf #lib/firmware/i915 +lib/firmware/i915/adlp_dmc_ver2_09.bin +lib/firmware/i915/adlp_dmc_ver2_10.bin +lib/firmware/i915/adls_dmc_ver2_01.bin lib/firmware/i915/bxt_dmc_ver1.bin lib/firmware/i915/bxt_dmc_ver1_07.bin lib/firmware/i915/bxt_guc_32.0.3.bin lib/firmware/i915/bxt_guc_33.0.0.bin +lib/firmware/i915/bxt_guc_49.0.1.bin lib/firmware/i915/bxt_guc_ver8_7.bin lib/firmware/i915/bxt_guc_ver9_29.bin lib/firmware/i915/bxt_huc_2.0.0.bin lib/firmware/i915/bxt_huc_ver01_07_1398.bin lib/firmware/i915/bxt_huc_ver01_8_2893.bin lib/firmware/i915/cml_guc_33.0.0.bin +lib/firmware/i915/cml_guc_49.0.1.bin lib/firmware/i915/cml_huc_4.0.0.bin lib/firmware/i915/cnl_dmc_ver1_06.bin lib/firmware/i915/cnl_dmc_ver1_07.bin +lib/firmware/i915/dg1_dmc_ver2_02.bin +lib/firmware/i915/dg1_guc_49.0.1.bin +lib/firmware/i915/dg1_huc_7.7.1.bin lib/firmware/i915/ehl_guc_33.0.4.bin +lib/firmware/i915/ehl_guc_49.0.1.bin lib/firmware/i915/ehl_huc_9.0.0.bin lib/firmware/i915/glk_dmc_ver1_04.bin lib/firmware/i915/glk_guc_32.0.3.bin lib/firmware/i915/glk_guc_33.0.0.bin +lib/firmware/i915/glk_guc_49.0.1.bin lib/firmware/i915/glk_huc_4.0.0.bin lib/firmware/i915/glk_huc_ver03_01_2893.bin lib/firmware/i915/icl_dmc_ver1_07.bin lib/firmware/i915/icl_dmc_ver1_09.bin lib/firmware/i915/icl_guc_32.0.3.bin lib/firmware/i915/icl_guc_33.0.0.bin +lib/firmware/i915/icl_guc_49.0.1.bin lib/firmware/i915/icl_huc_9.0.0.bin lib/firmware/i915/icl_huc_ver8_4_3238.bin lib/firmware/i915/kbl_dmc_ver1.bin @@ -837,16 +1006,19 @@ lib/firmware/i915/kbl_dmc_ver1_01.bin lib/firmware/i915/kbl_dmc_ver1_04.bin lib/firmware/i915/kbl_guc_32.0.3.bin lib/firmware/i915/kbl_guc_33.0.0.bin +lib/firmware/i915/kbl_guc_49.0.1.bin lib/firmware/i915/kbl_guc_ver9_14.bin lib/firmware/i915/kbl_guc_ver9_39.bin lib/firmware/i915/kbl_huc_4.0.0.bin lib/firmware/i915/kbl_huc_ver02_00_1810.bin +lib/firmware/i915/rkl_dmc_ver2_02.bin lib/firmware/i915/skl_dmc_ver1.bin lib/firmware/i915/skl_dmc_ver1_23.bin lib/firmware/i915/skl_dmc_ver1_26.bin lib/firmware/i915/skl_dmc_ver1_27.bin lib/firmware/i915/skl_guc_32.0.3.bin lib/firmware/i915/skl_guc_33.0.0.bin +lib/firmware/i915/skl_guc_49.0.1.bin lib/firmware/i915/skl_guc_ver1.bin lib/firmware/i915/skl_guc_ver4.bin lib/firmware/i915/skl_guc_ver6.bin @@ -856,9 +1028,12 @@ lib/firmware/i915/skl_huc_2.0.0.bin lib/firmware/i915/skl_huc_ver01_07_1398.bin lib/firmware/i915/tgl_dmc_ver2_04.bin lib/firmware/i915/tgl_dmc_ver2_06.bin +lib/firmware/i915/tgl_dmc_ver2_08.bin lib/firmware/i915/tgl_guc_35.2.0.bin +lib/firmware/i915/tgl_guc_49.0.1.bin lib/firmware/i915/tgl_huc_7.0.12.bin lib/firmware/i915/tgl_huc_7.0.3.bin +lib/firmware/i915/tgl_huc_7.5.0.bin #lib/firmware/imx #lib/firmware/imx/sdma lib/firmware/imx/sdma/sdma-imx6q.bin @@ -895,6 +1070,8 @@ lib/firmware/intel/fw_sst_0f28.bin lib/firmware/intel/fw_sst_0f28.bin-48kHz_i2s_master lib/firmware/intel/fw_sst_0f28_ssp0.bin lib/firmware/intel/fw_sst_22a8.bin +lib/firmware/intel/ibt-0041-0041.ddc +lib/firmware/intel/ibt-0041-0041.sfi lib/firmware/intel/ibt-11-5.ddc lib/firmware/intel/ibt-11-5.sfi lib/firmware/intel/ibt-12-16.ddc @@ -950,7 +1127,9 @@ lib/firmware/intel/ibt-hw-37.8.10-fw-22.50.19.14.f.bseq lib/firmware/intel/ibt-hw-37.8.bseq #lib/firmware/intel/ice #lib/firmware/intel/ice/ddp -lib/firmware/intel/ice/ddp/ice-1.3.4.0.pkg +lib/firmware/intel/ice/ddp-comms +lib/firmware/intel/ice/ddp-comms/ice_comms-1.3.20.0.pkg +lib/firmware/intel/ice/ddp/ice-1.3.16.0.pkg lib/firmware/intel/ice/ddp/ice.pkg lib/firmware/intel/ipu3-fw.bin lib/firmware/intel/irci_irci_ecr-master_20161208_0213_20170112_1500.bin @@ -1046,31 +1225,48 @@ lib/firmware/iwlwifi-Qu-b0-hr-b0-48.ucode lib/firmware/iwlwifi-Qu-b0-hr-b0-50.ucode lib/firmware/iwlwifi-Qu-b0-hr-b0-53.ucode lib/firmware/iwlwifi-Qu-b0-hr-b0-55.ucode +lib/firmware/iwlwifi-Qu-b0-hr-b0-59.ucode +lib/firmware/iwlwifi-Qu-b0-hr-b0-62.ucode lib/firmware/iwlwifi-Qu-b0-jf-b0-48.ucode lib/firmware/iwlwifi-Qu-b0-jf-b0-50.ucode lib/firmware/iwlwifi-Qu-b0-jf-b0-53.ucode lib/firmware/iwlwifi-Qu-b0-jf-b0-55.ucode +lib/firmware/iwlwifi-Qu-b0-jf-b0-59.ucode +lib/firmware/iwlwifi-Qu-b0-jf-b0-62.ucode lib/firmware/iwlwifi-Qu-c0-hr-b0-48.ucode lib/firmware/iwlwifi-Qu-c0-hr-b0-50.ucode lib/firmware/iwlwifi-Qu-c0-hr-b0-53.ucode lib/firmware/iwlwifi-Qu-c0-hr-b0-55.ucode +lib/firmware/iwlwifi-Qu-c0-hr-b0-59.ucode +lib/firmware/iwlwifi-Qu-c0-hr-b0-62.ucode lib/firmware/iwlwifi-Qu-c0-jf-b0-48.ucode lib/firmware/iwlwifi-Qu-c0-jf-b0-50.ucode lib/firmware/iwlwifi-Qu-c0-jf-b0-53.ucode lib/firmware/iwlwifi-Qu-c0-jf-b0-55.ucode +lib/firmware/iwlwifi-Qu-c0-jf-b0-59.ucode +lib/firmware/iwlwifi-Qu-c0-jf-b0-62.ucode lib/firmware/iwlwifi-QuZ-a0-hr-b0-48.ucode lib/firmware/iwlwifi-QuZ-a0-hr-b0-50.ucode lib/firmware/iwlwifi-QuZ-a0-hr-b0-53.ucode lib/firmware/iwlwifi-QuZ-a0-hr-b0-55.ucode +lib/firmware/iwlwifi-QuZ-a0-hr-b0-59.ucode +lib/firmware/iwlwifi-QuZ-a0-hr-b0-62.ucode lib/firmware/iwlwifi-QuZ-a0-jf-b0-48.ucode lib/firmware/iwlwifi-QuZ-a0-jf-b0-50.ucode lib/firmware/iwlwifi-QuZ-a0-jf-b0-53.ucode lib/firmware/iwlwifi-QuZ-a0-jf-b0-55.ucode +lib/firmware/iwlwifi-QuZ-a0-jf-b0-59.ucode +lib/firmware/iwlwifi-QuZ-a0-jf-b0-62.ucode lib/firmware/iwlwifi-cc-a0-46.ucode lib/firmware/iwlwifi-cc-a0-48.ucode lib/firmware/iwlwifi-cc-a0-50.ucode lib/firmware/iwlwifi-cc-a0-53.ucode lib/firmware/iwlwifi-cc-a0-55.ucode +lib/firmware/iwlwifi-cc-a0-59.ucode +lib/firmware/iwlwifi-cc-a0-62.ucode +lib/firmware/iwlwifi-ty-a0-gf-a0-59.ucode +lib/firmware/iwlwifi-ty-a0-gf-a0-62.ucode +lib/firmware/iwlwifi-ty-a0-gf-a0.pnvm #lib/firmware/kaweth lib/firmware/kaweth/new_code.bin lib/firmware/kaweth/new_code_fix.bin @@ -1128,10 +1324,14 @@ lib/firmware/liquidio/lio_210sv_nic.bin lib/firmware/liquidio/lio_23xx_nic.bin lib/firmware/liquidio/lio_23xx_vsw.bin lib/firmware/liquidio/lio_410nv_nic.bin +lib/firmware/lt9611uxc_fw.bin #lib/firmware/matrox lib/firmware/matrox/g200_warp.fw lib/firmware/matrox/g400_warp.fw #lib/firmware/mediatek +lib/firmware/mediatek/BT_RAM_CODE_MT7961_1_2_hdr.bin +lib/firmware/mediatek/WIFI_MT7961_patch_mcu_1_2_hdr.bin +lib/firmware/mediatek/WIFI_RAM_CODE_MT7961_1.bin lib/firmware/mediatek/mt7610e.bin lib/firmware/mediatek/mt7610u.bin lib/firmware/mediatek/mt7615_cr4.bin @@ -1167,8 +1367,32 @@ lib/firmware/mellanox/mlxsw_spectrum-13.2000.1122.mfa2 lib/firmware/mellanox/mlxsw_spectrum-13.2000.1886.mfa2 lib/firmware/mellanox/mlxsw_spectrum-13.2000.2308.mfa2 lib/firmware/mellanox/mlxsw_spectrum-13.2000.2714.mfa2 +lib/firmware/mellanox/mlxsw_spectrum-13.2007.1168.mfa2 +lib/firmware/mellanox/mlxsw_spectrum-13.2008.1036.mfa2 +lib/firmware/mellanox/mlxsw_spectrum-13.2008.1310.mfa2 +lib/firmware/mellanox/mlxsw_spectrum-13.2008.1312.mfa2 +lib/firmware/mellanox/mlxsw_spectrum-13.2008.2018.mfa2 +lib/firmware/mellanox/mlxsw_spectrum-13.2008.2304.mfa2 +lib/firmware/mellanox/mlxsw_spectrum-13.2008.2406.mfa2 +lib/firmware/mellanox/mlxsw_spectrum-13.2008.2438.mfa2 lib/firmware/mellanox/mlxsw_spectrum2-29.2000.2308.mfa2 lib/firmware/mellanox/mlxsw_spectrum2-29.2000.2714.mfa2 +lib/firmware/mellanox/mlxsw_spectrum2-29.2007.1168.mfa2 +lib/firmware/mellanox/mlxsw_spectrum2-29.2008.1036.mfa2 +lib/firmware/mellanox/mlxsw_spectrum2-29.2008.1310.mfa2 +lib/firmware/mellanox/mlxsw_spectrum2-29.2008.1312.mfa2 +lib/firmware/mellanox/mlxsw_spectrum2-29.2008.2018.mfa2 +lib/firmware/mellanox/mlxsw_spectrum2-29.2008.2304.mfa2 +lib/firmware/mellanox/mlxsw_spectrum2-29.2008.2406.mfa2 +lib/firmware/mellanox/mlxsw_spectrum2-29.2008.2438.mfa2 +lib/firmware/mellanox/mlxsw_spectrum3-30.2007.1168.mfa2 +lib/firmware/mellanox/mlxsw_spectrum3-30.2008.1036.mfa2 +lib/firmware/mellanox/mlxsw_spectrum3-30.2008.1310.mfa2 +lib/firmware/mellanox/mlxsw_spectrum3-30.2008.1312.mfa2 +lib/firmware/mellanox/mlxsw_spectrum3-30.2008.2018.mfa2 +lib/firmware/mellanox/mlxsw_spectrum3-30.2008.2304.mfa2 +lib/firmware/mellanox/mlxsw_spectrum3-30.2008.2406.mfa2 +lib/firmware/mellanox/mlxsw_spectrum3-30.2008.2438.mfa2 #lib/firmware/meson #lib/firmware/meson/vdec lib/firmware/meson/vdec/g12a_h264.bin @@ -1209,6 +1433,9 @@ lib/firmware/mrvl/pcie8897_uapsta.bin lib/firmware/mrvl/pcie8997_wlan_v4.bin lib/firmware/mrvl/pcieuart8997_combo_v4.bin lib/firmware/mrvl/pcieusb8997_combo_v4.bin +lib/firmware/mrvl/prestera +lib/firmware/mrvl/prestera/mvsw_prestera_fw-v2.0.img +lib/firmware/mrvl/prestera/mvsw_prestera_fw-v3.0.img lib/firmware/mrvl/sd8688.bin lib/firmware/mrvl/sd8688_helper.bin lib/firmware/mrvl/sd8787_uapsta.bin @@ -1630,6 +1857,7 @@ lib/firmware/nvidia/tegra186/vic.bin lib/firmware/nvidia/tegra186/vic04_ucode.bin lib/firmware/nvidia/tegra186/xusb.bin #lib/firmware/nvidia/tegra194 +lib/firmware/nvidia/tegra194/vic.bin lib/firmware/nvidia/tegra194/xusb.bin #lib/firmware/nvidia/tegra210 lib/firmware/nvidia/tegra210/vic.bin @@ -1790,6 +2018,7 @@ lib/firmware/qca/crbtfw21.tlv lib/firmware/qca/crbtfw32.tlv lib/firmware/qca/crnv21.bin lib/firmware/qca/crnv32.bin +lib/firmware/qca/crnv32u.bin lib/firmware/qca/htbtfw20.tlv lib/firmware/qca/htnv20.bin lib/firmware/qca/nvm_00130300.bin @@ -1823,6 +2052,10 @@ lib/firmware/qcom/a530_zap.mdt lib/firmware/qcom/a530v3_gpmu.fw2 lib/firmware/qcom/a630_gmu.bin lib/firmware/qcom/a630_sqe.fw +lib/firmware/qcom/a650_gmu.bin +lib/firmware/qcom/a650_sqe.fw +lib/firmware/qcom/a660_gmu.bin +lib/firmware/qcom/a660_sqe.fw #lib/firmware/qcom/sdm845 lib/firmware/qcom/sdm845/a630_zap.mbn lib/firmware/qcom/sdm845/adsp.mbn @@ -1834,6 +2067,13 @@ lib/firmware/qcom/sdm845/mba.mbn lib/firmware/qcom/sdm845/modem.mbn lib/firmware/qcom/sdm845/modemuw.jsn lib/firmware/qcom/sdm845/wlanmdsp.mbn +lib/firmware/qcom/sm8250 +lib/firmware/qcom/sm8250/a650_zap.mbn +lib/firmware/qcom/sm8250/adsp.mbn +lib/firmware/qcom/sm8250/adspr.jsn +lib/firmware/qcom/sm8250/adspua.jsn +lib/firmware/qcom/sm8250/cdsp.mbn +lib/firmware/qcom/sm8250/cdspr.jsn #lib/firmware/qcom/venus-1.8 lib/firmware/qcom/venus-1.8/venus.b00 lib/firmware/qcom/venus-1.8/venus.b01 @@ -1864,6 +2104,36 @@ lib/firmware/qcom/venus-5.4/venus.b03 lib/firmware/qcom/venus-5.4/venus.b04 lib/firmware/qcom/venus-5.4/venus.mbn lib/firmware/qcom/venus-5.4/venus.mdt +lib/firmware/qcom/vpu-1.0 +lib/firmware/qcom/vpu-1.0/venus.b00 +lib/firmware/qcom/vpu-1.0/venus.b01 +lib/firmware/qcom/vpu-1.0/venus.b02 +lib/firmware/qcom/vpu-1.0/venus.b03 +lib/firmware/qcom/vpu-1.0/venus.b04 +lib/firmware/qcom/vpu-1.0/venus.b05 +lib/firmware/qcom/vpu-1.0/venus.b06 +lib/firmware/qcom/vpu-1.0/venus.b07 +lib/firmware/qcom/vpu-1.0/venus.b08 +lib/firmware/qcom/vpu-1.0/venus.b09 +lib/firmware/qcom/vpu-1.0/venus.b10 +lib/firmware/qcom/vpu-1.0/venus.b19 +lib/firmware/qcom/vpu-1.0/venus.mbn +lib/firmware/qcom/vpu-1.0/venus.mdt +lib/firmware/qcom/vpu-2.0 +lib/firmware/qcom/vpu-2.0/venus.b00 +lib/firmware/qcom/vpu-2.0/venus.b01 +lib/firmware/qcom/vpu-2.0/venus.b02 +lib/firmware/qcom/vpu-2.0/venus.b03 +lib/firmware/qcom/vpu-2.0/venus.b04 +lib/firmware/qcom/vpu-2.0/venus.b05 +lib/firmware/qcom/vpu-2.0/venus.b06 +lib/firmware/qcom/vpu-2.0/venus.b07 +lib/firmware/qcom/vpu-2.0/venus.b08 +lib/firmware/qcom/vpu-2.0/venus.b09 +lib/firmware/qcom/vpu-2.0/venus.b10 +lib/firmware/qcom/vpu-2.0/venus.b19 +lib/firmware/qcom/vpu-2.0/venus.mbn +lib/firmware/qcom/vpu-2.0/venus.mdt #lib/firmware/qed lib/firmware/qed/qed_init_values-8.10.9.0.bin lib/firmware/qed/qed_init_values-8.14.6.0.bin @@ -2174,12 +2444,14 @@ lib/firmware/rtl_bt/rtl8192ee_fw.bin lib/firmware/rtl_bt/rtl8192eu_fw.bin lib/firmware/rtl_bt/rtl8723a_fw.bin lib/firmware/rtl_bt/rtl8723b_fw.bin +lib/firmware/rtl_bt/rtl8723bs_config-OBDA0623.bin lib/firmware/rtl_bt/rtl8723bs_config-OBDA8723.bin lib/firmware/rtl_bt/rtl8723bs_fw.bin lib/firmware/rtl_bt/rtl8723d_config.bin lib/firmware/rtl_bt/rtl8723d_fw.bin lib/firmware/rtl_bt/rtl8761a_fw.bin lib/firmware/rtl_bt/rtl8812ae_fw.bin +lib/firmware/rtl_bt/rtl8821a_config.bin lib/firmware/rtl_bt/rtl8821a_fw.bin lib/firmware/rtl_bt/rtl8821c_config.bin lib/firmware/rtl_bt/rtl8821c_fw.bin @@ -2189,6 +2461,8 @@ lib/firmware/rtl_bt/rtl8822cs_config.bin lib/firmware/rtl_bt/rtl8822cs_fw.bin lib/firmware/rtl_bt/rtl8822cu_config.bin lib/firmware/rtl_bt/rtl8822cu_fw.bin +lib/firmware/rtl_bt/rtl8852au_config.bin +lib/firmware/rtl_bt/rtl8852au_fw.bin #lib/firmware/rtl_nic lib/firmware/rtl_nic/rtl8105e-1.fw lib/firmware/rtl_nic/rtl8106e-1.fw @@ -2196,10 +2470,15 @@ lib/firmware/rtl_nic/rtl8106e-2.fw lib/firmware/rtl_nic/rtl8107e-1.fw lib/firmware/rtl_nic/rtl8107e-2.fw lib/firmware/rtl_nic/rtl8125a-3.fw +lib/firmware/rtl_nic/rtl8125b-1.fw +lib/firmware/rtl_nic/rtl8125b-2.fw lib/firmware/rtl_nic/rtl8153a-2.fw lib/firmware/rtl_nic/rtl8153a-3.fw lib/firmware/rtl_nic/rtl8153a-4.fw lib/firmware/rtl_nic/rtl8153b-2.fw +lib/firmware/rtl_nic/rtl8153c-1.fw +lib/firmware/rtl_nic/rtl8156a-2.fw +lib/firmware/rtl_nic/rtl8156b-2.fw lib/firmware/rtl_nic/rtl8168d-1.fw lib/firmware/rtl_nic/rtl8168d-2.fw lib/firmware/rtl_nic/rtl8168e-1.fw @@ -2261,6 +2540,8 @@ lib/firmware/rtw88/rtw8821c_fw.bin lib/firmware/rtw88/rtw8822b_fw.bin lib/firmware/rtw88/rtw8822c_fw.bin lib/firmware/rtw88/rtw8822c_wow_fw.bin +lib/firmware/rtw89 +lib/firmware/rtw89/rtw8852a_fw.bin lib/firmware/s2250.fw lib/firmware/s2250_loader.fw lib/firmware/s5p-mfc-v6-v2.fw @@ -2275,6 +2556,8 @@ lib/firmware/sb16/ima_adpcm_init.csp lib/firmware/sb16/ima_adpcm_playback.csp lib/firmware/sb16/mulaw_main.csp lib/firmware/sdd_sagrad_1091_1098.bin +lib/firmware/silabs +lib/firmware/silabs/wfm_wf200_C0.sec #lib/firmware/slicoss lib/firmware/slicoss/gbdownload.sys lib/firmware/slicoss/gbrcvucode.sys @@ -2294,6 +2577,7 @@ lib/firmware/sxg/saharadownloadB.sys lib/firmware/tdmb_nova_12mhz.inp #lib/firmware/tehuti lib/firmware/tehuti/bdx.bin +lib/firmware/ti #lib/firmware/ti-connectivity lib/firmware/ti-connectivity/TIInit_6.2.31.bts lib/firmware/ti-connectivity/TIInit_6.6.15.bts @@ -2331,6 +2615,7 @@ lib/firmware/ti-connectivity/wl18xx-fw-4.bin lib/firmware/ti-connectivity/wl18xx-fw.bin #lib/firmware/ti-keystone lib/firmware/ti-keystone/ks2_qmss_pdsp_acc48_k2_le_1_0_0_9.bin +lib/firmware/ti/vpdma-1b8.bin lib/firmware/ti_3410.fw lib/firmware/ti_5052.fw #lib/firmware/tigon diff --git a/config/rootfiles/common/nettle b/config/rootfiles/common/nettle index 591e860c2..cf1165e80 100644 --- a/config/rootfiles/common/nettle +++ b/config/rootfiles/common/nettle @@ -72,9 +72,9 @@ #usr/include/nettle/yarrow.h usr/lib/libhogweed.so usr/lib/libhogweed.so.6 -usr/lib/libhogweed.so.6.3 +usr/lib/libhogweed.so.6.4 #usr/lib/libnettle.so usr/lib/libnettle.so.8 -usr/lib/libnettle.so.8.3 +usr/lib/libnettle.so.8.4 #usr/lib/pkgconfig/hogweed.pc #usr/lib/pkgconfig/nettle.pc diff --git a/config/rootfiles/common/pcre2 b/config/rootfiles/common/pcre2 index 440af7b0d..e5b02d1f7 100644 --- a/config/rootfiles/common/pcre2 +++ b/config/rootfiles/common/pcre2 @@ -6,132 +6,132 @@ #usr/lib/libpcre2-16.la #usr/lib/libpcre2-16.so usr/lib/libpcre2-16.so.0 -usr/lib/libpcre2-16.so.0.10.1 +usr/lib/libpcre2-16.so.0.10.2 #usr/lib/libpcre2-32.la #usr/lib/libpcre2-32.so usr/lib/libpcre2-32.so.0 -usr/lib/libpcre2-32.so.0.10.1 +usr/lib/libpcre2-32.so.0.10.2 #usr/lib/libpcre2-8.la #usr/lib/libpcre2-8.so usr/lib/libpcre2-8.so.0 -usr/lib/libpcre2-8.so.0.10.1 +usr/lib/libpcre2-8.so.0.10.2 #usr/lib/libpcre2-posix.la #usr/lib/libpcre2-posix.so -usr/lib/libpcre2-posix.so.2 -usr/lib/libpcre2-posix.so.2.0.3 +usr/lib/libpcre2-posix.so.3 +usr/lib/libpcre2-posix.so.3.0.0 #usr/lib/pkgconfig/libpcre2-16.pc #usr/lib/pkgconfig/libpcre2-32.pc #usr/lib/pkgconfig/libpcre2-8.pc #usr/lib/pkgconfig/libpcre2-posix.pc -#usr/share/doc/pcre-pcre2-10.36 -#usr/share/doc/pcre-pcre2-10.36/AUTHORS -#usr/share/doc/pcre-pcre2-10.36/COPYING -#usr/share/doc/pcre-pcre2-10.36/ChangeLog -#usr/share/doc/pcre-pcre2-10.36/LICENCE -#usr/share/doc/pcre-pcre2-10.36/NEWS -#usr/share/doc/pcre-pcre2-10.36/README -#usr/share/doc/pcre-pcre2-10.36/html -#usr/share/doc/pcre-pcre2-10.36/html/NON-AUTOTOOLS-BUILD.txt -#usr/share/doc/pcre-pcre2-10.36/html/README.txt -#usr/share/doc/pcre-pcre2-10.36/html/index.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2-config.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_callout_enumerate.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_code_copy.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_code_copy_with_tables.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_code_free.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_compile.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_compile_context_copy.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_compile_context_create.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_compile_context_free.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_config.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_convert_context_copy.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_convert_context_create.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_convert_context_free.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_converted_pattern_free.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_dfa_match.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_general_context_copy.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_general_context_create.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_general_context_free.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_get_error_message.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_get_mark.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_get_match_data_size.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_get_ovector_count.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_get_ovector_pointer.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_get_startchar.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_jit_compile.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_jit_free_unused_memory.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_jit_match.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_jit_stack_assign.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_jit_stack_create.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_jit_stack_free.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_maketables.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_maketables_free.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_match.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_match_context_copy.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_match_context_create.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_match_context_free.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_match_data_create.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_match_data_create_from_pattern.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_match_data_free.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_pattern_convert.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_pattern_info.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_serialize_decode.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_serialize_encode.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_serialize_free.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_serialize_get_number_of_codes.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_set_bsr.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_set_callout.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_set_character_tables.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_set_compile_extra_options.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_set_compile_recursion_guard.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_set_depth_limit.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_set_glob_escape.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_set_glob_separator.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_set_heap_limit.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_set_match_limit.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_set_max_pattern_length.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_set_newline.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_set_offset_limit.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_set_parens_nest_limit.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_set_recursion_limit.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_set_recursion_memory_management.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_set_substitute_callout.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_substitute.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_substring_copy_byname.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_substring_copy_bynumber.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_substring_free.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_substring_get_byname.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_substring_get_bynumber.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_substring_length_byname.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_substring_length_bynumber.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_substring_list_free.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_substring_list_get.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_substring_nametable_scan.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2_substring_number_from_name.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2api.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2build.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2callout.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2compat.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2convert.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2demo.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2grep.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2jit.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2limits.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2matching.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2partial.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2pattern.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2perform.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2posix.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2sample.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2serialize.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2syntax.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2test.html -#usr/share/doc/pcre-pcre2-10.36/html/pcre2unicode.html -#usr/share/doc/pcre-pcre2-10.36/pcre2-config.txt -#usr/share/doc/pcre-pcre2-10.36/pcre2.txt -#usr/share/doc/pcre-pcre2-10.36/pcre2grep.txt -#usr/share/doc/pcre-pcre2-10.36/pcre2test.txt +#usr/share/doc/pcre-pcre2-10.37 +#usr/share/doc/pcre-pcre2-10.37/AUTHORS +#usr/share/doc/pcre-pcre2-10.37/COPYING +#usr/share/doc/pcre-pcre2-10.37/ChangeLog +#usr/share/doc/pcre-pcre2-10.37/LICENCE +#usr/share/doc/pcre-pcre2-10.37/NEWS +#usr/share/doc/pcre-pcre2-10.37/README +#usr/share/doc/pcre-pcre2-10.37/html +#usr/share/doc/pcre-pcre2-10.37/html/NON-AUTOTOOLS-BUILD.txt +#usr/share/doc/pcre-pcre2-10.37/html/README.txt +#usr/share/doc/pcre-pcre2-10.37/html/index.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2-config.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_callout_enumerate.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_code_copy.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_code_copy_with_tables.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_code_free.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_compile.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_compile_context_copy.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_compile_context_create.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_compile_context_free.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_config.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_convert_context_copy.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_convert_context_create.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_convert_context_free.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_converted_pattern_free.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_dfa_match.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_general_context_copy.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_general_context_create.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_general_context_free.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_get_error_message.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_get_mark.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_get_match_data_size.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_get_ovector_count.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_get_ovector_pointer.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_get_startchar.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_jit_compile.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_jit_free_unused_memory.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_jit_match.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_jit_stack_assign.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_jit_stack_create.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_jit_stack_free.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_maketables.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_maketables_free.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_match.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_match_context_copy.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_match_context_create.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_match_context_free.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_match_data_create.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_match_data_create_from_pattern.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_match_data_free.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_pattern_convert.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_pattern_info.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_serialize_decode.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_serialize_encode.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_serialize_free.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_serialize_get_number_of_codes.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_set_bsr.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_set_callout.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_set_character_tables.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_set_compile_extra_options.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_set_compile_recursion_guard.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_set_depth_limit.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_set_glob_escape.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_set_glob_separator.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_set_heap_limit.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_set_match_limit.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_set_max_pattern_length.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_set_newline.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_set_offset_limit.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_set_parens_nest_limit.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_set_recursion_limit.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_set_recursion_memory_management.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_set_substitute_callout.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_substitute.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_substring_copy_byname.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_substring_copy_bynumber.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_substring_free.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_substring_get_byname.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_substring_get_bynumber.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_substring_length_byname.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_substring_length_bynumber.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_substring_list_free.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_substring_list_get.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_substring_nametable_scan.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2_substring_number_from_name.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2api.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2build.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2callout.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2compat.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2convert.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2demo.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2grep.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2jit.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2limits.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2matching.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2partial.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2pattern.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2perform.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2posix.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2sample.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2serialize.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2syntax.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2test.html +#usr/share/doc/pcre-pcre2-10.37/html/pcre2unicode.html +#usr/share/doc/pcre-pcre2-10.37/pcre2-config.txt +#usr/share/doc/pcre-pcre2-10.37/pcre2.txt +#usr/share/doc/pcre-pcre2-10.37/pcre2grep.txt +#usr/share/doc/pcre-pcre2-10.37/pcre2test.txt #usr/share/man/man1/pcre2-config.1 #usr/share/man/man1/pcre2grep.1 #usr/share/man/man1/pcre2test.1 diff --git a/config/rootfiles/common/perl-Data-UUID b/config/rootfiles/common/perl-Data-UUID new file mode 100644 index 000000000..d8edcd35c --- /dev/null +++ b/config/rootfiles/common/perl-Data-UUID @@ -0,0 +1,7 @@ +#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/Data +usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/Data/UUID.pm +#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/Data +#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/Data/UUID +#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/Data/UUID/.packlist +usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/Data/UUID/UUID.so +#usr/share/man/man3/Data::UUID.3 diff --git a/config/rootfiles/common/python-pyparsing b/config/rootfiles/common/python-pyparsing deleted file mode 100644 index 9babda975..000000000 --- a/config/rootfiles/common/python-pyparsing +++ /dev/null @@ -1 +0,0 @@ -#usr/lib/python2.7/site-packages/pyparsing-2.2.0-py2.7.egg diff --git a/config/rootfiles/common/qpdf b/config/rootfiles/common/qpdf index 56d1e4ba0..dddf593bd 100644 --- a/config/rootfiles/common/qpdf +++ b/config/rootfiles/common/qpdf @@ -58,7 +58,7 @@ usr/bin/qpdf #usr/lib/libqpdf.la #usr/lib/libqpdf.so usr/lib/libqpdf.so.28 -usr/lib/libqpdf.so.28.3.0 +usr/lib/libqpdf.so.28.3.2 #usr/lib/pkgconfig/libqpdf.pc #usr/share/doc/qpdf #usr/share/doc/qpdf/qpdf-manual.html diff --git a/config/rootfiles/common/web-user-interface b/config/rootfiles/common/web-user-interface index 4d9f7b52f..452d6543a 100644 --- a/config/rootfiles/common/web-user-interface +++ b/config/rootfiles/common/web-user-interface @@ -110,6 +110,7 @@ srv/web/ipfire/html/images/add.gif srv/web/ipfire/html/images/addblue.gif srv/web/ipfire/html/images/addgreen.gif srv/web/ipfire/html/images/address-book-new.png +srv/web/ipfire/html/images/apple.png srv/web/ipfire/html/images/application-certificate.png srv/web/ipfire/html/images/application-x-executable.png srv/web/ipfire/html/images/applications-accessories.png diff --git a/config/rootfiles/common/x86_64/dmidecode b/config/rootfiles/common/x86_64/dmidecode index 888395856..5b2ba45ed 100644 --- a/config/rootfiles/common/x86_64/dmidecode +++ b/config/rootfiles/common/x86_64/dmidecode @@ -5,6 +5,7 @@ usr/sbin/vpddecode #usr/share/doc/dmidecode #usr/share/doc/dmidecode/AUTHORS #usr/share/doc/dmidecode/CHANGELOG +#usr/share/doc/dmidecode/NEWS #usr/share/doc/dmidecode/README #usr/share/man/man8/biosdecode.8 #usr/share/man/man8/dmidecode.8 diff --git a/config/rootfiles/common/x86_64/initscripts b/config/rootfiles/common/x86_64/initscripts index 18c5a897a..dba397e73 100644 --- a/config/rootfiles/common/x86_64/initscripts +++ b/config/rootfiles/common/x86_64/initscripts @@ -46,14 +46,12 @@ etc/rc.d/init.d/networking/orange etc/rc.d/init.d/networking/red #etc/rc.d/init.d/networking/red.down etc/rc.d/init.d/networking/red.down/10-ipsec -etc/rc.d/init.d/networking/red.down/10-miniupnpd etc/rc.d/init.d/networking/red.down/10-ovpn etc/rc.d/init.d/networking/red.down/10-static-routes etc/rc.d/init.d/networking/red.down/20-firewall etc/rc.d/init.d/networking/red.down/99-beep #etc/rc.d/init.d/networking/red.up etc/rc.d/init.d/networking/red.up/01-conntrack-cleanup -etc/rc.d/init.d/networking/red.up/10-miniupnpd etc/rc.d/init.d/networking/red.up/10-multicast etc/rc.d/init.d/networking/red.up/10-static-routes etc/rc.d/init.d/networking/red.up/20-firewall @@ -92,7 +90,6 @@ etc/rc.d/init.d/template etc/rc.d/init.d/udev etc/rc.d/init.d/udev_retry etc/rc.d/init.d/unbound -etc/rc.d/init.d/upnpd etc/rc.d/init.d/vnstat etc/rc.d/init.d/waitdrives etc/rc.d/init.d/wlanclient @@ -113,7 +110,6 @@ etc/rc.d/rc0.d/K78suricata etc/rc.d/rc0.d/K79leds etc/rc.d/rc0.d/K80network etc/rc.d/rc0.d/K82wlanclient -#etc/rc.d/rc0.d/K84bluetooth #etc/rc.d/rc0.d/K85messagebus etc/rc.d/rc0.d/K86unbound etc/rc.d/rc0.d/K87acpid @@ -129,7 +125,6 @@ etc/rc.d/rc3.d/S10sysklogd etc/rc.d/rc3.d/S12acpid etc/rc.d/rc3.d/S15fireinfo #etc/rc.d/rc3.d/S15messagebus -#etc/rc.d/rc3.d/S16bluetooth #etc/rc.d/rc3.d/S18cpufreq etc/rc.d/rc3.d/S19smartenabler etc/rc.d/rc3.d/S19wlanclient @@ -164,7 +159,6 @@ etc/rc.d/rc6.d/K78suricata etc/rc.d/rc6.d/K79leds etc/rc.d/rc6.d/K80network etc/rc.d/rc6.d/K82wlanclient -#etc/rc.d/rc6.d/K84bluetooth #etc/rc.d/rc6.d/K85messagebus etc/rc.d/rc6.d/K86unbound etc/rc.d/rc6.d/K87acpid diff --git a/config/rootfiles/common/x86_64/intel-microcode b/config/rootfiles/common/x86_64/intel-microcode index ee43ff015..962590af5 100644 --- a/config/rootfiles/common/x86_64/intel-microcode +++ b/config/rootfiles/common/x86_64/intel-microcode @@ -67,6 +67,7 @@ lib/firmware/intel-ucode/06-4d-08 lib/firmware/intel-ucode/06-4e-03 lib/firmware/intel-ucode/06-55-03 lib/firmware/intel-ucode/06-55-04 +lib/firmware/intel-ucode/06-55-05 lib/firmware/intel-ucode/06-55-06 lib/firmware/intel-ucode/06-55-07 lib/firmware/intel-ucode/06-55-0b @@ -80,14 +81,23 @@ lib/firmware/intel-ucode/06-5c-0a lib/firmware/intel-ucode/06-5e-03 lib/firmware/intel-ucode/06-5f-01 lib/firmware/intel-ucode/06-66-03 +lib/firmware/intel-ucode/06-6a-05 +lib/firmware/intel-ucode/06-6a-06 lib/firmware/intel-ucode/06-7a-01 lib/firmware/intel-ucode/06-7a-08 lib/firmware/intel-ucode/06-7e-05 +lib/firmware/intel-ucode/06-86-04 +lib/firmware/intel-ucode/06-86-05 lib/firmware/intel-ucode/06-8a-01 +lib/firmware/intel-ucode/06-8c-01 +lib/firmware/intel-ucode/06-8c-02 +lib/firmware/intel-ucode/06-8d-01 lib/firmware/intel-ucode/06-8e-09 lib/firmware/intel-ucode/06-8e-0a lib/firmware/intel-ucode/06-8e-0b lib/firmware/intel-ucode/06-8e-0c +lib/firmware/intel-ucode/06-96-01 +lib/firmware/intel-ucode/06-9c-00 lib/firmware/intel-ucode/06-9e-09 lib/firmware/intel-ucode/06-9e-0a lib/firmware/intel-ucode/06-9e-0b @@ -98,6 +108,7 @@ lib/firmware/intel-ucode/06-a5-03 lib/firmware/intel-ucode/06-a5-05 lib/firmware/intel-ucode/06-a6-00 lib/firmware/intel-ucode/06-a6-01 +lib/firmware/intel-ucode/06-a7-01 lib/firmware/intel-ucode/0f-00-07 lib/firmware/intel-ucode/0f-00-0a lib/firmware/intel-ucode/0f-01-02 diff --git a/config/rootfiles/common/zstd b/config/rootfiles/common/zstd index 923192f0f..83e11e4c8 100644 --- a/config/rootfiles/common/zstd +++ b/config/rootfiles/common/zstd @@ -10,7 +10,7 @@ usr/bin/zstdmt #usr/lib/libzstd.a #usr/lib/libzstd.so usr/lib/libzstd.so.1 -usr/lib/libzstd.so.1.4.9 +usr/lib/libzstd.so.1.5.0 #usr/lib/pkgconfig/libzstd.pc #usr/share/man/man1/unzstd.1 #usr/share/man/man1/zstd.1 diff --git a/config/rootfiles/core/157/exclude b/config/rootfiles/core/158/exclude similarity index 100% rename from config/rootfiles/core/157/exclude rename to config/rootfiles/core/158/exclude diff --git a/config/rootfiles/core/158/filelists/XML-Parser b/config/rootfiles/core/158/filelists/XML-Parser new file mode 120000 index 000000000..4f5be1a8c --- /dev/null +++ b/config/rootfiles/core/158/filelists/XML-Parser @@ -0,0 +1 @@ +../../../common/XML-Parser \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/apache2 b/config/rootfiles/core/158/filelists/apache2 similarity index 100% rename from config/rootfiles/core/157/filelists/apache2 rename to config/rootfiles/core/158/filelists/apache2 diff --git a/config/rootfiles/core/157/filelists/armv5tel/boost b/config/rootfiles/core/158/filelists/armv5tel/boost similarity index 100% rename from config/rootfiles/core/157/filelists/armv5tel/boost rename to config/rootfiles/core/158/filelists/armv5tel/boost diff --git a/config/rootfiles/core/157/filelists/backup b/config/rootfiles/core/158/filelists/backup similarity index 100% rename from config/rootfiles/core/157/filelists/backup rename to config/rootfiles/core/158/filelists/backup diff --git a/config/rootfiles/core/158/filelists/bind b/config/rootfiles/core/158/filelists/bind new file mode 120000 index 000000000..48a0ebaef --- /dev/null +++ b/config/rootfiles/core/158/filelists/bind @@ -0,0 +1 @@ +../../../common/bind \ No newline at end of file diff --git a/config/rootfiles/core/158/filelists/ca-certificates b/config/rootfiles/core/158/filelists/ca-certificates new file mode 120000 index 000000000..320fea8f4 --- /dev/null +++ b/config/rootfiles/core/158/filelists/ca-certificates @@ -0,0 +1 @@ +../../../common/ca-certificates \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/curl b/config/rootfiles/core/158/filelists/curl similarity index 100% rename from config/rootfiles/core/157/filelists/curl rename to config/rootfiles/core/158/filelists/curl diff --git a/config/rootfiles/core/158/filelists/ethtool b/config/rootfiles/core/158/filelists/ethtool new file mode 120000 index 000000000..494a53e9d --- /dev/null +++ b/config/rootfiles/core/158/filelists/ethtool @@ -0,0 +1 @@ +../../../common/ethtool \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/expat b/config/rootfiles/core/158/filelists/expat similarity index 100% rename from config/rootfiles/core/157/filelists/expat rename to config/rootfiles/core/158/filelists/expat diff --git a/config/rootfiles/core/158/filelists/files b/config/rootfiles/core/158/filelists/files new file mode 100644 index 000000000..903ae9450 --- /dev/null +++ b/config/rootfiles/core/158/filelists/files @@ -0,0 +1,14 @@ +etc/rc.d/init.d/firewall +etc/ssh/sshd_config +opt/pakfire/lib/functions.pl +opt/pakfire/pakfire +usr/lib/firewall/ipsec-policy +var/ipfire/backup/bin/backup.pl +var/ipfire/countries.pl +var/ipfire/general-functions.pl +var/ipfire/graphs.pl +var/ipfire/header.pl +var/ipfire/ids-functions.pl +var/ipfire/lang.pl +var/ipfire/location-functions.pl +var/ipfire/modem-lib.pl diff --git a/config/rootfiles/core/158/filelists/fireinfo b/config/rootfiles/core/158/filelists/fireinfo new file mode 120000 index 000000000..c46115521 --- /dev/null +++ b/config/rootfiles/core/158/filelists/fireinfo @@ -0,0 +1 @@ +../../../common/fireinfo \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/fuse b/config/rootfiles/core/158/filelists/fuse similarity index 100% rename from config/rootfiles/core/157/filelists/fuse rename to config/rootfiles/core/158/filelists/fuse diff --git a/config/rootfiles/core/157/filelists/glib b/config/rootfiles/core/158/filelists/glib similarity index 100% rename from config/rootfiles/core/157/filelists/glib rename to config/rootfiles/core/158/filelists/glib diff --git a/config/rootfiles/core/158/filelists/gnutls b/config/rootfiles/core/158/filelists/gnutls new file mode 120000 index 000000000..8dbe60bc3 --- /dev/null +++ b/config/rootfiles/core/158/filelists/gnutls @@ -0,0 +1 @@ +../../../common/gnutls \ No newline at end of file diff --git a/config/rootfiles/core/158/filelists/gzip b/config/rootfiles/core/158/filelists/gzip new file mode 120000 index 000000000..aebcccd87 --- /dev/null +++ b/config/rootfiles/core/158/filelists/gzip @@ -0,0 +1 @@ +../../../common/gzip \ No newline at end of file diff --git a/config/rootfiles/core/158/filelists/hwdata b/config/rootfiles/core/158/filelists/hwdata new file mode 120000 index 000000000..ced911666 --- /dev/null +++ b/config/rootfiles/core/158/filelists/hwdata @@ -0,0 +1 @@ +../../../common/hwdata \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/i586/boost b/config/rootfiles/core/158/filelists/i586/boost similarity index 100% rename from config/rootfiles/core/157/filelists/i586/boost rename to config/rootfiles/core/158/filelists/i586/boost diff --git a/config/rootfiles/core/158/filelists/i586/dmidecode b/config/rootfiles/core/158/filelists/i586/dmidecode new file mode 120000 index 000000000..1add99b08 --- /dev/null +++ b/config/rootfiles/core/158/filelists/i586/dmidecode @@ -0,0 +1 @@ +../../../../common/i586/dmidecode \ No newline at end of file diff --git a/config/rootfiles/core/158/filelists/i586/intel-microcode b/config/rootfiles/core/158/filelists/i586/intel-microcode new file mode 120000 index 000000000..f03e84778 --- /dev/null +++ b/config/rootfiles/core/158/filelists/i586/intel-microcode @@ -0,0 +1 @@ +../../../../common/i586/intel-microcode \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/iputils b/config/rootfiles/core/158/filelists/iputils similarity index 100% rename from config/rootfiles/core/157/filelists/iputils rename to config/rootfiles/core/158/filelists/iputils diff --git a/config/rootfiles/core/158/filelists/knot b/config/rootfiles/core/158/filelists/knot new file mode 120000 index 000000000..28e96f878 --- /dev/null +++ b/config/rootfiles/core/158/filelists/knot @@ -0,0 +1 @@ +../../../common/knot \ No newline at end of file diff --git a/config/rootfiles/core/158/filelists/libcap b/config/rootfiles/core/158/filelists/libcap new file mode 120000 index 000000000..ed67d950a --- /dev/null +++ b/config/rootfiles/core/158/filelists/libcap @@ -0,0 +1 @@ +../../../common/libcap \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/libedit b/config/rootfiles/core/158/filelists/libedit similarity index 100% rename from config/rootfiles/core/157/filelists/libedit rename to config/rootfiles/core/158/filelists/libedit diff --git a/config/rootfiles/core/158/filelists/libnl-3 b/config/rootfiles/core/158/filelists/libnl-3 new file mode 120000 index 000000000..00e61c261 --- /dev/null +++ b/config/rootfiles/core/158/filelists/libnl-3 @@ -0,0 +1 @@ +../../../common/libnl-3 \ No newline at end of file diff --git a/config/rootfiles/core/158/filelists/libpcap b/config/rootfiles/core/158/filelists/libpcap new file mode 120000 index 000000000..c7f9f52a8 --- /dev/null +++ b/config/rootfiles/core/158/filelists/libpcap @@ -0,0 +1 @@ +../../../common/libpcap \ No newline at end of file diff --git a/config/rootfiles/core/158/filelists/libusb b/config/rootfiles/core/158/filelists/libusb new file mode 120000 index 000000000..edbe8c215 --- /dev/null +++ b/config/rootfiles/core/158/filelists/libusb @@ -0,0 +1 @@ +../../../common/libusb \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/libxcrypt b/config/rootfiles/core/158/filelists/libxcrypt similarity index 100% rename from config/rootfiles/core/157/filelists/libxcrypt rename to config/rootfiles/core/158/filelists/libxcrypt diff --git a/config/rootfiles/core/158/filelists/linux-firmware b/config/rootfiles/core/158/filelists/linux-firmware new file mode 100644 index 000000000..38e9ded40 --- /dev/null +++ b/config/rootfiles/core/158/filelists/linux-firmware @@ -0,0 +1,410 @@ +/lib/firmware/amd/amd_sev_fam17h_model0xh.sbin +/lib/firmware/amd/amd_sev_fam17h_model3xh.sbin +/lib/firmware/amdgpu/arcturus_asd.bin +/lib/firmware/amdgpu/arcturus_gpu_info.bin +/lib/firmware/amdgpu/arcturus_mec2.bin +/lib/firmware/amdgpu/arcturus_mec.bin +/lib/firmware/amdgpu/arcturus_rlc.bin +/lib/firmware/amdgpu/arcturus_sdma.bin +/lib/firmware/amdgpu/arcturus_smc.bin +/lib/firmware/amdgpu/arcturus_sos.bin +/lib/firmware/amdgpu/arcturus_ta.bin +/lib/firmware/amdgpu/arcturus_vcn.bin +/lib/firmware/amdgpu/green_sardine_asd.bin +/lib/firmware/amdgpu/green_sardine_ce.bin +/lib/firmware/amdgpu/green_sardine_dmcub.bin +/lib/firmware/amdgpu/green_sardine_me.bin +/lib/firmware/amdgpu/green_sardine_mec2.bin +/lib/firmware/amdgpu/green_sardine_mec.bin +/lib/firmware/amdgpu/green_sardine_pfp.bin +/lib/firmware/amdgpu/green_sardine_rlc.bin +/lib/firmware/amdgpu/green_sardine_sdma.bin +/lib/firmware/amdgpu/green_sardine_ta.bin +/lib/firmware/amdgpu/green_sardine_vcn.bin +/lib/firmware/amdgpu/navi10_asd.bin +/lib/firmware/amdgpu/navi10_ce.bin +/lib/firmware/amdgpu/navi10_me.bin +/lib/firmware/amdgpu/navi10_mec2.bin +/lib/firmware/amdgpu/navi10_mec.bin +/lib/firmware/amdgpu/navi10_pfp.bin +/lib/firmware/amdgpu/navi10_rlc.bin +/lib/firmware/amdgpu/navi10_sdma1.bin +/lib/firmware/amdgpu/navi10_sdma.bin +/lib/firmware/amdgpu/navi10_smc.bin +/lib/firmware/amdgpu/navi10_sos.bin +/lib/firmware/amdgpu/navi10_ta.bin +/lib/firmware/amdgpu/navi10_vcn.bin +/lib/firmware/amdgpu/navi12_asd.bin +/lib/firmware/amdgpu/navi12_ce.bin +/lib/firmware/amdgpu/navi12_dmcu.bin +/lib/firmware/amdgpu/navi12_gpu_info.bin +/lib/firmware/amdgpu/navi12_me.bin +/lib/firmware/amdgpu/navi12_mec2.bin +/lib/firmware/amdgpu/navi12_mec.bin +/lib/firmware/amdgpu/navi12_pfp.bin +/lib/firmware/amdgpu/navi12_rlc.bin +/lib/firmware/amdgpu/navi12_sdma1.bin +/lib/firmware/amdgpu/navi12_sdma.bin +/lib/firmware/amdgpu/navi12_smc.bin +/lib/firmware/amdgpu/navi12_sos.bin +/lib/firmware/amdgpu/navi12_ta.bin +/lib/firmware/amdgpu/navi12_vcn.bin +/lib/firmware/amdgpu/navi14_asd.bin +/lib/firmware/amdgpu/navi14_ce.bin +/lib/firmware/amdgpu/navi14_me.bin +/lib/firmware/amdgpu/navi14_mec2.bin +/lib/firmware/amdgpu/navi14_mec.bin +/lib/firmware/amdgpu/navi14_pfp.bin +/lib/firmware/amdgpu/navi14_rlc.bin +/lib/firmware/amdgpu/navi14_sdma1.bin +/lib/firmware/amdgpu/navi14_sdma.bin +/lib/firmware/amdgpu/navi14_smc.bin +/lib/firmware/amdgpu/navi14_sos.bin +/lib/firmware/amdgpu/navi14_ta.bin +/lib/firmware/amdgpu/navi14_vcn.bin +/lib/firmware/amdgpu/navy_flounder_ce.bin +/lib/firmware/amdgpu/navy_flounder_dmcub.bin +/lib/firmware/amdgpu/navy_flounder_me.bin +/lib/firmware/amdgpu/navy_flounder_mec2.bin +/lib/firmware/amdgpu/navy_flounder_mec.bin +/lib/firmware/amdgpu/navy_flounder_pfp.bin +/lib/firmware/amdgpu/navy_flounder_rlc.bin +/lib/firmware/amdgpu/navy_flounder_sdma.bin +/lib/firmware/amdgpu/navy_flounder_smc.bin +/lib/firmware/amdgpu/navy_flounder_sos.bin +/lib/firmware/amdgpu/navy_flounder_ta.bin +/lib/firmware/amdgpu/navy_flounder_vcn.bin +/lib/firmware/amdgpu/oland_uvd.bin +/lib/firmware/amdgpu/picasso_asd.bin +/lib/firmware/amdgpu/picasso_ce.bin +/lib/firmware/amdgpu/picasso_me.bin +/lib/firmware/amdgpu/picasso_mec2.bin +/lib/firmware/amdgpu/picasso_mec.bin +/lib/firmware/amdgpu/picasso_pfp.bin +/lib/firmware/amdgpu/picasso_rlc.bin +/lib/firmware/amdgpu/picasso_sdma.bin +/lib/firmware/amdgpu/picasso_ta.bin +/lib/firmware/amdgpu/picasso_vcn.bin +/lib/firmware/amdgpu/pitcairn_uvd.bin +/lib/firmware/amdgpu/polaris12_32_mc.bin +/lib/firmware/amdgpu/raven2_asd.bin +/lib/firmware/amdgpu/raven2_ce.bin +/lib/firmware/amdgpu/raven2_me.bin +/lib/firmware/amdgpu/raven2_mec2.bin +/lib/firmware/amdgpu/raven2_mec.bin +/lib/firmware/amdgpu/raven2_pfp.bin +/lib/firmware/amdgpu/raven2_sdma.bin +/lib/firmware/amdgpu/raven2_ta.bin +/lib/firmware/amdgpu/raven2_vcn.bin +/lib/firmware/amdgpu/raven_asd.bin +/lib/firmware/amdgpu/raven_ce.bin +/lib/firmware/amdgpu/raven_me.bin +/lib/firmware/amdgpu/raven_mec2.bin +/lib/firmware/amdgpu/raven_mec.bin +/lib/firmware/amdgpu/raven_pfp.bin +/lib/firmware/amdgpu/raven_sdma.bin +/lib/firmware/amdgpu/raven_ta.bin +/lib/firmware/amdgpu/raven_vcn.bin +/lib/firmware/amdgpu/renoir_asd.bin +/lib/firmware/amdgpu/renoir_ce.bin +/lib/firmware/amdgpu/renoir_dmcub.bin +/lib/firmware/amdgpu/renoir_me.bin +/lib/firmware/amdgpu/renoir_mec2.bin +/lib/firmware/amdgpu/renoir_mec.bin +/lib/firmware/amdgpu/renoir_pfp.bin +/lib/firmware/amdgpu/renoir_rlc.bin +/lib/firmware/amdgpu/renoir_sdma.bin +/lib/firmware/amdgpu/renoir_ta.bin +/lib/firmware/amdgpu/sienna_cichlid_ce.bin +/lib/firmware/amdgpu/sienna_cichlid_dmcub.bin +/lib/firmware/amdgpu/sienna_cichlid_me.bin +/lib/firmware/amdgpu/sienna_cichlid_mec2.bin +/lib/firmware/amdgpu/sienna_cichlid_mec.bin +/lib/firmware/amdgpu/sienna_cichlid_pfp.bin +/lib/firmware/amdgpu/sienna_cichlid_rlc.bin +/lib/firmware/amdgpu/sienna_cichlid_sdma.bin +/lib/firmware/amdgpu/sienna_cichlid_smc.bin +/lib/firmware/amdgpu/sienna_cichlid_sos.bin +/lib/firmware/amdgpu/sienna_cichlid_ta.bin +/lib/firmware/amdgpu/sienna_cichlid_vcn.bin +/lib/firmware/amdgpu/tahiti_uvd.bin +/lib/firmware/amdgpu/vega10_asd.bin +/lib/firmware/amdgpu/vega10_ce.bin +/lib/firmware/amdgpu/vega10_me.bin +/lib/firmware/amdgpu/vega10_mec2.bin +/lib/firmware/amdgpu/vega10_mec.bin +/lib/firmware/amdgpu/vega10_pfp.bin +/lib/firmware/amdgpu/vega12_asd.bin +/lib/firmware/amdgpu/vega12_ce.bin +/lib/firmware/amdgpu/vega12_me.bin +/lib/firmware/amdgpu/vega12_mec2.bin +/lib/firmware/amdgpu/vega12_mec.bin +/lib/firmware/amdgpu/vega12_pfp.bin +/lib/firmware/amdgpu/vega12_smc.bin +/lib/firmware/amdgpu/vega20_asd.bin +/lib/firmware/amdgpu/vega20_ce.bin +/lib/firmware/amdgpu/vega20_me.bin +/lib/firmware/amdgpu/vega20_mec2.bin +/lib/firmware/amdgpu/vega20_mec.bin +/lib/firmware/amdgpu/vega20_pfp.bin +/lib/firmware/amdgpu/vega20_sdma1.bin +/lib/firmware/amdgpu/vega20_sdma.bin +/lib/firmware/amdgpu/vega20_smc.bin +/lib/firmware/amdgpu/vega20_sos.bin +/lib/firmware/amdgpu/vega20_ta.bin +/lib/firmware/amdgpu/verde_uvd.bin +/lib/firmware/ath10k/QCA6174/hw3.0/board-2.bin +/lib/firmware/ath10k/QCA6174/hw3.0/firmware-6.bin +/lib/firmware/ath10k/QCA6174/hw3.0/firmware-sdio-6.bin +/lib/firmware/ath10k/QCA9377/hw1.0/firmware-sdio-5.bin +/lib/firmware/ath10k/QCA9888/hw2.0/firmware-5.bin +/lib/firmware/ath10k/QCA9984/hw1.0/firmware-5.bin +/lib/firmware/ath11k/IPQ6018/hw1.0/board-2.bin +/lib/firmware/ath11k/IPQ6018/hw1.0/m3_fw.b00 +/lib/firmware/ath11k/IPQ6018/hw1.0/m3_fw.b01 +/lib/firmware/ath11k/IPQ6018/hw1.0/m3_fw.b02 +/lib/firmware/ath11k/IPQ6018/hw1.0/m3_fw.flist +/lib/firmware/ath11k/IPQ6018/hw1.0/m3_fw.mdt +/lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.b00 +/lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.b01 +/lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.b02 +/lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.b03 +/lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.b04 +/lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.b05 +/lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.b07 +/lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.b08 +/lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.flist +/lib/firmware/ath11k/IPQ6018/hw1.0/q6_fw.mdt +/lib/firmware/ath11k/IPQ8074/hw2.0/board-2.bin +/lib/firmware/ath11k/IPQ8074/hw2.0/m3_fw.b00 +/lib/firmware/ath11k/IPQ8074/hw2.0/m3_fw.b01 +/lib/firmware/ath11k/IPQ8074/hw2.0/m3_fw.b02 +/lib/firmware/ath11k/IPQ8074/hw2.0/m3_fw.flist +/lib/firmware/ath11k/IPQ8074/hw2.0/m3_fw.mdt +/lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.b00 +/lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.b01 +/lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.b02 +/lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.b03 +/lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.b04 +/lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.b05 +/lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.b07 +/lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.b08 +/lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.flist +/lib/firmware/ath11k/IPQ8074/hw2.0/q6_fw.mdt +/lib/firmware/ath11k/QCA6390/hw2.0/amss.bin +/lib/firmware/ath11k/QCA6390/hw2.0/board-2.bin +/lib/firmware/ath11k/QCA6390/hw2.0/m3.bin +/lib/firmware/atmel/wilc1000_wifi_firmware-1.bin +/lib/firmware/brcm/brcmfmac43340-sdio.predia-basic.txt +/lib/firmware/brcm/brcmfmac43430a0-sdio.ilife-S806.txt +/lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,3-model-b-plus.txt +/lib/firmware/brcm/brcmfmac43455-sdio.raspberrypi,4-model-b.txt +/lib/firmware/brcm/brcmfmac4356-sdio.vamrs,rock960.txt +/lib/firmware/cadence/mhdp8546.bin +/lib/firmware/cxgb4/configs/t6-config-default.txt +/lib/firmware/cxgb4/t4fw-1.25.4.0.bin +/lib/firmware/cxgb4/t5fw-1.25.4.0.bin +/lib/firmware/cxgb4/t6fw-1.25.4.0.bin +/lib/firmware/cypress/cyfmac43012-sdio.bin +/lib/firmware/cypress/cyfmac43012-sdio.clm_blob +/lib/firmware/cypress/cyfmac43340-sdio.bin +/lib/firmware/cypress/cyfmac43362-sdio.bin +/lib/firmware/cypress/cyfmac4339-sdio.bin +/lib/firmware/cypress/cyfmac43430-sdio.bin +/lib/firmware/cypress/cyfmac43430-sdio.clm_blob +/lib/firmware/cypress/cyfmac43455-sdio.bin +/lib/firmware/cypress/cyfmac43455-sdio.clm_blob +/lib/firmware/cypress/cyfmac4354-sdio.bin +/lib/firmware/cypress/cyfmac4354-sdio.clm_blob +/lib/firmware/cypress/cyfmac4356-pcie.bin +/lib/firmware/cypress/cyfmac4356-pcie.clm_blob +/lib/firmware/cypress/cyfmac4356-sdio.bin +/lib/firmware/cypress/cyfmac4356-sdio.clm_blob +/lib/firmware/cypress/cyfmac43570-pcie.bin +/lib/firmware/cypress/cyfmac43570-pcie.clm_blob +/lib/firmware/cypress/cyfmac4373-sdio.bin +/lib/firmware/cypress/cyfmac4373-sdio.clm_blob +/lib/firmware/cypress/cyfmac54591-pcie.bin +/lib/firmware/cypress/cyfmac54591-pcie.clm_blob +/lib/firmware/i915/adlp_dmc_ver2_09.bin +/lib/firmware/i915/adlp_dmc_ver2_10.bin +/lib/firmware/i915/adls_dmc_ver2_01.bin +/lib/firmware/i915/bxt_guc_49.0.1.bin +/lib/firmware/i915/cml_guc_49.0.1.bin +/lib/firmware/i915/dg1_dmc_ver2_02.bin +/lib/firmware/i915/dg1_guc_49.0.1.bin +/lib/firmware/i915/dg1_huc_7.7.1.bin +/lib/firmware/i915/ehl_guc_49.0.1.bin +/lib/firmware/i915/glk_guc_49.0.1.bin +/lib/firmware/i915/icl_guc_49.0.1.bin +/lib/firmware/i915/kbl_guc_49.0.1.bin +/lib/firmware/i915/rkl_dmc_ver2_02.bin +/lib/firmware/i915/skl_guc_49.0.1.bin +/lib/firmware/i915/tgl_dmc_ver2_08.bin +/lib/firmware/i915/tgl_guc_49.0.1.bin +/lib/firmware/i915/tgl_huc_7.5.0.bin +/lib/firmware/intel/ibt-0041-0041.ddc +/lib/firmware/intel/ibt-0041-0041.sfi +/lib/firmware/intel/ibt-12-16.sfi +/lib/firmware/intel/ibt-17-16-1.sfi +/lib/firmware/intel/ibt-17-2.sfi +/lib/firmware/intel/ibt-18-16-1.sfi +/lib/firmware/intel/ibt-18-2.sfi +/lib/firmware/intel/ibt-19-0-0.sfi +/lib/firmware/intel/ibt-19-0-1.sfi +/lib/firmware/intel/ibt-19-0-4.sfi +/lib/firmware/intel/ibt-19-16-4.sfi +/lib/firmware/intel/ibt-19-240-1.sfi +/lib/firmware/intel/ibt-19-240-4.sfi +/lib/firmware/intel/ibt-19-32-0.sfi +/lib/firmware/intel/ibt-19-32-1.sfi +/lib/firmware/intel/ibt-19-32-4.sfi +/lib/firmware/intel/ibt-20-0-3.sfi +/lib/firmware/intel/ibt-20-1-3.sfi +/lib/firmware/intel/ibt-20-1-4.sfi +/lib/firmware/intel/ibt-hw-37.8.10-fw-22.50.19.14.f.bseq +/lib/firmware/intel/ice/ddp-comms/ice_comms-1.3.20.0.pkg +/lib/firmware/intel/ice/ddp/ice-1.3.16.0.pkg +/lib/firmware/iwlwifi-3168-29.ucode +/lib/firmware/iwlwifi-7265D-29.ucode +/lib/firmware/iwlwifi-8000C-36.ucode +/lib/firmware/iwlwifi-8265-36.ucode +/lib/firmware/iwlwifi-9000-pu-b0-jf-b0-46.ucode +/lib/firmware/iwlwifi-9260-th-b0-jf-b0-46.ucode +/lib/firmware/iwlwifi-cc-a0-59.ucode +/lib/firmware/iwlwifi-cc-a0-62.ucode +/lib/firmware/iwlwifi-Qu-b0-hr-b0-59.ucode +/lib/firmware/iwlwifi-Qu-b0-hr-b0-62.ucode +/lib/firmware/iwlwifi-Qu-b0-jf-b0-59.ucode +/lib/firmware/iwlwifi-Qu-b0-jf-b0-62.ucode +/lib/firmware/iwlwifi-Qu-c0-hr-b0-59.ucode +/lib/firmware/iwlwifi-Qu-c0-hr-b0-62.ucode +/lib/firmware/iwlwifi-Qu-c0-jf-b0-59.ucode +/lib/firmware/iwlwifi-Qu-c0-jf-b0-62.ucode +/lib/firmware/iwlwifi-QuZ-a0-hr-b0-59.ucode +/lib/firmware/iwlwifi-QuZ-a0-hr-b0-62.ucode +/lib/firmware/iwlwifi-QuZ-a0-jf-b0-59.ucode +/lib/firmware/iwlwifi-QuZ-a0-jf-b0-62.ucode +/lib/firmware/iwlwifi-ty-a0-gf-a0-59.ucode +/lib/firmware/iwlwifi-ty-a0-gf-a0-62.ucode +/lib/firmware/iwlwifi-ty-a0-gf-a0.pnvm +/lib/firmware/lt9611uxc_fw.bin +/lib/firmware/mediatek/BT_RAM_CODE_MT7961_1_2_hdr.bin +/lib/firmware/mediatek/mt7615_n9.bin +/lib/firmware/mediatek/mt7663_n9_v3.bin +/lib/firmware/mediatek/mt7663pr2h.bin +/lib/firmware/mediatek/mt7915_rom_patch.bin +/lib/firmware/mediatek/mt7915_wa.bin +/lib/firmware/mediatek/mt7915_wm.bin +/lib/firmware/mediatek/mt8173/vpu_d.bin +/lib/firmware/mediatek/mt8173/vpu_p.bin +/lib/firmware/mediatek/WIFI_MT7961_patch_mcu_1_2_hdr.bin +/lib/firmware/mediatek/WIFI_RAM_CODE_MT7961_1.bin +/lib/firmware/mellanox/mlxsw_spectrum-13.2007.1168.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum-13.2008.1036.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum-13.2008.1310.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum-13.2008.1312.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum-13.2008.2018.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum-13.2008.2304.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum-13.2008.2406.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum-13.2008.2438.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum2-29.2007.1168.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum2-29.2008.1036.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum2-29.2008.1310.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum2-29.2008.1312.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum2-29.2008.2018.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum2-29.2008.2304.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum2-29.2008.2406.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum2-29.2008.2438.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum3-30.2007.1168.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum3-30.2008.1036.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum3-30.2008.1310.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum3-30.2008.1312.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum3-30.2008.2018.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum3-30.2008.2304.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum3-30.2008.2406.mfa2 +/lib/firmware/mellanox/mlxsw_spectrum3-30.2008.2438.mfa2 +/lib/firmware/mrvl/prestera/mvsw_prestera_fw-v2.0.img +/lib/firmware/mrvl/prestera/mvsw_prestera_fw-v3.0.img +/lib/firmware/mrvl/sdsd8997_combo_v4.bin +/lib/firmware/netronome/flower/nic_AMDA0058.nffw +/lib/firmware/netronome/flower/nic_AMDA0096.nffw +/lib/firmware/netronome/flower/nic_AMDA0097.nffw +/lib/firmware/netronome/flower/nic_AMDA0099.nffw +/lib/firmware/nvidia/tegra186/xusb.bin +/lib/firmware/nvidia/tegra194/vic.bin +/lib/firmware/nvidia/tegra194/xusb.bin +/lib/firmware/nvidia/tegra210/xusb.bin +/lib/firmware/qca/crbtfw32.tlv +/lib/firmware/qca/crnv32.bin +/lib/firmware/qca/crnv32u.bin +/lib/firmware/qca/htbtfw20.tlv +/lib/firmware/qca/htnv20.bin +/lib/firmware/qca/nvm_usb_00000302.bin +/lib/firmware/qca/rampatch_usb_00000302.bin +/lib/firmware/qcom/a530_pfp.fw +/lib/firmware/qcom/a630_sqe.fw +/lib/firmware/qcom/a650_gmu.bin +/lib/firmware/qcom/a650_sqe.fw +/lib/firmware/qcom/a660_gmu.bin +/lib/firmware/qcom/a660_sqe.fw +/lib/firmware/qcom/sm8250/a650_zap.mbn +/lib/firmware/qcom/sm8250/adsp.mbn +/lib/firmware/qcom/sm8250/adspr.jsn +/lib/firmware/qcom/sm8250/adspua.jsn +/lib/firmware/qcom/sm8250/cdsp.mbn +/lib/firmware/qcom/sm8250/cdspr.jsn +/lib/firmware/qcom/venus-5.4/venus.b00 +/lib/firmware/qcom/venus-5.4/venus.b01 +/lib/firmware/qcom/venus-5.4/venus.b02 +/lib/firmware/qcom/venus-5.4/venus.b03 +/lib/firmware/qcom/venus-5.4/venus.mbn +/lib/firmware/qcom/venus-5.4/venus.mdt +/lib/firmware/qcom/vpu-1.0/venus.b00 +/lib/firmware/qcom/vpu-1.0/venus.b01 +/lib/firmware/qcom/vpu-1.0/venus.b02 +/lib/firmware/qcom/vpu-1.0/venus.b03 +/lib/firmware/qcom/vpu-1.0/venus.b04 +/lib/firmware/qcom/vpu-1.0/venus.b05 +/lib/firmware/qcom/vpu-1.0/venus.b06 +/lib/firmware/qcom/vpu-1.0/venus.b07 +/lib/firmware/qcom/vpu-1.0/venus.b08 +/lib/firmware/qcom/vpu-1.0/venus.b09 +/lib/firmware/qcom/vpu-1.0/venus.b10 +/lib/firmware/qcom/vpu-1.0/venus.b19 +/lib/firmware/qcom/vpu-1.0/venus.mbn +/lib/firmware/qcom/vpu-1.0/venus.mdt +/lib/firmware/qcom/vpu-2.0/venus.b00 +/lib/firmware/qcom/vpu-2.0/venus.b01 +/lib/firmware/qcom/vpu-2.0/venus.b02 +/lib/firmware/qcom/vpu-2.0/venus.b03 +/lib/firmware/qcom/vpu-2.0/venus.b04 +/lib/firmware/qcom/vpu-2.0/venus.b05 +/lib/firmware/qcom/vpu-2.0/venus.b06 +/lib/firmware/qcom/vpu-2.0/venus.b07 +/lib/firmware/qcom/vpu-2.0/venus.b08 +/lib/firmware/qcom/vpu-2.0/venus.b09 +/lib/firmware/qcom/vpu-2.0/venus.b10 +/lib/firmware/qcom/vpu-2.0/venus.b19 +/lib/firmware/qcom/vpu-2.0/venus.mbn +/lib/firmware/qcom/vpu-2.0/venus.mdt +/lib/firmware/rtl_bt/rtl8821c_fw.bin +/lib/firmware/rtl_bt/rtl8822cs_fw.bin +/lib/firmware/rtl_bt/rtl8822cu_fw.bin +/lib/firmware/rtl_bt/rtl8852au_config.bin +/lib/firmware/rtl_bt/rtl8852au_fw.bin +/lib/firmware/rtl_nic/rtl8125b-1.fw +/lib/firmware/rtl_nic/rtl8125b-2.fw +/lib/firmware/rtl_nic/rtl8153c-1.fw +/lib/firmware/rtl_nic/rtl8156a-2.fw +/lib/firmware/rtl_nic/rtl8156b-2.fw +/lib/firmware/rtlwifi/rtl8192cufw_A.bin +/lib/firmware/rtlwifi/rtl8192cufw_B.bin +/lib/firmware/rtlwifi/rtl8192cufw_TMSC.bin +/lib/firmware/rtw88/rtw8821c_fw.bin +/lib/firmware/rtw88/rtw8822c_fw.bin +/lib/firmware/rtw88/rtw8822c_wow_fw.bin +/lib/firmware/rtw89/rtw8852a_fw.bin +/lib/firmware/silabs/wfm_wf200_C0.sec +/lib/firmware/ti-connectivity/wl18xx-fw-4.bin +/lib/firmware/ti/vpdma-1b8.bin diff --git a/config/rootfiles/core/158/filelists/nettle b/config/rootfiles/core/158/filelists/nettle new file mode 120000 index 000000000..f0dba7ac8 --- /dev/null +++ b/config/rootfiles/core/158/filelists/nettle @@ -0,0 +1 @@ +../../../common/nettle \ No newline at end of file diff --git a/config/rootfiles/core/158/filelists/pcre2 b/config/rootfiles/core/158/filelists/pcre2 new file mode 120000 index 000000000..4482caeae --- /dev/null +++ b/config/rootfiles/core/158/filelists/pcre2 @@ -0,0 +1 @@ +../../../common/pcre2 \ No newline at end of file diff --git a/config/rootfiles/core/158/filelists/perl-CGI b/config/rootfiles/core/158/filelists/perl-CGI new file mode 120000 index 000000000..929656625 --- /dev/null +++ b/config/rootfiles/core/158/filelists/perl-CGI @@ -0,0 +1 @@ +../../../common/perl-CGI \ No newline at end of file diff --git a/config/rootfiles/core/158/filelists/perl-Data-UUID b/config/rootfiles/core/158/filelists/perl-Data-UUID new file mode 120000 index 000000000..0f89b3bbb --- /dev/null +++ b/config/rootfiles/core/158/filelists/perl-Data-UUID @@ -0,0 +1 @@ +../../../common/perl-Data-UUID \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/python3-inotify b/config/rootfiles/core/158/filelists/python3-inotify similarity index 100% rename from config/rootfiles/core/157/filelists/python3-inotify rename to config/rootfiles/core/158/filelists/python3-inotify diff --git a/config/rootfiles/core/158/filelists/qpdf b/config/rootfiles/core/158/filelists/qpdf new file mode 120000 index 000000000..2d6c43dec --- /dev/null +++ b/config/rootfiles/core/158/filelists/qpdf @@ -0,0 +1 @@ +../../../common/qpdf \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/release-files b/config/rootfiles/core/158/filelists/release-files similarity index 100% rename from config/rootfiles/core/157/filelists/release-files rename to config/rootfiles/core/158/filelists/release-files diff --git a/config/rootfiles/core/158/filelists/rng-tools b/config/rootfiles/core/158/filelists/rng-tools new file mode 120000 index 000000000..a7853e41b --- /dev/null +++ b/config/rootfiles/core/158/filelists/rng-tools @@ -0,0 +1 @@ +../../../common/rng-tools \ No newline at end of file diff --git a/config/rootfiles/core/158/filelists/smartmontools b/config/rootfiles/core/158/filelists/smartmontools new file mode 120000 index 000000000..fb66dafef --- /dev/null +++ b/config/rootfiles/core/158/filelists/smartmontools @@ -0,0 +1 @@ +../../../common/smartmontools \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/sudo b/config/rootfiles/core/158/filelists/sudo similarity index 100% rename from config/rootfiles/core/157/filelists/sudo rename to config/rootfiles/core/158/filelists/sudo diff --git a/config/rootfiles/core/158/filelists/vnstat b/config/rootfiles/core/158/filelists/vnstat new file mode 120000 index 000000000..2e2e6100b --- /dev/null +++ b/config/rootfiles/core/158/filelists/vnstat @@ -0,0 +1 @@ +../../../common/vnstat \ No newline at end of file diff --git a/config/rootfiles/core/158/filelists/web-user-interface b/config/rootfiles/core/158/filelists/web-user-interface new file mode 120000 index 000000000..70c74b438 --- /dev/null +++ b/config/rootfiles/core/158/filelists/web-user-interface @@ -0,0 +1 @@ +../../../common/web-user-interface \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/x86_64/boost b/config/rootfiles/core/158/filelists/x86_64/boost similarity index 100% rename from config/rootfiles/core/157/filelists/x86_64/boost rename to config/rootfiles/core/158/filelists/x86_64/boost diff --git a/config/rootfiles/core/158/filelists/x86_64/dmidecode b/config/rootfiles/core/158/filelists/x86_64/dmidecode new file mode 120000 index 000000000..88f5f0a61 --- /dev/null +++ b/config/rootfiles/core/158/filelists/x86_64/dmidecode @@ -0,0 +1 @@ +../../../../common/x86_64/dmidecode \ No newline at end of file diff --git a/config/rootfiles/core/158/filelists/x86_64/intel-microcode b/config/rootfiles/core/158/filelists/x86_64/intel-microcode new file mode 120000 index 000000000..d5ac074e2 --- /dev/null +++ b/config/rootfiles/core/158/filelists/x86_64/intel-microcode @@ -0,0 +1 @@ +../../../../common/x86_64/intel-microcode \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/xfsprogs b/config/rootfiles/core/158/filelists/xfsprogs similarity index 100% rename from config/rootfiles/core/157/filelists/xfsprogs rename to config/rootfiles/core/158/filelists/xfsprogs diff --git a/config/rootfiles/core/158/filelists/zd1211-firmware b/config/rootfiles/core/158/filelists/zd1211-firmware new file mode 120000 index 000000000..33985ced8 --- /dev/null +++ b/config/rootfiles/core/158/filelists/zd1211-firmware @@ -0,0 +1 @@ +../../../common/zd1211-firmware \ No newline at end of file diff --git a/config/rootfiles/core/158/filelists/zstd b/config/rootfiles/core/158/filelists/zstd new file mode 120000 index 000000000..d6d4a3bf1 --- /dev/null +++ b/config/rootfiles/core/158/filelists/zstd @@ -0,0 +1 @@ +../../../common/zstd \ No newline at end of file diff --git a/src/paks/motion/install.sh b/config/rootfiles/core/158/update.sh similarity index 53% rename from src/paks/motion/install.sh rename to config/rootfiles/core/158/update.sh index fbdab43ac..b8ff724f5 100644 --- a/src/paks/motion/install.sh +++ b/config/rootfiles/core/158/update.sh @@ -5,7 +5,7 @@ # # # IPFire 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 2 of the License, or # +# the Free Software Foundation; either version 3 of the License, or # # (at your option) any later version. # # # # IPFire is distributed in the hope that it will be useful, # @@ -17,13 +17,66 @@ # along with IPFire; if not, write to the Free Software # # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # # # -# Copyright (C) 2007 IPFire-Team info@ipfire.org. # +# Copyright (C) 2020 IPFire-Team info@ipfire.org. # # # ############################################################################ # . /opt/pakfire/lib/functions.sh +/usr/local/bin/backupctrl exclude >/dev/null 2>&1 + +core=158 + +# Remove old core updates from pakfire cache to save space... +for (( i=1; i<=$core; i++ )); do + rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire +done + +# Remove files +rm -vrf \ + /etc/rc.d/init.d/upnpd \ + /etc/rc.d/init.d/networking/red.down/10-miniupnpd \ + /etc/rc.d/init.d/networking/red.up/10-miniupnpd \ + /usr/lib/conntrack-tools \ + /usr/lib/libixml.so.* \ + /usr/lib/libupnp.so.* \ + /var/ipfire/upnp \ + /lib/firmware/cxgb4/t4fw-1.24.14.0.bin \ + /lib/firmware/cxgb4/t5fw-1.24.14.0.bin \ + /lib/firmware/cxgb4/t6fw-1.24.14.0.bin \ + /lib/firmware/intel/ice/ddp/ice-1.3.4.0.pkg + +# Stop services + +# Extract files extract_files -restore_backup ${NAME} -useradd -s /bin/false video -#Ignore error if the user already exist + +# update linker config +ldconfig + +# Update Language cache +/usr/local/bin/update-lang-cache + +# Filesytem cleanup +/usr/local/bin/filesystem-cleanup + +# Start services +/etc/init.d/apache restart +/etc/init.d/vnstatd restart +/etc/init.d/rngd restart + +# This update needs a reboot... +#touch /var/run/need_reboot + +# Finish +/etc/init.d/fireinfo start +sendprofile + +# Update grub config to display new core version +if [ -e /boot/grub/grub.cfg ]; then + grub-mkconfig -o /boot/grub/grub.cfg +fi + +sync + +# Don't report the exitcode last command exit 0 diff --git a/config/rootfiles/oldcore/157/exclude b/config/rootfiles/oldcore/157/exclude new file mode 100644 index 000000000..818039f4a --- /dev/null +++ b/config/rootfiles/oldcore/157/exclude @@ -0,0 +1,34 @@ +boot/config.txt +boot/grub/grub.cfg +boot/grub/grubenv +etc/alternatives +etc/collectd.custom +etc/default/grub +etc/ipsec.conf +etc/ipsec.secrets +etc/ipsec.user.conf +etc/ipsec.user.secrets +etc/localtime +etc/shadow +etc/snort/snort.conf +etc/ssl/openssl.cnf +etc/sudoers +etc/sysconfig/firewall.local +etc/sysconfig/rc.local +etc/udev/rules.d/30-persistent-network.rules +srv/web/ipfire/html/proxy.pac +usr/share/xt_geoip +var/ipfire/dma +var/ipfire/time +var/ipfire/firewall/locationblock +var/ipfire/fwhosts/customlocationgrp +var/ipfire/ovpn +var/ipfire/urlfilter/blacklist +var/ipfire/urlfilter/settings +var/lib/alternatives +var/lib/location/database.db +var/log/cache +var/log/dhcpcd.log +var/log/messages +var/state/dhcp/dhcpd.leases +var/updatecache diff --git a/config/rootfiles/core/157/filelists/Canary-Stability b/config/rootfiles/oldcore/157/filelists/Canary-Stability similarity index 100% rename from config/rootfiles/core/157/filelists/Canary-Stability rename to config/rootfiles/oldcore/157/filelists/Canary-Stability diff --git a/config/rootfiles/core/157/filelists/Convert-TNEF b/config/rootfiles/oldcore/157/filelists/Convert-TNEF similarity index 100% rename from config/rootfiles/core/157/filelists/Convert-TNEF rename to config/rootfiles/oldcore/157/filelists/Convert-TNEF diff --git a/config/rootfiles/core/157/filelists/Convert-UUlib b/config/rootfiles/oldcore/157/filelists/Convert-UUlib similarity index 100% rename from config/rootfiles/core/157/filelists/Convert-UUlib rename to config/rootfiles/oldcore/157/filelists/Convert-UUlib diff --git a/config/rootfiles/core/157/filelists/Crypt-PasswdMD5 b/config/rootfiles/oldcore/157/filelists/Crypt-PasswdMD5 similarity index 100% rename from config/rootfiles/core/157/filelists/Crypt-PasswdMD5 rename to config/rootfiles/oldcore/157/filelists/Crypt-PasswdMD5 diff --git a/config/rootfiles/core/157/filelists/Digest b/config/rootfiles/oldcore/157/filelists/Digest similarity index 100% rename from config/rootfiles/core/157/filelists/Digest rename to config/rootfiles/oldcore/157/filelists/Digest diff --git a/config/rootfiles/core/157/filelists/aarch64/linux b/config/rootfiles/oldcore/157/filelists/aarch64/linux similarity index 100% rename from config/rootfiles/core/157/filelists/aarch64/linux rename to config/rootfiles/oldcore/157/filelists/aarch64/linux diff --git a/config/rootfiles/core/157/filelists/aarch64/linux-initrd b/config/rootfiles/oldcore/157/filelists/aarch64/linux-initrd similarity index 100% rename from config/rootfiles/core/157/filelists/aarch64/linux-initrd rename to config/rootfiles/oldcore/157/filelists/aarch64/linux-initrd diff --git a/config/rootfiles/core/157/filelists/aarch64/lm_sensors b/config/rootfiles/oldcore/157/filelists/aarch64/lm_sensors similarity index 100% rename from config/rootfiles/core/157/filelists/aarch64/lm_sensors rename to config/rootfiles/oldcore/157/filelists/aarch64/lm_sensors diff --git a/config/rootfiles/oldcore/157/filelists/apache2 b/config/rootfiles/oldcore/157/filelists/apache2 new file mode 120000 index 000000000..eef95efa7 --- /dev/null +++ b/config/rootfiles/oldcore/157/filelists/apache2 @@ -0,0 +1 @@ +../../../common/apache2 \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/armv5tel/linux-initrd-multi b/config/rootfiles/oldcore/157/filelists/armv5tel/linux-initrd-multi similarity index 100% rename from config/rootfiles/core/157/filelists/armv5tel/linux-initrd-multi rename to config/rootfiles/oldcore/157/filelists/armv5tel/linux-initrd-multi diff --git a/config/rootfiles/core/157/filelists/armv5tel/linux-multi b/config/rootfiles/oldcore/157/filelists/armv5tel/linux-multi similarity index 100% rename from config/rootfiles/core/157/filelists/armv5tel/linux-multi rename to config/rootfiles/oldcore/157/filelists/armv5tel/linux-multi diff --git a/config/rootfiles/core/157/filelists/armv5tel/lm_sensors b/config/rootfiles/oldcore/157/filelists/armv5tel/lm_sensors similarity index 100% rename from config/rootfiles/core/157/filelists/armv5tel/lm_sensors rename to config/rootfiles/oldcore/157/filelists/armv5tel/lm_sensors diff --git a/config/rootfiles/core/157/filelists/bash b/config/rootfiles/oldcore/157/filelists/bash similarity index 100% rename from config/rootfiles/core/157/filelists/bash rename to config/rootfiles/oldcore/157/filelists/bash diff --git a/config/rootfiles/oldcore/157/filelists/boost b/config/rootfiles/oldcore/157/filelists/boost new file mode 120000 index 000000000..05246f07c --- /dev/null +++ b/config/rootfiles/oldcore/157/filelists/boost @@ -0,0 +1 @@ +../../../common/boost \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/collectd b/config/rootfiles/oldcore/157/filelists/collectd similarity index 100% rename from config/rootfiles/core/157/filelists/collectd rename to config/rootfiles/oldcore/157/filelists/collectd diff --git a/config/rootfiles/oldcore/157/filelists/curl b/config/rootfiles/oldcore/157/filelists/curl new file mode 120000 index 000000000..4b84bef53 --- /dev/null +++ b/config/rootfiles/oldcore/157/filelists/curl @@ -0,0 +1 @@ +../../../common/curl \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/ddns b/config/rootfiles/oldcore/157/filelists/ddns similarity index 100% rename from config/rootfiles/core/157/filelists/ddns rename to config/rootfiles/oldcore/157/filelists/ddns diff --git a/config/rootfiles/core/157/filelists/dejavu-fonts-ttf b/config/rootfiles/oldcore/157/filelists/dejavu-fonts-ttf similarity index 100% rename from config/rootfiles/core/157/filelists/dejavu-fonts-ttf rename to config/rootfiles/oldcore/157/filelists/dejavu-fonts-ttf diff --git a/config/rootfiles/oldcore/157/filelists/expat b/config/rootfiles/oldcore/157/filelists/expat new file mode 120000 index 000000000..e1923cf63 --- /dev/null +++ b/config/rootfiles/oldcore/157/filelists/expat @@ -0,0 +1 @@ +../../../common/expat \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/file b/config/rootfiles/oldcore/157/filelists/file similarity index 100% rename from config/rootfiles/core/157/filelists/file rename to config/rootfiles/oldcore/157/filelists/file diff --git a/config/rootfiles/core/157/filelists/files b/config/rootfiles/oldcore/157/filelists/files similarity index 100% rename from config/rootfiles/core/157/filelists/files rename to config/rootfiles/oldcore/157/filelists/files diff --git a/config/rootfiles/oldcore/157/filelists/fuse b/config/rootfiles/oldcore/157/filelists/fuse new file mode 120000 index 000000000..570edaade --- /dev/null +++ b/config/rootfiles/oldcore/157/filelists/fuse @@ -0,0 +1 @@ +../../../common/fuse \ No newline at end of file diff --git a/config/rootfiles/oldcore/157/filelists/glib b/config/rootfiles/oldcore/157/filelists/glib new file mode 120000 index 000000000..44665746a --- /dev/null +++ b/config/rootfiles/oldcore/157/filelists/glib @@ -0,0 +1 @@ +../../../common/glib \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/i586/linux b/config/rootfiles/oldcore/157/filelists/i586/linux similarity index 100% rename from config/rootfiles/core/157/filelists/i586/linux rename to config/rootfiles/oldcore/157/filelists/i586/linux diff --git a/config/rootfiles/core/157/filelists/i586/linux-initrd b/config/rootfiles/oldcore/157/filelists/i586/linux-initrd similarity index 100% rename from config/rootfiles/core/157/filelists/i586/linux-initrd rename to config/rootfiles/oldcore/157/filelists/i586/linux-initrd diff --git a/config/rootfiles/core/157/filelists/i586/lm_sensors b/config/rootfiles/oldcore/157/filelists/i586/lm_sensors similarity index 100% rename from config/rootfiles/core/157/filelists/i586/lm_sensors rename to config/rootfiles/oldcore/157/filelists/i586/lm_sensors diff --git a/config/rootfiles/core/157/filelists/iproute2 b/config/rootfiles/oldcore/157/filelists/iproute2 similarity index 100% rename from config/rootfiles/core/157/filelists/iproute2 rename to config/rootfiles/oldcore/157/filelists/iproute2 diff --git a/config/rootfiles/oldcore/157/filelists/iputils b/config/rootfiles/oldcore/157/filelists/iputils new file mode 120000 index 000000000..361c28f71 --- /dev/null +++ b/config/rootfiles/oldcore/157/filelists/iputils @@ -0,0 +1 @@ +../../../common/iputils \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/less b/config/rootfiles/oldcore/157/filelists/less similarity index 100% rename from config/rootfiles/core/157/filelists/less rename to config/rootfiles/oldcore/157/filelists/less diff --git a/config/rootfiles/core/157/filelists/libaio b/config/rootfiles/oldcore/157/filelists/libaio similarity index 100% rename from config/rootfiles/core/157/filelists/libaio rename to config/rootfiles/oldcore/157/filelists/libaio diff --git a/config/rootfiles/core/157/filelists/libarchive b/config/rootfiles/oldcore/157/filelists/libarchive similarity index 100% rename from config/rootfiles/core/157/filelists/libarchive rename to config/rootfiles/oldcore/157/filelists/libarchive diff --git a/config/rootfiles/core/157/filelists/libcap-ng b/config/rootfiles/oldcore/157/filelists/libcap-ng similarity index 100% rename from config/rootfiles/core/157/filelists/libcap-ng rename to config/rootfiles/oldcore/157/filelists/libcap-ng diff --git a/config/rootfiles/oldcore/157/filelists/libedit b/config/rootfiles/oldcore/157/filelists/libedit new file mode 120000 index 000000000..03fc483da --- /dev/null +++ b/config/rootfiles/oldcore/157/filelists/libedit @@ -0,0 +1 @@ +../../../common/libedit \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/libevent2 b/config/rootfiles/oldcore/157/filelists/libevent2 similarity index 100% rename from config/rootfiles/core/157/filelists/libevent2 rename to config/rootfiles/oldcore/157/filelists/libevent2 diff --git a/config/rootfiles/core/157/filelists/libgcrypt b/config/rootfiles/oldcore/157/filelists/libgcrypt similarity index 100% rename from config/rootfiles/core/157/filelists/libgcrypt rename to config/rootfiles/oldcore/157/filelists/libgcrypt diff --git a/config/rootfiles/core/157/filelists/libgpg-error b/config/rootfiles/oldcore/157/filelists/libgpg-error similarity index 100% rename from config/rootfiles/core/157/filelists/libgpg-error rename to config/rootfiles/oldcore/157/filelists/libgpg-error diff --git a/config/rootfiles/core/157/filelists/libjpeg b/config/rootfiles/oldcore/157/filelists/libjpeg similarity index 100% rename from config/rootfiles/core/157/filelists/libjpeg rename to config/rootfiles/oldcore/157/filelists/libjpeg diff --git a/config/rootfiles/core/157/filelists/libupnp b/config/rootfiles/oldcore/157/filelists/libupnp similarity index 100% rename from config/rootfiles/core/157/filelists/libupnp rename to config/rootfiles/oldcore/157/filelists/libupnp diff --git a/config/rootfiles/oldcore/157/filelists/libxcrypt b/config/rootfiles/oldcore/157/filelists/libxcrypt new file mode 120000 index 000000000..ad93616b5 --- /dev/null +++ b/config/rootfiles/oldcore/157/filelists/libxcrypt @@ -0,0 +1 @@ +../../../common/libxcrypt \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/libxml2 b/config/rootfiles/oldcore/157/filelists/libxml2 similarity index 100% rename from config/rootfiles/core/157/filelists/libxml2 rename to config/rootfiles/oldcore/157/filelists/libxml2 diff --git a/config/rootfiles/core/157/filelists/libxslt b/config/rootfiles/oldcore/157/filelists/libxslt similarity index 100% rename from config/rootfiles/core/157/filelists/libxslt rename to config/rootfiles/oldcore/157/filelists/libxslt diff --git a/config/rootfiles/core/157/filelists/newt b/config/rootfiles/oldcore/157/filelists/newt similarity index 100% rename from config/rootfiles/core/157/filelists/newt rename to config/rootfiles/oldcore/157/filelists/newt diff --git a/config/rootfiles/core/157/filelists/openssh b/config/rootfiles/oldcore/157/filelists/openssh similarity index 100% rename from config/rootfiles/core/157/filelists/openssh rename to config/rootfiles/oldcore/157/filelists/openssh diff --git a/config/rootfiles/core/157/filelists/pixman b/config/rootfiles/oldcore/157/filelists/pixman similarity index 100% rename from config/rootfiles/core/157/filelists/pixman rename to config/rootfiles/oldcore/157/filelists/pixman diff --git a/config/rootfiles/core/157/filelists/poppler b/config/rootfiles/oldcore/157/filelists/poppler similarity index 100% rename from config/rootfiles/core/157/filelists/poppler rename to config/rootfiles/oldcore/157/filelists/poppler diff --git a/config/rootfiles/core/157/filelists/poppler-data b/config/rootfiles/oldcore/157/filelists/poppler-data similarity index 100% rename from config/rootfiles/core/157/filelists/poppler-data rename to config/rootfiles/oldcore/157/filelists/poppler-data diff --git a/config/rootfiles/core/157/filelists/ppp b/config/rootfiles/oldcore/157/filelists/ppp similarity index 100% rename from config/rootfiles/core/157/filelists/ppp rename to config/rootfiles/oldcore/157/filelists/ppp diff --git a/config/rootfiles/core/157/filelists/python3-daemon b/config/rootfiles/oldcore/157/filelists/python3-daemon similarity index 100% rename from config/rootfiles/core/157/filelists/python3-daemon rename to config/rootfiles/oldcore/157/filelists/python3-daemon diff --git a/config/rootfiles/core/157/filelists/readline b/config/rootfiles/oldcore/157/filelists/readline similarity index 100% rename from config/rootfiles/core/157/filelists/readline rename to config/rootfiles/oldcore/157/filelists/readline diff --git a/config/rootfiles/oldcore/157/filelists/release-files b/config/rootfiles/oldcore/157/filelists/release-files new file mode 100644 index 000000000..0dec37e53 --- /dev/null +++ b/config/rootfiles/oldcore/157/filelists/release-files @@ -0,0 +1,5 @@ +etc/system-release +etc/issue +etc/os-release +srv/web/ipfire/cgi-bin/credits.cgi +var/ipfire/langs diff --git a/config/rootfiles/core/157/filelists/sqlite b/config/rootfiles/oldcore/157/filelists/sqlite similarity index 100% rename from config/rootfiles/core/157/filelists/sqlite rename to config/rootfiles/oldcore/157/filelists/sqlite diff --git a/config/rootfiles/core/157/filelists/squid b/config/rootfiles/oldcore/157/filelists/squid similarity index 100% rename from config/rootfiles/core/157/filelists/squid rename to config/rootfiles/oldcore/157/filelists/squid diff --git a/config/rootfiles/oldcore/157/filelists/sudo b/config/rootfiles/oldcore/157/filelists/sudo new file mode 120000 index 000000000..0d3c45e04 --- /dev/null +++ b/config/rootfiles/oldcore/157/filelists/sudo @@ -0,0 +1 @@ +../../../common/sudo \ No newline at end of file diff --git a/config/rootfiles/core/157/filelists/x86_64/linux b/config/rootfiles/oldcore/157/filelists/x86_64/linux similarity index 100% rename from config/rootfiles/core/157/filelists/x86_64/linux rename to config/rootfiles/oldcore/157/filelists/x86_64/linux diff --git a/config/rootfiles/core/157/filelists/x86_64/linux-initrd b/config/rootfiles/oldcore/157/filelists/x86_64/linux-initrd similarity index 100% rename from config/rootfiles/core/157/filelists/x86_64/linux-initrd rename to config/rootfiles/oldcore/157/filelists/x86_64/linux-initrd diff --git a/config/rootfiles/core/157/filelists/x86_64/lm_sensors b/config/rootfiles/oldcore/157/filelists/x86_64/lm_sensors similarity index 100% rename from config/rootfiles/core/157/filelists/x86_64/lm_sensors rename to config/rootfiles/oldcore/157/filelists/x86_64/lm_sensors diff --git a/config/rootfiles/oldcore/157/filelists/xfsprogs b/config/rootfiles/oldcore/157/filelists/xfsprogs new file mode 120000 index 000000000..91032964d --- /dev/null +++ b/config/rootfiles/oldcore/157/filelists/xfsprogs @@ -0,0 +1 @@ +../../../common/xfsprogs \ No newline at end of file diff --git a/config/rootfiles/core/157/update.sh b/config/rootfiles/oldcore/157/update.sh similarity index 100% rename from config/rootfiles/core/157/update.sh rename to config/rootfiles/oldcore/157/update.sh diff --git a/config/rootfiles/packages/aarch64/sane b/config/rootfiles/packages/aarch64/sane deleted file mode 100644 index 91b5de3e1..000000000 --- a/config/rootfiles/packages/aarch64/sane +++ /dev/null @@ -1,653 +0,0 @@ -etc/rc.d/init.d/sane -etc/rc.d/rc0.d/K10sane -etc/rc.d/rc3.d/S95sane -etc/rc.d/rc6.d/K10sane -#etc/sane.d -etc/sane.d/abaton.conf -etc/sane.d/agfafocus.conf -etc/sane.d/apple.conf -etc/sane.d/artec.conf -etc/sane.d/artec_eplus48u.conf -etc/sane.d/avision.conf -etc/sane.d/bh.conf -etc/sane.d/canon.conf -etc/sane.d/canon630u.conf -etc/sane.d/canon_dr.conf -etc/sane.d/cardscan.conf -etc/sane.d/coolscan.conf -etc/sane.d/coolscan2.conf -etc/sane.d/coolscan3.conf -etc/sane.d/dc210.conf -etc/sane.d/dc240.conf -etc/sane.d/dc25.conf -etc/sane.d/dell1600n_net.conf -etc/sane.d/dll.conf -etc/sane.d/dll.d -etc/sane.d/dmc.conf -etc/sane.d/epjitsu.conf -etc/sane.d/epson.conf -etc/sane.d/epson2.conf -etc/sane.d/epsonds.conf -etc/sane.d/fujitsu.conf -etc/sane.d/genesys.conf -etc/sane.d/gt68xx.conf -etc/sane.d/hp.conf -etc/sane.d/hp3900.conf -etc/sane.d/hp4200.conf -etc/sane.d/hp5400.conf -etc/sane.d/hs2p.conf -etc/sane.d/ibm.conf -etc/sane.d/kodak.conf -etc/sane.d/kodakaio.conf -etc/sane.d/kvs1025.conf -etc/sane.d/leo.conf -etc/sane.d/lexmark.conf -etc/sane.d/ma1509.conf -etc/sane.d/magicolor.conf -etc/sane.d/matsushita.conf -etc/sane.d/microtek.conf -etc/sane.d/microtek2.conf -etc/sane.d/mustek.conf -etc/sane.d/mustek_pp.conf -etc/sane.d/mustek_usb.conf -etc/sane.d/nec.conf -etc/sane.d/net.conf -etc/sane.d/p5.conf -etc/sane.d/pie.conf -etc/sane.d/pieusb.conf -etc/sane.d/pixma.conf -etc/sane.d/plustek.conf -etc/sane.d/plustek_pp.conf -etc/sane.d/ricoh.conf -etc/sane.d/rts8891.conf -etc/sane.d/s9036.conf -etc/sane.d/saned.conf -etc/sane.d/sceptre.conf -etc/sane.d/sharp.conf -etc/sane.d/sm3840.conf -etc/sane.d/snapscan.conf -etc/sane.d/sp15c.conf -etc/sane.d/st400.conf -etc/sane.d/stv680.conf -etc/sane.d/tamarack.conf -etc/sane.d/teco1.conf -etc/sane.d/teco2.conf -etc/sane.d/teco3.conf -etc/sane.d/test.conf -etc/sane.d/u12.conf -etc/sane.d/umax.conf -etc/sane.d/umax1220u.conf -etc/sane.d/umax_pp.conf -etc/sane.d/xerox_mfp.conf -usr/bin/gamma4scanimage -usr/bin/sane-config -usr/bin/sane-find-scanner -usr/bin/scanimage -usr/bin/umax_pp -#usr/include/sane -usr/include/sane/sane.h -usr/include/sane/saneopts.h -#usr/lib/libsane.la -usr/lib/libsane.so -usr/lib/libsane.so.1 -usr/lib/libsane.so.1.0.28 -#usr/lib/pkgconfig/sane-backends.pc -#usr/lib/sane -#usr/lib/sane/libsane-abaton.la -usr/lib/sane/libsane-abaton.so -usr/lib/sane/libsane-abaton.so.1 -usr/lib/sane/libsane-abaton.so.1.0.28 -#usr/lib/sane/libsane-agfafocus.la -usr/lib/sane/libsane-agfafocus.so -usr/lib/sane/libsane-agfafocus.so.1 -usr/lib/sane/libsane-agfafocus.so.1.0.28 -#usr/lib/sane/libsane-apple.la -usr/lib/sane/libsane-apple.so -usr/lib/sane/libsane-apple.so.1 -usr/lib/sane/libsane-apple.so.1.0.28 -#usr/lib/sane/libsane-artec.la -usr/lib/sane/libsane-artec.so -usr/lib/sane/libsane-artec.so.1 -usr/lib/sane/libsane-artec.so.1.0.28 -#usr/lib/sane/libsane-artec_eplus48u.la -usr/lib/sane/libsane-artec_eplus48u.so -usr/lib/sane/libsane-artec_eplus48u.so.1 -usr/lib/sane/libsane-artec_eplus48u.so.1.0.28 -#usr/lib/sane/libsane-as6e.la -usr/lib/sane/libsane-as6e.so -usr/lib/sane/libsane-as6e.so.1 -usr/lib/sane/libsane-as6e.so.1.0.28 -#usr/lib/sane/libsane-avision.la -usr/lib/sane/libsane-avision.so -usr/lib/sane/libsane-avision.so.1 -usr/lib/sane/libsane-avision.so.1.0.28 -#usr/lib/sane/libsane-bh.la -usr/lib/sane/libsane-bh.so -usr/lib/sane/libsane-bh.so.1 -usr/lib/sane/libsane-bh.so.1.0.28 -#usr/lib/sane/libsane-canon.la -usr/lib/sane/libsane-canon.so -usr/lib/sane/libsane-canon.so.1 -usr/lib/sane/libsane-canon.so.1.0.28 -#usr/lib/sane/libsane-canon630u.la -usr/lib/sane/libsane-canon630u.so -usr/lib/sane/libsane-canon630u.so.1 -usr/lib/sane/libsane-canon630u.so.1.0.28 -#usr/lib/sane/libsane-canon_dr.la -usr/lib/sane/libsane-canon_dr.so -usr/lib/sane/libsane-canon_dr.so.1 -usr/lib/sane/libsane-canon_dr.so.1.0.28 -#usr/lib/sane/libsane-cardscan.la -usr/lib/sane/libsane-cardscan.so -usr/lib/sane/libsane-cardscan.so.1 -usr/lib/sane/libsane-cardscan.so.1.0.28 -#usr/lib/sane/libsane-coolscan.la -usr/lib/sane/libsane-coolscan.so -usr/lib/sane/libsane-coolscan.so.1 -usr/lib/sane/libsane-coolscan.so.1.0.28 -#usr/lib/sane/libsane-coolscan2.la -usr/lib/sane/libsane-coolscan2.so -usr/lib/sane/libsane-coolscan2.so.1 -usr/lib/sane/libsane-coolscan2.so.1.0.28 -#usr/lib/sane/libsane-coolscan3.la -usr/lib/sane/libsane-coolscan3.so -usr/lib/sane/libsane-coolscan3.so.1 -usr/lib/sane/libsane-coolscan3.so.1.0.28 -#usr/lib/sane/libsane-dc210.la -usr/lib/sane/libsane-dc210.so -usr/lib/sane/libsane-dc210.so.1 -usr/lib/sane/libsane-dc210.so.1.0.28 -#usr/lib/sane/libsane-dc240.la -usr/lib/sane/libsane-dc240.so -usr/lib/sane/libsane-dc240.so.1 -usr/lib/sane/libsane-dc240.so.1.0.28 -#usr/lib/sane/libsane-dc25.la -usr/lib/sane/libsane-dc25.so -usr/lib/sane/libsane-dc25.so.1 -usr/lib/sane/libsane-dc25.so.1.0.28 -#usr/lib/sane/libsane-dell1600n_net.la -usr/lib/sane/libsane-dell1600n_net.so -usr/lib/sane/libsane-dell1600n_net.so.1 -usr/lib/sane/libsane-dell1600n_net.so.1.0.28 -#usr/lib/sane/libsane-dll.la -usr/lib/sane/libsane-dll.so -usr/lib/sane/libsane-dll.so.1 -usr/lib/sane/libsane-dll.so.1.0.28 -#usr/lib/sane/libsane-dmc.la -usr/lib/sane/libsane-dmc.so -usr/lib/sane/libsane-dmc.so.1 -usr/lib/sane/libsane-dmc.so.1.0.28 -#usr/lib/sane/libsane-epjitsu.la -usr/lib/sane/libsane-epjitsu.so -usr/lib/sane/libsane-epjitsu.so.1 -usr/lib/sane/libsane-epjitsu.so.1.0.28 -#usr/lib/sane/libsane-epson.la -usr/lib/sane/libsane-epson.so -usr/lib/sane/libsane-epson.so.1 -usr/lib/sane/libsane-epson.so.1.0.28 -#usr/lib/sane/libsane-epson2.la -usr/lib/sane/libsane-epson2.so -usr/lib/sane/libsane-epson2.so.1 -usr/lib/sane/libsane-epson2.so.1.0.28 -#usr/lib/sane/libsane-epsonds.la -usr/lib/sane/libsane-epsonds.so -usr/lib/sane/libsane-epsonds.so.1 -usr/lib/sane/libsane-epsonds.so.1.0.28 -#usr/lib/sane/libsane-fujitsu.la -usr/lib/sane/libsane-fujitsu.so -usr/lib/sane/libsane-fujitsu.so.1 -usr/lib/sane/libsane-fujitsu.so.1.0.28 -#usr/lib/sane/libsane-genesys.la -usr/lib/sane/libsane-genesys.so -usr/lib/sane/libsane-genesys.so.1 -usr/lib/sane/libsane-genesys.so.1.0.28 -#usr/lib/sane/libsane-gt68xx.la -usr/lib/sane/libsane-gt68xx.so -usr/lib/sane/libsane-gt68xx.so.1 -usr/lib/sane/libsane-gt68xx.so.1.0.28 -#usr/lib/sane/libsane-hp.la -usr/lib/sane/libsane-hp.so -usr/lib/sane/libsane-hp.so.1 -usr/lib/sane/libsane-hp.so.1.0.28 -#usr/lib/sane/libsane-hp3500.la -usr/lib/sane/libsane-hp3500.so -usr/lib/sane/libsane-hp3500.so.1 -usr/lib/sane/libsane-hp3500.so.1.0.28 -#usr/lib/sane/libsane-hp3900.la -usr/lib/sane/libsane-hp3900.so -usr/lib/sane/libsane-hp3900.so.1 -usr/lib/sane/libsane-hp3900.so.1.0.28 -#usr/lib/sane/libsane-hp4200.la -usr/lib/sane/libsane-hp4200.so -usr/lib/sane/libsane-hp4200.so.1 -usr/lib/sane/libsane-hp4200.so.1.0.28 -#usr/lib/sane/libsane-hp5400.la -usr/lib/sane/libsane-hp5400.so -usr/lib/sane/libsane-hp5400.so.1 -usr/lib/sane/libsane-hp5400.so.1.0.28 -#usr/lib/sane/libsane-hp5590.la -usr/lib/sane/libsane-hp5590.so -usr/lib/sane/libsane-hp5590.so.1 -usr/lib/sane/libsane-hp5590.so.1.0.28 -#usr/lib/sane/libsane-hpljm1005.la -usr/lib/sane/libsane-hpljm1005.so -usr/lib/sane/libsane-hpljm1005.so.1 -usr/lib/sane/libsane-hpljm1005.so.1.0.28 -#usr/lib/sane/libsane-hs2p.la -usr/lib/sane/libsane-hs2p.so -usr/lib/sane/libsane-hs2p.so.1 -usr/lib/sane/libsane-hs2p.so.1.0.28 -#usr/lib/sane/libsane-ibm.la -usr/lib/sane/libsane-ibm.so -usr/lib/sane/libsane-ibm.so.1 -usr/lib/sane/libsane-ibm.so.1.0.28 -#usr/lib/sane/libsane-kodak.la -usr/lib/sane/libsane-kodak.so -usr/lib/sane/libsane-kodak.so.1 -usr/lib/sane/libsane-kodak.so.1.0.28 -#usr/lib/sane/libsane-kodakaio.la -usr/lib/sane/libsane-kodakaio.so -usr/lib/sane/libsane-kodakaio.so.1 -usr/lib/sane/libsane-kodakaio.so.1.0.28 -#usr/lib/sane/libsane-kvs1025.la -usr/lib/sane/libsane-kvs1025.so -usr/lib/sane/libsane-kvs1025.so.1 -usr/lib/sane/libsane-kvs1025.so.1.0.28 -#usr/lib/sane/libsane-kvs20xx.la -usr/lib/sane/libsane-kvs20xx.so -usr/lib/sane/libsane-kvs20xx.so.1 -usr/lib/sane/libsane-kvs20xx.so.1.0.28 -#usr/lib/sane/libsane-kvs40xx.la -usr/lib/sane/libsane-kvs40xx.so -usr/lib/sane/libsane-kvs40xx.so.1 -usr/lib/sane/libsane-kvs40xx.so.1.0.28 -#usr/lib/sane/libsane-leo.la -usr/lib/sane/libsane-leo.so -usr/lib/sane/libsane-leo.so.1 -usr/lib/sane/libsane-leo.so.1.0.28 -#usr/lib/sane/libsane-lexmark.la -usr/lib/sane/libsane-lexmark.so -usr/lib/sane/libsane-lexmark.so.1 -usr/lib/sane/libsane-lexmark.so.1.0.28 -#usr/lib/sane/libsane-ma1509.la -usr/lib/sane/libsane-ma1509.so -usr/lib/sane/libsane-ma1509.so.1 -usr/lib/sane/libsane-ma1509.so.1.0.28 -#usr/lib/sane/libsane-magicolor.la -usr/lib/sane/libsane-magicolor.so -usr/lib/sane/libsane-magicolor.so.1 -usr/lib/sane/libsane-magicolor.so.1.0.28 -#usr/lib/sane/libsane-matsushita.la -usr/lib/sane/libsane-matsushita.so -usr/lib/sane/libsane-matsushita.so.1 -usr/lib/sane/libsane-matsushita.so.1.0.28 -#usr/lib/sane/libsane-microtek.la -usr/lib/sane/libsane-microtek.so -usr/lib/sane/libsane-microtek.so.1 -usr/lib/sane/libsane-microtek.so.1.0.28 -#usr/lib/sane/libsane-microtek2.la -usr/lib/sane/libsane-microtek2.so -usr/lib/sane/libsane-microtek2.so.1 -usr/lib/sane/libsane-microtek2.so.1.0.28 -#usr/lib/sane/libsane-mustek.la -usr/lib/sane/libsane-mustek.so -usr/lib/sane/libsane-mustek.so.1 -usr/lib/sane/libsane-mustek.so.1.0.28 -#usr/lib/sane/libsane-mustek_pp.la -usr/lib/sane/libsane-mustek_pp.so -usr/lib/sane/libsane-mustek_pp.so.1 -usr/lib/sane/libsane-mustek_pp.so.1.0.28 -#usr/lib/sane/libsane-mustek_usb.la -usr/lib/sane/libsane-mustek_usb.so -usr/lib/sane/libsane-mustek_usb.so.1 -usr/lib/sane/libsane-mustek_usb.so.1.0.28 -#usr/lib/sane/libsane-mustek_usb2.la -usr/lib/sane/libsane-mustek_usb2.so -usr/lib/sane/libsane-mustek_usb2.so.1 -usr/lib/sane/libsane-mustek_usb2.so.1.0.28 -#usr/lib/sane/libsane-nec.la -usr/lib/sane/libsane-nec.so -usr/lib/sane/libsane-nec.so.1 -usr/lib/sane/libsane-nec.so.1.0.28 -#usr/lib/sane/libsane-net.la -usr/lib/sane/libsane-net.so -usr/lib/sane/libsane-net.so.1 -usr/lib/sane/libsane-net.so.1.0.28 -#usr/lib/sane/libsane-niash.la -usr/lib/sane/libsane-niash.so -usr/lib/sane/libsane-niash.so.1 -usr/lib/sane/libsane-niash.so.1.0.28 -#usr/lib/sane/libsane-p5.la -usr/lib/sane/libsane-p5.so -usr/lib/sane/libsane-p5.so.1 -usr/lib/sane/libsane-p5.so.1.0.28 -#usr/lib/sane/libsane-pie.la -usr/lib/sane/libsane-pie.so -usr/lib/sane/libsane-pie.so.1 -usr/lib/sane/libsane-pie.so.1.0.28 -#usr/lib/sane/libsane-pieusb.la -usr/lib/sane/libsane-pieusb.so -usr/lib/sane/libsane-pieusb.so.1 -usr/lib/sane/libsane-pieusb.so.1.0.28 -#usr/lib/sane/libsane-pixma.la -usr/lib/sane/libsane-pixma.so -usr/lib/sane/libsane-pixma.so.1 -usr/lib/sane/libsane-pixma.so.1.0.28 -#usr/lib/sane/libsane-plustek.la -usr/lib/sane/libsane-plustek.so -usr/lib/sane/libsane-plustek.so.1 -usr/lib/sane/libsane-plustek.so.1.0.28 -#usr/lib/sane/libsane-plustek_pp.la -usr/lib/sane/libsane-plustek_pp.so -usr/lib/sane/libsane-plustek_pp.so.1 -usr/lib/sane/libsane-plustek_pp.so.1.0.28 -#usr/lib/sane/libsane-ricoh.la -usr/lib/sane/libsane-ricoh.so -usr/lib/sane/libsane-ricoh.so.1 -usr/lib/sane/libsane-ricoh.so.1.0.28 -#usr/lib/sane/libsane-ricoh2.la -usr/lib/sane/libsane-ricoh2.so -usr/lib/sane/libsane-ricoh2.so.1 -usr/lib/sane/libsane-ricoh2.so.1.0.28 -#usr/lib/sane/libsane-rts8891.la -usr/lib/sane/libsane-rts8891.so -usr/lib/sane/libsane-rts8891.so.1 -usr/lib/sane/libsane-rts8891.so.1.0.28 -#usr/lib/sane/libsane-s9036.la -usr/lib/sane/libsane-s9036.so -usr/lib/sane/libsane-s9036.so.1 -usr/lib/sane/libsane-s9036.so.1.0.28 -#usr/lib/sane/libsane-sceptre.la -usr/lib/sane/libsane-sceptre.so -usr/lib/sane/libsane-sceptre.so.1 -usr/lib/sane/libsane-sceptre.so.1.0.28 -#usr/lib/sane/libsane-sharp.la -usr/lib/sane/libsane-sharp.so -usr/lib/sane/libsane-sharp.so.1 -usr/lib/sane/libsane-sharp.so.1.0.28 -#usr/lib/sane/libsane-sm3600.la -usr/lib/sane/libsane-sm3600.so -usr/lib/sane/libsane-sm3600.so.1 -usr/lib/sane/libsane-sm3600.so.1.0.28 -#usr/lib/sane/libsane-sm3840.la -usr/lib/sane/libsane-sm3840.so -usr/lib/sane/libsane-sm3840.so.1 -usr/lib/sane/libsane-sm3840.so.1.0.28 -#usr/lib/sane/libsane-snapscan.la -usr/lib/sane/libsane-snapscan.so -usr/lib/sane/libsane-snapscan.so.1 -usr/lib/sane/libsane-snapscan.so.1.0.28 -#usr/lib/sane/libsane-sp15c.la -usr/lib/sane/libsane-sp15c.so -usr/lib/sane/libsane-sp15c.so.1 -usr/lib/sane/libsane-sp15c.so.1.0.28 -#usr/lib/sane/libsane-st400.la -usr/lib/sane/libsane-st400.so -usr/lib/sane/libsane-st400.so.1 -usr/lib/sane/libsane-st400.so.1.0.28 -#usr/lib/sane/libsane-stv680.la -usr/lib/sane/libsane-stv680.so -usr/lib/sane/libsane-stv680.so.1 -usr/lib/sane/libsane-stv680.so.1.0.28 -#usr/lib/sane/libsane-tamarack.la -usr/lib/sane/libsane-tamarack.so -usr/lib/sane/libsane-tamarack.so.1 -usr/lib/sane/libsane-tamarack.so.1.0.28 -#usr/lib/sane/libsane-teco1.la -usr/lib/sane/libsane-teco1.so -usr/lib/sane/libsane-teco1.so.1 -usr/lib/sane/libsane-teco1.so.1.0.28 -#usr/lib/sane/libsane-teco2.la -usr/lib/sane/libsane-teco2.so -usr/lib/sane/libsane-teco2.so.1 -usr/lib/sane/libsane-teco2.so.1.0.28 -#usr/lib/sane/libsane-teco3.la -usr/lib/sane/libsane-teco3.so -usr/lib/sane/libsane-teco3.so.1 -usr/lib/sane/libsane-teco3.so.1.0.28 -#usr/lib/sane/libsane-test.la -usr/lib/sane/libsane-test.so -usr/lib/sane/libsane-test.so.1 -usr/lib/sane/libsane-test.so.1.0.28 -#usr/lib/sane/libsane-u12.la -usr/lib/sane/libsane-u12.so -usr/lib/sane/libsane-u12.so.1 -usr/lib/sane/libsane-u12.so.1.0.28 -#usr/lib/sane/libsane-umax.la -usr/lib/sane/libsane-umax.so -usr/lib/sane/libsane-umax.so.1 -usr/lib/sane/libsane-umax.so.1.0.28 -#usr/lib/sane/libsane-umax1220u.la -usr/lib/sane/libsane-umax1220u.so -usr/lib/sane/libsane-umax1220u.so.1 -usr/lib/sane/libsane-umax1220u.so.1.0.28 -#usr/lib/sane/libsane-umax_pp.la -usr/lib/sane/libsane-umax_pp.so -usr/lib/sane/libsane-umax_pp.so.1 -usr/lib/sane/libsane-umax_pp.so.1.0.28 -#usr/lib/sane/libsane-xerox_mfp.la -usr/lib/sane/libsane-xerox_mfp.so -usr/lib/sane/libsane-xerox_mfp.so.1 -usr/lib/sane/libsane-xerox_mfp.so.1.0.28 -usr/sbin/saned -#usr/share/doc/sane-backends -#usr/share/doc/sane-backends/AUTHORS -#usr/share/doc/sane-backends/COPYING -#usr/share/doc/sane-backends/ChangeLog -#usr/share/doc/sane-backends/LICENSE -#usr/share/doc/sane-backends/NEWS -#usr/share/doc/sane-backends/PROBLEMS -#usr/share/doc/sane-backends/PROJECTS -#usr/share/doc/sane-backends/README -#usr/share/doc/sane-backends/README.aix -#usr/share/doc/sane-backends/README.beos -#usr/share/doc/sane-backends/README.darwin -#usr/share/doc/sane-backends/README.djpeg -#usr/share/doc/sane-backends/README.freebsd -#usr/share/doc/sane-backends/README.hp-ux -#usr/share/doc/sane-backends/README.linux -#usr/share/doc/sane-backends/README.netbsd -#usr/share/doc/sane-backends/README.openbsd -#usr/share/doc/sane-backends/README.os2 -#usr/share/doc/sane-backends/README.solaris -#usr/share/doc/sane-backends/README.unixware2 -#usr/share/doc/sane-backends/README.unixware7 -#usr/share/doc/sane-backends/README.windows -#usr/share/doc/sane-backends/README.zeta -#usr/share/doc/sane-backends/backend-writing.txt -#usr/share/doc/sane-backends/canon -#usr/share/doc/sane-backends/canon/canon.changes -#usr/share/doc/sane-backends/canon/canon.install2700F.txt -#usr/share/doc/sane-backends/gt68xx -#usr/share/doc/sane-backends/gt68xx/gt68xx.CHANGES -#usr/share/doc/sane-backends/gt68xx/gt68xx.TODO -#usr/share/doc/sane-backends/leo -#usr/share/doc/sane-backends/leo/leo.txt -#usr/share/doc/sane-backends/matsushita -#usr/share/doc/sane-backends/matsushita/matsushita.txt -#usr/share/doc/sane-backends/mustek -#usr/share/doc/sane-backends/mustek/mustek.CHANGES -#usr/share/doc/sane-backends/mustek_usb -#usr/share/doc/sane-backends/mustek_usb/mustek_usb.CHANGES -#usr/share/doc/sane-backends/mustek_usb/mustek_usb.TODO -#usr/share/doc/sane-backends/mustek_usb2 -#usr/share/doc/sane-backends/mustek_usb2/mustek_usb2.CHANGES -#usr/share/doc/sane-backends/mustek_usb2/mustek_usb2.TODO -#usr/share/doc/sane-backends/niash -#usr/share/doc/sane-backends/niash/niash.TODO -#usr/share/doc/sane-backends/plustek -#usr/share/doc/sane-backends/plustek/FAQ -#usr/share/doc/sane-backends/plustek/MakeModule.sh -#usr/share/doc/sane-backends/plustek/Makefile.kernel24 -#usr/share/doc/sane-backends/plustek/Makefile.kernel26 -#usr/share/doc/sane-backends/plustek/Plustek-PARPORT-TODO.txt -#usr/share/doc/sane-backends/plustek/Plustek-PARPORT.changes -#usr/share/doc/sane-backends/plustek/Plustek-PARPORT.txt -#usr/share/doc/sane-backends/plustek/Plustek-USB-TODO.txt -#usr/share/doc/sane-backends/plustek/Plustek-USB.changes -#usr/share/doc/sane-backends/plustek/Plustek-USB.txt -#usr/share/doc/sane-backends/sane-backends-external.html -#usr/share/doc/sane-backends/sane-backends.html -#usr/share/doc/sane-backends/sane-mfgs-external.html -#usr/share/doc/sane-backends/sane-mfgs.html -#usr/share/doc/sane-backends/sceptre -#usr/share/doc/sane-backends/sceptre/s1200.txt -#usr/share/doc/sane-backends/teco -#usr/share/doc/sane-backends/teco/teco1.txt -#usr/share/doc/sane-backends/teco/teco2.txt -#usr/share/doc/sane-backends/teco/teco3.txt -#usr/share/doc/sane-backends/u12 -#usr/share/doc/sane-backends/u12/U12.changes -#usr/share/doc/sane-backends/u12/U12.todo -#usr/share/doc/sane-backends/umax -#usr/share/doc/sane-backends/umax/negative-types.txt -#usr/share/doc/sane-backends/umax/sane-logo.jpg -#usr/share/doc/sane-backends/umax/sane-umax-advanced-options-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-advanced.jpg -#usr/share/doc/sane-backends/umax/sane-umax-astra-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-config-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-histogram.jpg -#usr/share/doc/sane-backends/umax/sane-umax-mirage-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-not-listed-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-others-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-parport-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-powerlook-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-scanner-clones-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-speed-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-standard-options-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-standard.jpg -#usr/share/doc/sane-backends/umax/sane-umax-text.jpg -#usr/share/doc/sane-backends/umax/sane-umax-text2.jpg -#usr/share/doc/sane-backends/umax/sane-umax-text4.jpg -#usr/share/doc/sane-backends/umax/sane-umax-uc-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-vista-doc.html -#usr/share/doc/sane-backends/umax/sane-umax.jpg -#usr/share/doc/sane-backends/umax/umax.BUGS -#usr/share/doc/sane-backends/umax/umax.CHANGES -#usr/share/doc/sane-backends/umax/umax.FAQ -#usr/share/doc/sane-backends/umax/umax.TODO -#usr/share/locale/bg/LC_MESSAGES/sane-backends.mo -#usr/share/locale/ca/LC_MESSAGES/sane-backends.mo -#usr/share/locale/ca@valencia/LC_MESSAGES/sane-backends.mo -#usr/share/locale/cs/LC_MESSAGES/sane-backends.mo -#usr/share/locale/da/LC_MESSAGES/sane-backends.mo -#usr/share/locale/de/LC_MESSAGES/sane-backends.mo -#usr/share/locale/en@boldquot/LC_MESSAGES/sane-backends.mo -#usr/share/locale/en@quot/LC_MESSAGES/sane-backends.mo -#usr/share/locale/en_GB/LC_MESSAGES/sane-backends.mo -#usr/share/locale/eo/LC_MESSAGES/sane-backends.mo -#usr/share/locale/es/LC_MESSAGES/sane-backends.mo -#usr/share/locale/fi/LC_MESSAGES/sane-backends.mo -#usr/share/locale/fr/LC_MESSAGES/sane-backends.mo -#usr/share/locale/gl/LC_MESSAGES/sane-backends.mo -#usr/share/locale/he/LC_MESSAGES/sane-backends.mo -#usr/share/locale/hu/LC_MESSAGES/sane-backends.mo -#usr/share/locale/it/LC_MESSAGES/sane-backends.mo -#usr/share/locale/ja/LC_MESSAGES/sane-backends.mo -#usr/share/locale/nb/LC_MESSAGES/sane-backends.mo -#usr/share/locale/nl/LC_MESSAGES/sane-backends.mo -#usr/share/locale/pl/LC_MESSAGES/sane-backends.mo -#usr/share/locale/pt/LC_MESSAGES/sane-backends.mo -#usr/share/locale/ru/LC_MESSAGES/sane-backends.mo -#usr/share/locale/sv/LC_MESSAGES/sane-backends.mo -#usr/share/locale/uk/LC_MESSAGES/sane-backends.mo -#usr/share/man/man1/gamma4scanimage.1 -#usr/share/man/man1/sane-config.1 -#usr/share/man/man1/sane-find-scanner.1 -#usr/share/man/man1/scanimage.1 -#usr/share/man/man5/sane-abaton.5 -#usr/share/man/man5/sane-agfafocus.5 -#usr/share/man/man5/sane-apple.5 -#usr/share/man/man5/sane-artec.5 -#usr/share/man/man5/sane-artec_eplus48u.5 -#usr/share/man/man5/sane-as6e.5 -#usr/share/man/man5/sane-avision.5 -#usr/share/man/man5/sane-bh.5 -#usr/share/man/man5/sane-canon.5 -#usr/share/man/man5/sane-canon630u.5 -#usr/share/man/man5/sane-canon_dr.5 -#usr/share/man/man5/sane-cardscan.5 -#usr/share/man/man5/sane-coolscan.5 -#usr/share/man/man5/sane-coolscan2.5 -#usr/share/man/man5/sane-coolscan3.5 -#usr/share/man/man5/sane-dc210.5 -#usr/share/man/man5/sane-dc240.5 -#usr/share/man/man5/sane-dc25.5 -#usr/share/man/man5/sane-dll.5 -#usr/share/man/man5/sane-dmc.5 -#usr/share/man/man5/sane-epjitsu.5 -#usr/share/man/man5/sane-epson.5 -#usr/share/man/man5/sane-epson2.5 -#usr/share/man/man5/sane-epsonds.5 -#usr/share/man/man5/sane-fujitsu.5 -#usr/share/man/man5/sane-genesys.5 -#usr/share/man/man5/sane-gt68xx.5 -#usr/share/man/man5/sane-hp.5 -#usr/share/man/man5/sane-hp3500.5 -#usr/share/man/man5/sane-hp3900.5 -#usr/share/man/man5/sane-hp4200.5 -#usr/share/man/man5/sane-hp5400.5 -#usr/share/man/man5/sane-hp5590.5 -#usr/share/man/man5/sane-hpljm1005.5 -#usr/share/man/man5/sane-hs2p.5 -#usr/share/man/man5/sane-ibm.5 -#usr/share/man/man5/sane-kodak.5 -#usr/share/man/man5/sane-kodakaio.5 -#usr/share/man/man5/sane-kvs1025.5 -#usr/share/man/man5/sane-kvs20xx.5 -#usr/share/man/man5/sane-kvs40xx.5 -#usr/share/man/man5/sane-leo.5 -#usr/share/man/man5/sane-lexmark.5 -#usr/share/man/man5/sane-ma1509.5 -#usr/share/man/man5/sane-magicolor.5 -#usr/share/man/man5/sane-matsushita.5 -#usr/share/man/man5/sane-microtek.5 -#usr/share/man/man5/sane-microtek2.5 -#usr/share/man/man5/sane-mustek.5 -#usr/share/man/man5/sane-mustek_pp.5 -#usr/share/man/man5/sane-mustek_usb.5 -#usr/share/man/man5/sane-mustek_usb2.5 -#usr/share/man/man5/sane-nec.5 -#usr/share/man/man5/sane-net.5 -#usr/share/man/man5/sane-niash.5 -#usr/share/man/man5/sane-p5.5 -#usr/share/man/man5/sane-pie.5 -#usr/share/man/man5/sane-pieusb.5 -#usr/share/man/man5/sane-pixma.5 -#usr/share/man/man5/sane-plustek.5 -#usr/share/man/man5/sane-plustek_pp.5 -#usr/share/man/man5/sane-ricoh.5 -#usr/share/man/man5/sane-rts8891.5 -#usr/share/man/man5/sane-s9036.5 -#usr/share/man/man5/sane-sceptre.5 -#usr/share/man/man5/sane-scsi.5 -#usr/share/man/man5/sane-sharp.5 -#usr/share/man/man5/sane-sm3600.5 -#usr/share/man/man5/sane-sm3840.5 -#usr/share/man/man5/sane-snapscan.5 -#usr/share/man/man5/sane-sp15c.5 -#usr/share/man/man5/sane-st400.5 -#usr/share/man/man5/sane-stv680.5 -#usr/share/man/man5/sane-tamarack.5 -#usr/share/man/man5/sane-teco1.5 -#usr/share/man/man5/sane-teco2.5 -#usr/share/man/man5/sane-teco3.5 -#usr/share/man/man5/sane-test.5 -#usr/share/man/man5/sane-u12.5 -#usr/share/man/man5/sane-umax.5 -#usr/share/man/man5/sane-umax1220u.5 -#usr/share/man/man5/sane-umax_pp.5 -#usr/share/man/man5/sane-usb.5 -#usr/share/man/man5/sane-xerox_mfp.5 -#usr/share/man/man7/sane.7 -#usr/share/man/man8/saned.8 -#usr/share/sane -usr/share/sane/artec_eplus48u -usr/share/sane/epjitsu -usr/share/sane/gt68xx -usr/share/sane/snapscan -#usr/var -#usr/var/lock -usr/var/lock/sane -var/ipfire/backup/addons/includes/sane diff --git a/config/rootfiles/packages/armv5tel/sane b/config/rootfiles/packages/armv5tel/sane deleted file mode 100644 index 91b5de3e1..000000000 --- a/config/rootfiles/packages/armv5tel/sane +++ /dev/null @@ -1,653 +0,0 @@ -etc/rc.d/init.d/sane -etc/rc.d/rc0.d/K10sane -etc/rc.d/rc3.d/S95sane -etc/rc.d/rc6.d/K10sane -#etc/sane.d -etc/sane.d/abaton.conf -etc/sane.d/agfafocus.conf -etc/sane.d/apple.conf -etc/sane.d/artec.conf -etc/sane.d/artec_eplus48u.conf -etc/sane.d/avision.conf -etc/sane.d/bh.conf -etc/sane.d/canon.conf -etc/sane.d/canon630u.conf -etc/sane.d/canon_dr.conf -etc/sane.d/cardscan.conf -etc/sane.d/coolscan.conf -etc/sane.d/coolscan2.conf -etc/sane.d/coolscan3.conf -etc/sane.d/dc210.conf -etc/sane.d/dc240.conf -etc/sane.d/dc25.conf -etc/sane.d/dell1600n_net.conf -etc/sane.d/dll.conf -etc/sane.d/dll.d -etc/sane.d/dmc.conf -etc/sane.d/epjitsu.conf -etc/sane.d/epson.conf -etc/sane.d/epson2.conf -etc/sane.d/epsonds.conf -etc/sane.d/fujitsu.conf -etc/sane.d/genesys.conf -etc/sane.d/gt68xx.conf -etc/sane.d/hp.conf -etc/sane.d/hp3900.conf -etc/sane.d/hp4200.conf -etc/sane.d/hp5400.conf -etc/sane.d/hs2p.conf -etc/sane.d/ibm.conf -etc/sane.d/kodak.conf -etc/sane.d/kodakaio.conf -etc/sane.d/kvs1025.conf -etc/sane.d/leo.conf -etc/sane.d/lexmark.conf -etc/sane.d/ma1509.conf -etc/sane.d/magicolor.conf -etc/sane.d/matsushita.conf -etc/sane.d/microtek.conf -etc/sane.d/microtek2.conf -etc/sane.d/mustek.conf -etc/sane.d/mustek_pp.conf -etc/sane.d/mustek_usb.conf -etc/sane.d/nec.conf -etc/sane.d/net.conf -etc/sane.d/p5.conf -etc/sane.d/pie.conf -etc/sane.d/pieusb.conf -etc/sane.d/pixma.conf -etc/sane.d/plustek.conf -etc/sane.d/plustek_pp.conf -etc/sane.d/ricoh.conf -etc/sane.d/rts8891.conf -etc/sane.d/s9036.conf -etc/sane.d/saned.conf -etc/sane.d/sceptre.conf -etc/sane.d/sharp.conf -etc/sane.d/sm3840.conf -etc/sane.d/snapscan.conf -etc/sane.d/sp15c.conf -etc/sane.d/st400.conf -etc/sane.d/stv680.conf -etc/sane.d/tamarack.conf -etc/sane.d/teco1.conf -etc/sane.d/teco2.conf -etc/sane.d/teco3.conf -etc/sane.d/test.conf -etc/sane.d/u12.conf -etc/sane.d/umax.conf -etc/sane.d/umax1220u.conf -etc/sane.d/umax_pp.conf -etc/sane.d/xerox_mfp.conf -usr/bin/gamma4scanimage -usr/bin/sane-config -usr/bin/sane-find-scanner -usr/bin/scanimage -usr/bin/umax_pp -#usr/include/sane -usr/include/sane/sane.h -usr/include/sane/saneopts.h -#usr/lib/libsane.la -usr/lib/libsane.so -usr/lib/libsane.so.1 -usr/lib/libsane.so.1.0.28 -#usr/lib/pkgconfig/sane-backends.pc -#usr/lib/sane -#usr/lib/sane/libsane-abaton.la -usr/lib/sane/libsane-abaton.so -usr/lib/sane/libsane-abaton.so.1 -usr/lib/sane/libsane-abaton.so.1.0.28 -#usr/lib/sane/libsane-agfafocus.la -usr/lib/sane/libsane-agfafocus.so -usr/lib/sane/libsane-agfafocus.so.1 -usr/lib/sane/libsane-agfafocus.so.1.0.28 -#usr/lib/sane/libsane-apple.la -usr/lib/sane/libsane-apple.so -usr/lib/sane/libsane-apple.so.1 -usr/lib/sane/libsane-apple.so.1.0.28 -#usr/lib/sane/libsane-artec.la -usr/lib/sane/libsane-artec.so -usr/lib/sane/libsane-artec.so.1 -usr/lib/sane/libsane-artec.so.1.0.28 -#usr/lib/sane/libsane-artec_eplus48u.la -usr/lib/sane/libsane-artec_eplus48u.so -usr/lib/sane/libsane-artec_eplus48u.so.1 -usr/lib/sane/libsane-artec_eplus48u.so.1.0.28 -#usr/lib/sane/libsane-as6e.la -usr/lib/sane/libsane-as6e.so -usr/lib/sane/libsane-as6e.so.1 -usr/lib/sane/libsane-as6e.so.1.0.28 -#usr/lib/sane/libsane-avision.la -usr/lib/sane/libsane-avision.so -usr/lib/sane/libsane-avision.so.1 -usr/lib/sane/libsane-avision.so.1.0.28 -#usr/lib/sane/libsane-bh.la -usr/lib/sane/libsane-bh.so -usr/lib/sane/libsane-bh.so.1 -usr/lib/sane/libsane-bh.so.1.0.28 -#usr/lib/sane/libsane-canon.la -usr/lib/sane/libsane-canon.so -usr/lib/sane/libsane-canon.so.1 -usr/lib/sane/libsane-canon.so.1.0.28 -#usr/lib/sane/libsane-canon630u.la -usr/lib/sane/libsane-canon630u.so -usr/lib/sane/libsane-canon630u.so.1 -usr/lib/sane/libsane-canon630u.so.1.0.28 -#usr/lib/sane/libsane-canon_dr.la -usr/lib/sane/libsane-canon_dr.so -usr/lib/sane/libsane-canon_dr.so.1 -usr/lib/sane/libsane-canon_dr.so.1.0.28 -#usr/lib/sane/libsane-cardscan.la -usr/lib/sane/libsane-cardscan.so -usr/lib/sane/libsane-cardscan.so.1 -usr/lib/sane/libsane-cardscan.so.1.0.28 -#usr/lib/sane/libsane-coolscan.la -usr/lib/sane/libsane-coolscan.so -usr/lib/sane/libsane-coolscan.so.1 -usr/lib/sane/libsane-coolscan.so.1.0.28 -#usr/lib/sane/libsane-coolscan2.la -usr/lib/sane/libsane-coolscan2.so -usr/lib/sane/libsane-coolscan2.so.1 -usr/lib/sane/libsane-coolscan2.so.1.0.28 -#usr/lib/sane/libsane-coolscan3.la -usr/lib/sane/libsane-coolscan3.so -usr/lib/sane/libsane-coolscan3.so.1 -usr/lib/sane/libsane-coolscan3.so.1.0.28 -#usr/lib/sane/libsane-dc210.la -usr/lib/sane/libsane-dc210.so -usr/lib/sane/libsane-dc210.so.1 -usr/lib/sane/libsane-dc210.so.1.0.28 -#usr/lib/sane/libsane-dc240.la -usr/lib/sane/libsane-dc240.so -usr/lib/sane/libsane-dc240.so.1 -usr/lib/sane/libsane-dc240.so.1.0.28 -#usr/lib/sane/libsane-dc25.la -usr/lib/sane/libsane-dc25.so -usr/lib/sane/libsane-dc25.so.1 -usr/lib/sane/libsane-dc25.so.1.0.28 -#usr/lib/sane/libsane-dell1600n_net.la -usr/lib/sane/libsane-dell1600n_net.so -usr/lib/sane/libsane-dell1600n_net.so.1 -usr/lib/sane/libsane-dell1600n_net.so.1.0.28 -#usr/lib/sane/libsane-dll.la -usr/lib/sane/libsane-dll.so -usr/lib/sane/libsane-dll.so.1 -usr/lib/sane/libsane-dll.so.1.0.28 -#usr/lib/sane/libsane-dmc.la -usr/lib/sane/libsane-dmc.so -usr/lib/sane/libsane-dmc.so.1 -usr/lib/sane/libsane-dmc.so.1.0.28 -#usr/lib/sane/libsane-epjitsu.la -usr/lib/sane/libsane-epjitsu.so -usr/lib/sane/libsane-epjitsu.so.1 -usr/lib/sane/libsane-epjitsu.so.1.0.28 -#usr/lib/sane/libsane-epson.la -usr/lib/sane/libsane-epson.so -usr/lib/sane/libsane-epson.so.1 -usr/lib/sane/libsane-epson.so.1.0.28 -#usr/lib/sane/libsane-epson2.la -usr/lib/sane/libsane-epson2.so -usr/lib/sane/libsane-epson2.so.1 -usr/lib/sane/libsane-epson2.so.1.0.28 -#usr/lib/sane/libsane-epsonds.la -usr/lib/sane/libsane-epsonds.so -usr/lib/sane/libsane-epsonds.so.1 -usr/lib/sane/libsane-epsonds.so.1.0.28 -#usr/lib/sane/libsane-fujitsu.la -usr/lib/sane/libsane-fujitsu.so -usr/lib/sane/libsane-fujitsu.so.1 -usr/lib/sane/libsane-fujitsu.so.1.0.28 -#usr/lib/sane/libsane-genesys.la -usr/lib/sane/libsane-genesys.so -usr/lib/sane/libsane-genesys.so.1 -usr/lib/sane/libsane-genesys.so.1.0.28 -#usr/lib/sane/libsane-gt68xx.la -usr/lib/sane/libsane-gt68xx.so -usr/lib/sane/libsane-gt68xx.so.1 -usr/lib/sane/libsane-gt68xx.so.1.0.28 -#usr/lib/sane/libsane-hp.la -usr/lib/sane/libsane-hp.so -usr/lib/sane/libsane-hp.so.1 -usr/lib/sane/libsane-hp.so.1.0.28 -#usr/lib/sane/libsane-hp3500.la -usr/lib/sane/libsane-hp3500.so -usr/lib/sane/libsane-hp3500.so.1 -usr/lib/sane/libsane-hp3500.so.1.0.28 -#usr/lib/sane/libsane-hp3900.la -usr/lib/sane/libsane-hp3900.so -usr/lib/sane/libsane-hp3900.so.1 -usr/lib/sane/libsane-hp3900.so.1.0.28 -#usr/lib/sane/libsane-hp4200.la -usr/lib/sane/libsane-hp4200.so -usr/lib/sane/libsane-hp4200.so.1 -usr/lib/sane/libsane-hp4200.so.1.0.28 -#usr/lib/sane/libsane-hp5400.la -usr/lib/sane/libsane-hp5400.so -usr/lib/sane/libsane-hp5400.so.1 -usr/lib/sane/libsane-hp5400.so.1.0.28 -#usr/lib/sane/libsane-hp5590.la -usr/lib/sane/libsane-hp5590.so -usr/lib/sane/libsane-hp5590.so.1 -usr/lib/sane/libsane-hp5590.so.1.0.28 -#usr/lib/sane/libsane-hpljm1005.la -usr/lib/sane/libsane-hpljm1005.so -usr/lib/sane/libsane-hpljm1005.so.1 -usr/lib/sane/libsane-hpljm1005.so.1.0.28 -#usr/lib/sane/libsane-hs2p.la -usr/lib/sane/libsane-hs2p.so -usr/lib/sane/libsane-hs2p.so.1 -usr/lib/sane/libsane-hs2p.so.1.0.28 -#usr/lib/sane/libsane-ibm.la -usr/lib/sane/libsane-ibm.so -usr/lib/sane/libsane-ibm.so.1 -usr/lib/sane/libsane-ibm.so.1.0.28 -#usr/lib/sane/libsane-kodak.la -usr/lib/sane/libsane-kodak.so -usr/lib/sane/libsane-kodak.so.1 -usr/lib/sane/libsane-kodak.so.1.0.28 -#usr/lib/sane/libsane-kodakaio.la -usr/lib/sane/libsane-kodakaio.so -usr/lib/sane/libsane-kodakaio.so.1 -usr/lib/sane/libsane-kodakaio.so.1.0.28 -#usr/lib/sane/libsane-kvs1025.la -usr/lib/sane/libsane-kvs1025.so -usr/lib/sane/libsane-kvs1025.so.1 -usr/lib/sane/libsane-kvs1025.so.1.0.28 -#usr/lib/sane/libsane-kvs20xx.la -usr/lib/sane/libsane-kvs20xx.so -usr/lib/sane/libsane-kvs20xx.so.1 -usr/lib/sane/libsane-kvs20xx.so.1.0.28 -#usr/lib/sane/libsane-kvs40xx.la -usr/lib/sane/libsane-kvs40xx.so -usr/lib/sane/libsane-kvs40xx.so.1 -usr/lib/sane/libsane-kvs40xx.so.1.0.28 -#usr/lib/sane/libsane-leo.la -usr/lib/sane/libsane-leo.so -usr/lib/sane/libsane-leo.so.1 -usr/lib/sane/libsane-leo.so.1.0.28 -#usr/lib/sane/libsane-lexmark.la -usr/lib/sane/libsane-lexmark.so -usr/lib/sane/libsane-lexmark.so.1 -usr/lib/sane/libsane-lexmark.so.1.0.28 -#usr/lib/sane/libsane-ma1509.la -usr/lib/sane/libsane-ma1509.so -usr/lib/sane/libsane-ma1509.so.1 -usr/lib/sane/libsane-ma1509.so.1.0.28 -#usr/lib/sane/libsane-magicolor.la -usr/lib/sane/libsane-magicolor.so -usr/lib/sane/libsane-magicolor.so.1 -usr/lib/sane/libsane-magicolor.so.1.0.28 -#usr/lib/sane/libsane-matsushita.la -usr/lib/sane/libsane-matsushita.so -usr/lib/sane/libsane-matsushita.so.1 -usr/lib/sane/libsane-matsushita.so.1.0.28 -#usr/lib/sane/libsane-microtek.la -usr/lib/sane/libsane-microtek.so -usr/lib/sane/libsane-microtek.so.1 -usr/lib/sane/libsane-microtek.so.1.0.28 -#usr/lib/sane/libsane-microtek2.la -usr/lib/sane/libsane-microtek2.so -usr/lib/sane/libsane-microtek2.so.1 -usr/lib/sane/libsane-microtek2.so.1.0.28 -#usr/lib/sane/libsane-mustek.la -usr/lib/sane/libsane-mustek.so -usr/lib/sane/libsane-mustek.so.1 -usr/lib/sane/libsane-mustek.so.1.0.28 -#usr/lib/sane/libsane-mustek_pp.la -usr/lib/sane/libsane-mustek_pp.so -usr/lib/sane/libsane-mustek_pp.so.1 -usr/lib/sane/libsane-mustek_pp.so.1.0.28 -#usr/lib/sane/libsane-mustek_usb.la -usr/lib/sane/libsane-mustek_usb.so -usr/lib/sane/libsane-mustek_usb.so.1 -usr/lib/sane/libsane-mustek_usb.so.1.0.28 -#usr/lib/sane/libsane-mustek_usb2.la -usr/lib/sane/libsane-mustek_usb2.so -usr/lib/sane/libsane-mustek_usb2.so.1 -usr/lib/sane/libsane-mustek_usb2.so.1.0.28 -#usr/lib/sane/libsane-nec.la -usr/lib/sane/libsane-nec.so -usr/lib/sane/libsane-nec.so.1 -usr/lib/sane/libsane-nec.so.1.0.28 -#usr/lib/sane/libsane-net.la -usr/lib/sane/libsane-net.so -usr/lib/sane/libsane-net.so.1 -usr/lib/sane/libsane-net.so.1.0.28 -#usr/lib/sane/libsane-niash.la -usr/lib/sane/libsane-niash.so -usr/lib/sane/libsane-niash.so.1 -usr/lib/sane/libsane-niash.so.1.0.28 -#usr/lib/sane/libsane-p5.la -usr/lib/sane/libsane-p5.so -usr/lib/sane/libsane-p5.so.1 -usr/lib/sane/libsane-p5.so.1.0.28 -#usr/lib/sane/libsane-pie.la -usr/lib/sane/libsane-pie.so -usr/lib/sane/libsane-pie.so.1 -usr/lib/sane/libsane-pie.so.1.0.28 -#usr/lib/sane/libsane-pieusb.la -usr/lib/sane/libsane-pieusb.so -usr/lib/sane/libsane-pieusb.so.1 -usr/lib/sane/libsane-pieusb.so.1.0.28 -#usr/lib/sane/libsane-pixma.la -usr/lib/sane/libsane-pixma.so -usr/lib/sane/libsane-pixma.so.1 -usr/lib/sane/libsane-pixma.so.1.0.28 -#usr/lib/sane/libsane-plustek.la -usr/lib/sane/libsane-plustek.so -usr/lib/sane/libsane-plustek.so.1 -usr/lib/sane/libsane-plustek.so.1.0.28 -#usr/lib/sane/libsane-plustek_pp.la -usr/lib/sane/libsane-plustek_pp.so -usr/lib/sane/libsane-plustek_pp.so.1 -usr/lib/sane/libsane-plustek_pp.so.1.0.28 -#usr/lib/sane/libsane-ricoh.la -usr/lib/sane/libsane-ricoh.so -usr/lib/sane/libsane-ricoh.so.1 -usr/lib/sane/libsane-ricoh.so.1.0.28 -#usr/lib/sane/libsane-ricoh2.la -usr/lib/sane/libsane-ricoh2.so -usr/lib/sane/libsane-ricoh2.so.1 -usr/lib/sane/libsane-ricoh2.so.1.0.28 -#usr/lib/sane/libsane-rts8891.la -usr/lib/sane/libsane-rts8891.so -usr/lib/sane/libsane-rts8891.so.1 -usr/lib/sane/libsane-rts8891.so.1.0.28 -#usr/lib/sane/libsane-s9036.la -usr/lib/sane/libsane-s9036.so -usr/lib/sane/libsane-s9036.so.1 -usr/lib/sane/libsane-s9036.so.1.0.28 -#usr/lib/sane/libsane-sceptre.la -usr/lib/sane/libsane-sceptre.so -usr/lib/sane/libsane-sceptre.so.1 -usr/lib/sane/libsane-sceptre.so.1.0.28 -#usr/lib/sane/libsane-sharp.la -usr/lib/sane/libsane-sharp.so -usr/lib/sane/libsane-sharp.so.1 -usr/lib/sane/libsane-sharp.so.1.0.28 -#usr/lib/sane/libsane-sm3600.la -usr/lib/sane/libsane-sm3600.so -usr/lib/sane/libsane-sm3600.so.1 -usr/lib/sane/libsane-sm3600.so.1.0.28 -#usr/lib/sane/libsane-sm3840.la -usr/lib/sane/libsane-sm3840.so -usr/lib/sane/libsane-sm3840.so.1 -usr/lib/sane/libsane-sm3840.so.1.0.28 -#usr/lib/sane/libsane-snapscan.la -usr/lib/sane/libsane-snapscan.so -usr/lib/sane/libsane-snapscan.so.1 -usr/lib/sane/libsane-snapscan.so.1.0.28 -#usr/lib/sane/libsane-sp15c.la -usr/lib/sane/libsane-sp15c.so -usr/lib/sane/libsane-sp15c.so.1 -usr/lib/sane/libsane-sp15c.so.1.0.28 -#usr/lib/sane/libsane-st400.la -usr/lib/sane/libsane-st400.so -usr/lib/sane/libsane-st400.so.1 -usr/lib/sane/libsane-st400.so.1.0.28 -#usr/lib/sane/libsane-stv680.la -usr/lib/sane/libsane-stv680.so -usr/lib/sane/libsane-stv680.so.1 -usr/lib/sane/libsane-stv680.so.1.0.28 -#usr/lib/sane/libsane-tamarack.la -usr/lib/sane/libsane-tamarack.so -usr/lib/sane/libsane-tamarack.so.1 -usr/lib/sane/libsane-tamarack.so.1.0.28 -#usr/lib/sane/libsane-teco1.la -usr/lib/sane/libsane-teco1.so -usr/lib/sane/libsane-teco1.so.1 -usr/lib/sane/libsane-teco1.so.1.0.28 -#usr/lib/sane/libsane-teco2.la -usr/lib/sane/libsane-teco2.so -usr/lib/sane/libsane-teco2.so.1 -usr/lib/sane/libsane-teco2.so.1.0.28 -#usr/lib/sane/libsane-teco3.la -usr/lib/sane/libsane-teco3.so -usr/lib/sane/libsane-teco3.so.1 -usr/lib/sane/libsane-teco3.so.1.0.28 -#usr/lib/sane/libsane-test.la -usr/lib/sane/libsane-test.so -usr/lib/sane/libsane-test.so.1 -usr/lib/sane/libsane-test.so.1.0.28 -#usr/lib/sane/libsane-u12.la -usr/lib/sane/libsane-u12.so -usr/lib/sane/libsane-u12.so.1 -usr/lib/sane/libsane-u12.so.1.0.28 -#usr/lib/sane/libsane-umax.la -usr/lib/sane/libsane-umax.so -usr/lib/sane/libsane-umax.so.1 -usr/lib/sane/libsane-umax.so.1.0.28 -#usr/lib/sane/libsane-umax1220u.la -usr/lib/sane/libsane-umax1220u.so -usr/lib/sane/libsane-umax1220u.so.1 -usr/lib/sane/libsane-umax1220u.so.1.0.28 -#usr/lib/sane/libsane-umax_pp.la -usr/lib/sane/libsane-umax_pp.so -usr/lib/sane/libsane-umax_pp.so.1 -usr/lib/sane/libsane-umax_pp.so.1.0.28 -#usr/lib/sane/libsane-xerox_mfp.la -usr/lib/sane/libsane-xerox_mfp.so -usr/lib/sane/libsane-xerox_mfp.so.1 -usr/lib/sane/libsane-xerox_mfp.so.1.0.28 -usr/sbin/saned -#usr/share/doc/sane-backends -#usr/share/doc/sane-backends/AUTHORS -#usr/share/doc/sane-backends/COPYING -#usr/share/doc/sane-backends/ChangeLog -#usr/share/doc/sane-backends/LICENSE -#usr/share/doc/sane-backends/NEWS -#usr/share/doc/sane-backends/PROBLEMS -#usr/share/doc/sane-backends/PROJECTS -#usr/share/doc/sane-backends/README -#usr/share/doc/sane-backends/README.aix -#usr/share/doc/sane-backends/README.beos -#usr/share/doc/sane-backends/README.darwin -#usr/share/doc/sane-backends/README.djpeg -#usr/share/doc/sane-backends/README.freebsd -#usr/share/doc/sane-backends/README.hp-ux -#usr/share/doc/sane-backends/README.linux -#usr/share/doc/sane-backends/README.netbsd -#usr/share/doc/sane-backends/README.openbsd -#usr/share/doc/sane-backends/README.os2 -#usr/share/doc/sane-backends/README.solaris -#usr/share/doc/sane-backends/README.unixware2 -#usr/share/doc/sane-backends/README.unixware7 -#usr/share/doc/sane-backends/README.windows -#usr/share/doc/sane-backends/README.zeta -#usr/share/doc/sane-backends/backend-writing.txt -#usr/share/doc/sane-backends/canon -#usr/share/doc/sane-backends/canon/canon.changes -#usr/share/doc/sane-backends/canon/canon.install2700F.txt -#usr/share/doc/sane-backends/gt68xx -#usr/share/doc/sane-backends/gt68xx/gt68xx.CHANGES -#usr/share/doc/sane-backends/gt68xx/gt68xx.TODO -#usr/share/doc/sane-backends/leo -#usr/share/doc/sane-backends/leo/leo.txt -#usr/share/doc/sane-backends/matsushita -#usr/share/doc/sane-backends/matsushita/matsushita.txt -#usr/share/doc/sane-backends/mustek -#usr/share/doc/sane-backends/mustek/mustek.CHANGES -#usr/share/doc/sane-backends/mustek_usb -#usr/share/doc/sane-backends/mustek_usb/mustek_usb.CHANGES -#usr/share/doc/sane-backends/mustek_usb/mustek_usb.TODO -#usr/share/doc/sane-backends/mustek_usb2 -#usr/share/doc/sane-backends/mustek_usb2/mustek_usb2.CHANGES -#usr/share/doc/sane-backends/mustek_usb2/mustek_usb2.TODO -#usr/share/doc/sane-backends/niash -#usr/share/doc/sane-backends/niash/niash.TODO -#usr/share/doc/sane-backends/plustek -#usr/share/doc/sane-backends/plustek/FAQ -#usr/share/doc/sane-backends/plustek/MakeModule.sh -#usr/share/doc/sane-backends/plustek/Makefile.kernel24 -#usr/share/doc/sane-backends/plustek/Makefile.kernel26 -#usr/share/doc/sane-backends/plustek/Plustek-PARPORT-TODO.txt -#usr/share/doc/sane-backends/plustek/Plustek-PARPORT.changes -#usr/share/doc/sane-backends/plustek/Plustek-PARPORT.txt -#usr/share/doc/sane-backends/plustek/Plustek-USB-TODO.txt -#usr/share/doc/sane-backends/plustek/Plustek-USB.changes -#usr/share/doc/sane-backends/plustek/Plustek-USB.txt -#usr/share/doc/sane-backends/sane-backends-external.html -#usr/share/doc/sane-backends/sane-backends.html -#usr/share/doc/sane-backends/sane-mfgs-external.html -#usr/share/doc/sane-backends/sane-mfgs.html -#usr/share/doc/sane-backends/sceptre -#usr/share/doc/sane-backends/sceptre/s1200.txt -#usr/share/doc/sane-backends/teco -#usr/share/doc/sane-backends/teco/teco1.txt -#usr/share/doc/sane-backends/teco/teco2.txt -#usr/share/doc/sane-backends/teco/teco3.txt -#usr/share/doc/sane-backends/u12 -#usr/share/doc/sane-backends/u12/U12.changes -#usr/share/doc/sane-backends/u12/U12.todo -#usr/share/doc/sane-backends/umax -#usr/share/doc/sane-backends/umax/negative-types.txt -#usr/share/doc/sane-backends/umax/sane-logo.jpg -#usr/share/doc/sane-backends/umax/sane-umax-advanced-options-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-advanced.jpg -#usr/share/doc/sane-backends/umax/sane-umax-astra-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-config-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-histogram.jpg -#usr/share/doc/sane-backends/umax/sane-umax-mirage-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-not-listed-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-others-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-parport-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-powerlook-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-scanner-clones-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-speed-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-standard-options-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-standard.jpg -#usr/share/doc/sane-backends/umax/sane-umax-text.jpg -#usr/share/doc/sane-backends/umax/sane-umax-text2.jpg -#usr/share/doc/sane-backends/umax/sane-umax-text4.jpg -#usr/share/doc/sane-backends/umax/sane-umax-uc-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-vista-doc.html -#usr/share/doc/sane-backends/umax/sane-umax.jpg -#usr/share/doc/sane-backends/umax/umax.BUGS -#usr/share/doc/sane-backends/umax/umax.CHANGES -#usr/share/doc/sane-backends/umax/umax.FAQ -#usr/share/doc/sane-backends/umax/umax.TODO -#usr/share/locale/bg/LC_MESSAGES/sane-backends.mo -#usr/share/locale/ca/LC_MESSAGES/sane-backends.mo -#usr/share/locale/ca@valencia/LC_MESSAGES/sane-backends.mo -#usr/share/locale/cs/LC_MESSAGES/sane-backends.mo -#usr/share/locale/da/LC_MESSAGES/sane-backends.mo -#usr/share/locale/de/LC_MESSAGES/sane-backends.mo -#usr/share/locale/en@boldquot/LC_MESSAGES/sane-backends.mo -#usr/share/locale/en@quot/LC_MESSAGES/sane-backends.mo -#usr/share/locale/en_GB/LC_MESSAGES/sane-backends.mo -#usr/share/locale/eo/LC_MESSAGES/sane-backends.mo -#usr/share/locale/es/LC_MESSAGES/sane-backends.mo -#usr/share/locale/fi/LC_MESSAGES/sane-backends.mo -#usr/share/locale/fr/LC_MESSAGES/sane-backends.mo -#usr/share/locale/gl/LC_MESSAGES/sane-backends.mo -#usr/share/locale/he/LC_MESSAGES/sane-backends.mo -#usr/share/locale/hu/LC_MESSAGES/sane-backends.mo -#usr/share/locale/it/LC_MESSAGES/sane-backends.mo -#usr/share/locale/ja/LC_MESSAGES/sane-backends.mo -#usr/share/locale/nb/LC_MESSAGES/sane-backends.mo -#usr/share/locale/nl/LC_MESSAGES/sane-backends.mo -#usr/share/locale/pl/LC_MESSAGES/sane-backends.mo -#usr/share/locale/pt/LC_MESSAGES/sane-backends.mo -#usr/share/locale/ru/LC_MESSAGES/sane-backends.mo -#usr/share/locale/sv/LC_MESSAGES/sane-backends.mo -#usr/share/locale/uk/LC_MESSAGES/sane-backends.mo -#usr/share/man/man1/gamma4scanimage.1 -#usr/share/man/man1/sane-config.1 -#usr/share/man/man1/sane-find-scanner.1 -#usr/share/man/man1/scanimage.1 -#usr/share/man/man5/sane-abaton.5 -#usr/share/man/man5/sane-agfafocus.5 -#usr/share/man/man5/sane-apple.5 -#usr/share/man/man5/sane-artec.5 -#usr/share/man/man5/sane-artec_eplus48u.5 -#usr/share/man/man5/sane-as6e.5 -#usr/share/man/man5/sane-avision.5 -#usr/share/man/man5/sane-bh.5 -#usr/share/man/man5/sane-canon.5 -#usr/share/man/man5/sane-canon630u.5 -#usr/share/man/man5/sane-canon_dr.5 -#usr/share/man/man5/sane-cardscan.5 -#usr/share/man/man5/sane-coolscan.5 -#usr/share/man/man5/sane-coolscan2.5 -#usr/share/man/man5/sane-coolscan3.5 -#usr/share/man/man5/sane-dc210.5 -#usr/share/man/man5/sane-dc240.5 -#usr/share/man/man5/sane-dc25.5 -#usr/share/man/man5/sane-dll.5 -#usr/share/man/man5/sane-dmc.5 -#usr/share/man/man5/sane-epjitsu.5 -#usr/share/man/man5/sane-epson.5 -#usr/share/man/man5/sane-epson2.5 -#usr/share/man/man5/sane-epsonds.5 -#usr/share/man/man5/sane-fujitsu.5 -#usr/share/man/man5/sane-genesys.5 -#usr/share/man/man5/sane-gt68xx.5 -#usr/share/man/man5/sane-hp.5 -#usr/share/man/man5/sane-hp3500.5 -#usr/share/man/man5/sane-hp3900.5 -#usr/share/man/man5/sane-hp4200.5 -#usr/share/man/man5/sane-hp5400.5 -#usr/share/man/man5/sane-hp5590.5 -#usr/share/man/man5/sane-hpljm1005.5 -#usr/share/man/man5/sane-hs2p.5 -#usr/share/man/man5/sane-ibm.5 -#usr/share/man/man5/sane-kodak.5 -#usr/share/man/man5/sane-kodakaio.5 -#usr/share/man/man5/sane-kvs1025.5 -#usr/share/man/man5/sane-kvs20xx.5 -#usr/share/man/man5/sane-kvs40xx.5 -#usr/share/man/man5/sane-leo.5 -#usr/share/man/man5/sane-lexmark.5 -#usr/share/man/man5/sane-ma1509.5 -#usr/share/man/man5/sane-magicolor.5 -#usr/share/man/man5/sane-matsushita.5 -#usr/share/man/man5/sane-microtek.5 -#usr/share/man/man5/sane-microtek2.5 -#usr/share/man/man5/sane-mustek.5 -#usr/share/man/man5/sane-mustek_pp.5 -#usr/share/man/man5/sane-mustek_usb.5 -#usr/share/man/man5/sane-mustek_usb2.5 -#usr/share/man/man5/sane-nec.5 -#usr/share/man/man5/sane-net.5 -#usr/share/man/man5/sane-niash.5 -#usr/share/man/man5/sane-p5.5 -#usr/share/man/man5/sane-pie.5 -#usr/share/man/man5/sane-pieusb.5 -#usr/share/man/man5/sane-pixma.5 -#usr/share/man/man5/sane-plustek.5 -#usr/share/man/man5/sane-plustek_pp.5 -#usr/share/man/man5/sane-ricoh.5 -#usr/share/man/man5/sane-rts8891.5 -#usr/share/man/man5/sane-s9036.5 -#usr/share/man/man5/sane-sceptre.5 -#usr/share/man/man5/sane-scsi.5 -#usr/share/man/man5/sane-sharp.5 -#usr/share/man/man5/sane-sm3600.5 -#usr/share/man/man5/sane-sm3840.5 -#usr/share/man/man5/sane-snapscan.5 -#usr/share/man/man5/sane-sp15c.5 -#usr/share/man/man5/sane-st400.5 -#usr/share/man/man5/sane-stv680.5 -#usr/share/man/man5/sane-tamarack.5 -#usr/share/man/man5/sane-teco1.5 -#usr/share/man/man5/sane-teco2.5 -#usr/share/man/man5/sane-teco3.5 -#usr/share/man/man5/sane-test.5 -#usr/share/man/man5/sane-u12.5 -#usr/share/man/man5/sane-umax.5 -#usr/share/man/man5/sane-umax1220u.5 -#usr/share/man/man5/sane-umax_pp.5 -#usr/share/man/man5/sane-usb.5 -#usr/share/man/man5/sane-xerox_mfp.5 -#usr/share/man/man7/sane.7 -#usr/share/man/man8/saned.8 -#usr/share/sane -usr/share/sane/artec_eplus48u -usr/share/sane/epjitsu -usr/share/sane/gt68xx -usr/share/sane/snapscan -#usr/var -#usr/var/lock -usr/var/lock/sane -var/ipfire/backup/addons/includes/sane diff --git a/config/rootfiles/packages/asterisk b/config/rootfiles/packages/asterisk deleted file mode 100644 index f84bd3539..000000000 --- a/config/rootfiles/packages/asterisk +++ /dev/null @@ -1,2990 +0,0 @@ -etc/asterisk -etc/logrotate.d/asterisk -etc/rc.d/init.d/asterisk -etc/rc.d/rc0.d/K30asterisk -etc/rc.d/rc3.d/S30asterisk -etc/rc.d/rc6.d/K30asterisk -#usr/include/asterisk -#usr/include/asterisk.h -#usr/include/asterisk/_private.h -#usr/include/asterisk/abstract_jb.h -#usr/include/asterisk/acl.h -#usr/include/asterisk/adsi.h -#usr/include/asterisk/ael_structs.h -#usr/include/asterisk/agi.h -#usr/include/asterisk/alaw.h -#usr/include/asterisk/alertpipe.h -#usr/include/asterisk/aoc.h -#usr/include/asterisk/app.h -#usr/include/asterisk/ari.h -#usr/include/asterisk/ast_expr.h -#usr/include/asterisk/ast_version.h -#usr/include/asterisk/astdb.h -#usr/include/asterisk/astmm.h -#usr/include/asterisk/astobj.h -#usr/include/asterisk/astobj2.h -#usr/include/asterisk/astosp.h -#usr/include/asterisk/audiohook.h -#usr/include/asterisk/autochan.h -#usr/include/asterisk/autoconfig.h -#usr/include/asterisk/backtrace.h -#usr/include/asterisk/beep.h -#usr/include/asterisk/bridge.h -#usr/include/asterisk/bridge_after.h -#usr/include/asterisk/bridge_basic.h -#usr/include/asterisk/bridge_channel.h -#usr/include/asterisk/bridge_channel_internal.h -#usr/include/asterisk/bridge_features.h -#usr/include/asterisk/bridge_internal.h -#usr/include/asterisk/bridge_roles.h -#usr/include/asterisk/bridge_technology.h -#usr/include/asterisk/bucket.h -#usr/include/asterisk/build.h -#usr/include/asterisk/buildinfo.h -#usr/include/asterisk/buildopts.h -#usr/include/asterisk/calendar.h -#usr/include/asterisk/callerid.h -#usr/include/asterisk/causes.h -#usr/include/asterisk/ccss.h -#usr/include/asterisk/cdr.h -#usr/include/asterisk/cel.h -#usr/include/asterisk/celt.h -#usr/include/asterisk/channel.h -#usr/include/asterisk/channel_internal.h -#usr/include/asterisk/channelstate.h -#usr/include/asterisk/chanvars.h -#usr/include/asterisk/cli.h -#usr/include/asterisk/codec.h -#usr/include/asterisk/compat.h -#usr/include/asterisk/compiler.h -#usr/include/asterisk/config.h -#usr/include/asterisk/config_options.h -#usr/include/asterisk/core_local.h -#usr/include/asterisk/core_unreal.h -#usr/include/asterisk/crypto.h -#usr/include/asterisk/data.h -#usr/include/asterisk/datastore.h -#usr/include/asterisk/devicestate.h -#usr/include/asterisk/dial.h -#usr/include/asterisk/dlinkedlists.h -#usr/include/asterisk/dns.h -#usr/include/asterisk/dnsmgr.h -#usr/include/asterisk/doxygen -#usr/include/asterisk/doxygen/architecture.h -#usr/include/asterisk/doxygen/asterisk-git-howto.h -#usr/include/asterisk/doxygen/commits.h -#usr/include/asterisk/doxygen/licensing.h -#usr/include/asterisk/doxygen/releases.h -#usr/include/asterisk/doxygen/reviewboard.h -#usr/include/asterisk/doxyref.h -#usr/include/asterisk/dsp.h -#usr/include/asterisk/dundi.h -#usr/include/asterisk/endian.h -#usr/include/asterisk/endpoints.h -#usr/include/asterisk/enum.h -#usr/include/asterisk/event.h -#usr/include/asterisk/event_defs.h -#usr/include/asterisk/extconf.h -#usr/include/asterisk/features.h -#usr/include/asterisk/features_config.h -#usr/include/asterisk/file.h -#usr/include/asterisk/format.h -#usr/include/asterisk/format_cache.h -#usr/include/asterisk/format_cap.h -#usr/include/asterisk/format_compatibility.h -#usr/include/asterisk/frame.h -#usr/include/asterisk/framehook.h -#usr/include/asterisk/fskmodem.h -#usr/include/asterisk/fskmodem_float.h -#usr/include/asterisk/fskmodem_int.h -#usr/include/asterisk/global_datastores.h -#usr/include/asterisk/hashtab.h -#usr/include/asterisk/heap.h -#usr/include/asterisk/http.h -#usr/include/asterisk/http_websocket.h -#usr/include/asterisk/image.h -#usr/include/asterisk/indications.h -#usr/include/asterisk/inline_api.h -#usr/include/asterisk/io.h -#usr/include/asterisk/json.h -#usr/include/asterisk/linkedlists.h -#usr/include/asterisk/localtime.h -#usr/include/asterisk/lock.h -#usr/include/asterisk/logger.h -#usr/include/asterisk/manager.h -#usr/include/asterisk/max_forwards.h -#usr/include/asterisk/md5.h -#usr/include/asterisk/media_index.h -#usr/include/asterisk/message.h -#usr/include/asterisk/mixmonitor.h -#usr/include/asterisk/mod_format.h -#usr/include/asterisk/module.h -#usr/include/asterisk/monitor.h -#usr/include/asterisk/multicast_rtp.h -#usr/include/asterisk/musiconhold.h -#usr/include/asterisk/named_locks.h -#usr/include/asterisk/netsock.h -#usr/include/asterisk/netsock2.h -#usr/include/asterisk/network.h -#usr/include/asterisk/optional_api.h -#usr/include/asterisk/options.h -#usr/include/asterisk/opus.h -#usr/include/asterisk/parking.h -#usr/include/asterisk/paths.h -#usr/include/asterisk/pbx.h -#usr/include/asterisk/phoneprov.h -#usr/include/asterisk/pickup.h -#usr/include/asterisk/pktccops.h -#usr/include/asterisk/plc.h -#usr/include/asterisk/poll-compat.h -#usr/include/asterisk/presencestate.h -#usr/include/asterisk/privacy.h -#usr/include/asterisk/pval.h -#usr/include/asterisk/res_fax.h -#usr/include/asterisk/res_hep.h -#usr/include/asterisk/res_mwi_external.h -#usr/include/asterisk/res_odbc.h -#usr/include/asterisk/res_odbc_transaction.h -#usr/include/asterisk/res_pjproject.h -#usr/include/asterisk/res_pjsip.h -#usr/include/asterisk/res_pjsip_body_generator_types.h -#usr/include/asterisk/res_pjsip_cli.h -#usr/include/asterisk/res_pjsip_outbound_publish.h -#usr/include/asterisk/res_pjsip_presence_xml.h -#usr/include/asterisk/res_pjsip_pubsub.h -#usr/include/asterisk/res_pjsip_session.h -#usr/include/asterisk/res_srtp.h -#usr/include/asterisk/rtp_engine.h -#usr/include/asterisk/say.h -#usr/include/asterisk/sched.h -#usr/include/asterisk/sdp_srtp.h -#usr/include/asterisk/security_events.h -#usr/include/asterisk/security_events_defs.h -#usr/include/asterisk/select.h -#usr/include/asterisk/sem.h -#usr/include/asterisk/sha1.h -#usr/include/asterisk/silk.h -#usr/include/asterisk/sip_api.h -#usr/include/asterisk/slin.h -#usr/include/asterisk/slinfactory.h -#usr/include/asterisk/smdi.h -#usr/include/asterisk/smoother.h -#usr/include/asterisk/sorcery.h -#usr/include/asterisk/sounds_index.h -#usr/include/asterisk/speech.h -#usr/include/asterisk/spinlock.h -#usr/include/asterisk/srv.h -#usr/include/asterisk/stasis.h -#usr/include/asterisk/stasis_app.h -#usr/include/asterisk/stasis_app_device_state.h -#usr/include/asterisk/stasis_app_impl.h -#usr/include/asterisk/stasis_app_mailbox.h -#usr/include/asterisk/stasis_app_playback.h -#usr/include/asterisk/stasis_app_recording.h -#usr/include/asterisk/stasis_app_snoop.h -#usr/include/asterisk/stasis_bridges.h -#usr/include/asterisk/stasis_cache_pattern.h -#usr/include/asterisk/stasis_channels.h -#usr/include/asterisk/stasis_endpoints.h -#usr/include/asterisk/stasis_internal.h -#usr/include/asterisk/stasis_message_router.h -#usr/include/asterisk/stasis_system.h -#usr/include/asterisk/stasis_test.h -#usr/include/asterisk/statsd.h -#usr/include/asterisk/stringfields.h -#usr/include/asterisk/strings.h -#usr/include/asterisk/stun.h -#usr/include/asterisk/syslog.h -#usr/include/asterisk/taskprocessor.h -#usr/include/asterisk/tcptls.h -#usr/include/asterisk/tdd.h -#usr/include/asterisk/term.h -#usr/include/asterisk/test.h -#usr/include/asterisk/threadpool.h -#usr/include/asterisk/threadstorage.h -#usr/include/asterisk/time.h -#usr/include/asterisk/timing.h -#usr/include/asterisk/transcap.h -#usr/include/asterisk/translate.h -#usr/include/asterisk/udptl.h -#usr/include/asterisk/ulaw.h -#usr/include/asterisk/unaligned.h -#usr/include/asterisk/uri.h -#usr/include/asterisk/utils.h -#usr/include/asterisk/uuid.h -#usr/include/asterisk/vector.h -#usr/include/asterisk/version.h -#usr/include/asterisk/xml.h -#usr/include/asterisk/xmldoc.h -#usr/include/asterisk/xmpp.h -#usr/lib/asterisk -#usr/lib/asterisk/modules -usr/lib/asterisk/modules/app_adsiprog.so -usr/lib/asterisk/modules/app_agent_pool.so -usr/lib/asterisk/modules/app_alarmreceiver.so -usr/lib/asterisk/modules/app_amd.so -usr/lib/asterisk/modules/app_authenticate.so -usr/lib/asterisk/modules/app_bridgewait.so -usr/lib/asterisk/modules/app_cdr.so -usr/lib/asterisk/modules/app_celgenuserevent.so -usr/lib/asterisk/modules/app_chanisavail.so -usr/lib/asterisk/modules/app_channelredirect.so -usr/lib/asterisk/modules/app_chanspy.so -usr/lib/asterisk/modules/app_confbridge.so -usr/lib/asterisk/modules/app_controlplayback.so -usr/lib/asterisk/modules/app_db.so -usr/lib/asterisk/modules/app_dial.so -usr/lib/asterisk/modules/app_dictate.so -usr/lib/asterisk/modules/app_directed_pickup.so -usr/lib/asterisk/modules/app_directory.so -usr/lib/asterisk/modules/app_disa.so -usr/lib/asterisk/modules/app_dumpchan.so -usr/lib/asterisk/modules/app_echo.so -usr/lib/asterisk/modules/app_exec.so -usr/lib/asterisk/modules/app_externalivr.so -usr/lib/asterisk/modules/app_festival.so -usr/lib/asterisk/modules/app_followme.so -usr/lib/asterisk/modules/app_forkcdr.so -usr/lib/asterisk/modules/app_getcpeid.so -usr/lib/asterisk/modules/app_ices.so -usr/lib/asterisk/modules/app_image.so -usr/lib/asterisk/modules/app_macro.so -usr/lib/asterisk/modules/app_milliwatt.so -usr/lib/asterisk/modules/app_minivm.so -usr/lib/asterisk/modules/app_mixmonitor.so -usr/lib/asterisk/modules/app_morsecode.so -usr/lib/asterisk/modules/app_mp3.so -usr/lib/asterisk/modules/app_nbscat.so -usr/lib/asterisk/modules/app_originate.so -usr/lib/asterisk/modules/app_page.so -usr/lib/asterisk/modules/app_playback.so -usr/lib/asterisk/modules/app_playtones.so -usr/lib/asterisk/modules/app_privacy.so -usr/lib/asterisk/modules/app_queue.so -usr/lib/asterisk/modules/app_read.so -usr/lib/asterisk/modules/app_readexten.so -usr/lib/asterisk/modules/app_record.so -usr/lib/asterisk/modules/app_sayunixtime.so -usr/lib/asterisk/modules/app_senddtmf.so -usr/lib/asterisk/modules/app_sendtext.so -usr/lib/asterisk/modules/app_sms.so -usr/lib/asterisk/modules/app_softhangup.so -usr/lib/asterisk/modules/app_speech_utils.so -usr/lib/asterisk/modules/app_stack.so -usr/lib/asterisk/modules/app_stasis.so -usr/lib/asterisk/modules/app_system.so -usr/lib/asterisk/modules/app_talkdetect.so -usr/lib/asterisk/modules/app_test.so -usr/lib/asterisk/modules/app_transfer.so -usr/lib/asterisk/modules/app_url.so -usr/lib/asterisk/modules/app_userevent.so -usr/lib/asterisk/modules/app_verbose.so -usr/lib/asterisk/modules/app_voicemail.so -usr/lib/asterisk/modules/app_waitforring.so -usr/lib/asterisk/modules/app_waitforsilence.so -usr/lib/asterisk/modules/app_waituntil.so -usr/lib/asterisk/modules/app_while.so -usr/lib/asterisk/modules/app_zapateller.so -usr/lib/asterisk/modules/bridge_builtin_features.so -usr/lib/asterisk/modules/bridge_builtin_interval_features.so -usr/lib/asterisk/modules/bridge_holding.so -usr/lib/asterisk/modules/bridge_native_rtp.so -usr/lib/asterisk/modules/bridge_simple.so -usr/lib/asterisk/modules/bridge_softmix.so -usr/lib/asterisk/modules/cdr_csv.so -usr/lib/asterisk/modules/cdr_custom.so -usr/lib/asterisk/modules/cdr_manager.so -usr/lib/asterisk/modules/cdr_sqlite3_custom.so -usr/lib/asterisk/modules/cdr_syslog.so -usr/lib/asterisk/modules/cel_custom.so -usr/lib/asterisk/modules/cel_manager.so -usr/lib/asterisk/modules/cel_sqlite3_custom.so -usr/lib/asterisk/modules/chan_alsa.so -usr/lib/asterisk/modules/chan_bridge_media.so -usr/lib/asterisk/modules/chan_iax2.so -usr/lib/asterisk/modules/chan_mgcp.so -usr/lib/asterisk/modules/chan_phone.so -usr/lib/asterisk/modules/chan_rtp.so -usr/lib/asterisk/modules/chan_sip.so -usr/lib/asterisk/modules/chan_skinny.so -usr/lib/asterisk/modules/chan_unistim.so -usr/lib/asterisk/modules/codec_a_mu.so -usr/lib/asterisk/modules/codec_adpcm.so -usr/lib/asterisk/modules/codec_alaw.so -usr/lib/asterisk/modules/codec_g722.so -usr/lib/asterisk/modules/codec_g726.so -usr/lib/asterisk/modules/codec_gsm.so -usr/lib/asterisk/modules/codec_ilbc.so -usr/lib/asterisk/modules/codec_lpc10.so -usr/lib/asterisk/modules/codec_resample.so -usr/lib/asterisk/modules/codec_ulaw.so -usr/lib/asterisk/modules/format_g719.so -usr/lib/asterisk/modules/format_g723.so -usr/lib/asterisk/modules/format_g726.so -usr/lib/asterisk/modules/format_g729.so -usr/lib/asterisk/modules/format_gsm.so -usr/lib/asterisk/modules/format_h263.so -usr/lib/asterisk/modules/format_h264.so -usr/lib/asterisk/modules/format_ilbc.so -usr/lib/asterisk/modules/format_jpeg.so -usr/lib/asterisk/modules/format_pcm.so -usr/lib/asterisk/modules/format_siren14.so -usr/lib/asterisk/modules/format_siren7.so -usr/lib/asterisk/modules/format_sln.so -usr/lib/asterisk/modules/format_vox.so -usr/lib/asterisk/modules/format_wav.so -usr/lib/asterisk/modules/format_wav_gsm.so -usr/lib/asterisk/modules/func_aes.so -usr/lib/asterisk/modules/func_audiohookinherit.so -usr/lib/asterisk/modules/func_base64.so -usr/lib/asterisk/modules/func_blacklist.so -usr/lib/asterisk/modules/func_callcompletion.so -usr/lib/asterisk/modules/func_callerid.so -usr/lib/asterisk/modules/func_cdr.so -usr/lib/asterisk/modules/func_channel.so -usr/lib/asterisk/modules/func_config.so -usr/lib/asterisk/modules/func_curl.so -usr/lib/asterisk/modules/func_cut.so -usr/lib/asterisk/modules/func_db.so -usr/lib/asterisk/modules/func_devstate.so -usr/lib/asterisk/modules/func_dialgroup.so -usr/lib/asterisk/modules/func_dialplan.so -usr/lib/asterisk/modules/func_enum.so -usr/lib/asterisk/modules/func_env.so -usr/lib/asterisk/modules/func_extstate.so -usr/lib/asterisk/modules/func_frame_trace.so -usr/lib/asterisk/modules/func_global.so -usr/lib/asterisk/modules/func_groupcount.so -usr/lib/asterisk/modules/func_hangupcause.so -usr/lib/asterisk/modules/func_holdintercept.so -usr/lib/asterisk/modules/func_iconv.so -usr/lib/asterisk/modules/func_jitterbuffer.so -usr/lib/asterisk/modules/func_lock.so -usr/lib/asterisk/modules/func_logic.so -usr/lib/asterisk/modules/func_math.so -usr/lib/asterisk/modules/func_md5.so -usr/lib/asterisk/modules/func_module.so -usr/lib/asterisk/modules/func_periodic_hook.so -usr/lib/asterisk/modules/func_pitchshift.so -usr/lib/asterisk/modules/func_presencestate.so -usr/lib/asterisk/modules/func_rand.so -usr/lib/asterisk/modules/func_realtime.so -usr/lib/asterisk/modules/func_sha1.so -usr/lib/asterisk/modules/func_shell.so -usr/lib/asterisk/modules/func_sorcery.so -usr/lib/asterisk/modules/func_sprintf.so -usr/lib/asterisk/modules/func_srv.so -usr/lib/asterisk/modules/func_strings.so -usr/lib/asterisk/modules/func_sysinfo.so -usr/lib/asterisk/modules/func_talkdetect.so -usr/lib/asterisk/modules/func_timeout.so -usr/lib/asterisk/modules/func_uri.so -usr/lib/asterisk/modules/func_version.so -usr/lib/asterisk/modules/func_vmcount.so -usr/lib/asterisk/modules/func_volume.so -usr/lib/asterisk/modules/pbx_ael.so -usr/lib/asterisk/modules/pbx_config.so -usr/lib/asterisk/modules/pbx_dundi.so -usr/lib/asterisk/modules/pbx_loopback.so -usr/lib/asterisk/modules/pbx_realtime.so -usr/lib/asterisk/modules/pbx_spool.so -usr/lib/asterisk/modules/res_adsi.so -usr/lib/asterisk/modules/res_ael_share.so -usr/lib/asterisk/modules/res_agi.so -usr/lib/asterisk/modules/res_ari.so -usr/lib/asterisk/modules/res_ari_applications.so -usr/lib/asterisk/modules/res_ari_asterisk.so -usr/lib/asterisk/modules/res_ari_bridges.so -usr/lib/asterisk/modules/res_ari_channels.so -usr/lib/asterisk/modules/res_ari_device_states.so -usr/lib/asterisk/modules/res_ari_endpoints.so -usr/lib/asterisk/modules/res_ari_events.so -usr/lib/asterisk/modules/res_ari_model.so -usr/lib/asterisk/modules/res_ari_playbacks.so -usr/lib/asterisk/modules/res_ari_recordings.so -usr/lib/asterisk/modules/res_ari_sounds.so -usr/lib/asterisk/modules/res_calendar.so -usr/lib/asterisk/modules/res_clialiases.so -usr/lib/asterisk/modules/res_clioriginate.so -usr/lib/asterisk/modules/res_config_curl.so -usr/lib/asterisk/modules/res_config_ldap.so -usr/lib/asterisk/modules/res_config_sqlite3.so -usr/lib/asterisk/modules/res_convert.so -usr/lib/asterisk/modules/res_crypto.so -usr/lib/asterisk/modules/res_curl.so -usr/lib/asterisk/modules/res_fax.so -usr/lib/asterisk/modules/res_fax_spandsp.so -usr/lib/asterisk/modules/res_format_attr_celt.so -usr/lib/asterisk/modules/res_format_attr_g729.so -usr/lib/asterisk/modules/res_format_attr_h263.so -usr/lib/asterisk/modules/res_format_attr_h264.so -usr/lib/asterisk/modules/res_format_attr_opus.so -usr/lib/asterisk/modules/res_format_attr_silk.so -usr/lib/asterisk/modules/res_format_attr_siren14.so -usr/lib/asterisk/modules/res_format_attr_siren7.so -usr/lib/asterisk/modules/res_format_attr_vp8.so -usr/lib/asterisk/modules/res_hep.so -usr/lib/asterisk/modules/res_hep_rtcp.so -usr/lib/asterisk/modules/res_http_websocket.so -usr/lib/asterisk/modules/res_limit.so -usr/lib/asterisk/modules/res_manager_devicestate.so -usr/lib/asterisk/modules/res_manager_presencestate.so -usr/lib/asterisk/modules/res_monitor.so -usr/lib/asterisk/modules/res_musiconhold.so -usr/lib/asterisk/modules/res_mutestream.so -usr/lib/asterisk/modules/res_parking.so -usr/lib/asterisk/modules/res_phoneprov.so -usr/lib/asterisk/modules/res_realtime.so -usr/lib/asterisk/modules/res_rtp_asterisk.so -usr/lib/asterisk/modules/res_rtp_multicast.so -usr/lib/asterisk/modules/res_security_log.so -usr/lib/asterisk/modules/res_smdi.so -usr/lib/asterisk/modules/res_sorcery_astdb.so -usr/lib/asterisk/modules/res_sorcery_config.so -usr/lib/asterisk/modules/res_sorcery_memory.so -usr/lib/asterisk/modules/res_sorcery_memory_cache.so -usr/lib/asterisk/modules/res_sorcery_realtime.so -usr/lib/asterisk/modules/res_speech.so -usr/lib/asterisk/modules/res_srtp.so -usr/lib/asterisk/modules/res_stasis.so -usr/lib/asterisk/modules/res_stasis_answer.so -usr/lib/asterisk/modules/res_stasis_device_state.so -usr/lib/asterisk/modules/res_stasis_playback.so -usr/lib/asterisk/modules/res_stasis_recording.so -usr/lib/asterisk/modules/res_stasis_snoop.so -usr/lib/asterisk/modules/res_statsd.so -usr/lib/asterisk/modules/res_stun_monitor.so -usr/lib/asterisk/modules/res_timing_pthread.so -usr/lib/asterisk/modules/res_timing_timerfd.so -usr/lib/libasteriskssl.so -usr/lib/libasteriskssl.so.1 -#usr/lib/pkgconfig/asterisk.pc -usr/sbin/astcanary -usr/sbin/astdb2bdb -usr/sbin/astdb2sqlite3 -usr/sbin/asterisk -usr/sbin/astgenkey -usr/sbin/astversion -usr/sbin/autosupport -usr/sbin/rasterisk -usr/sbin/safe_asterisk -#usr/share/man/man8/astdb2bdb.8 -#usr/share/man/man8/astdb2sqlite3.8 -#usr/share/man/man8/asterisk.8 -#usr/share/man/man8/astgenkey.8 -#usr/share/man/man8/autosupport.8 -#usr/share/man/man8/safe_asterisk.8 -#var/ipfire/asterisk -var/ipfire/asterisk/acl.conf -var/ipfire/asterisk/adsi.conf -var/ipfire/asterisk/agents.conf -var/ipfire/asterisk/alarmreceiver.conf -var/ipfire/asterisk/alsa.conf -var/ipfire/asterisk/amd.conf -var/ipfire/asterisk/app_mysql.conf -var/ipfire/asterisk/app_skel.conf -var/ipfire/asterisk/ari.conf -var/ipfire/asterisk/ast_debug_tools.conf -var/ipfire/asterisk/asterisk.adsi -var/ipfire/asterisk/asterisk.conf -var/ipfire/asterisk/asterisk.logrotate -var/ipfire/asterisk/calendar.conf -var/ipfire/asterisk/ccss.conf -var/ipfire/asterisk/cdr.conf -var/ipfire/asterisk/cdr_adaptive_odbc.conf -var/ipfire/asterisk/cdr_custom.conf -var/ipfire/asterisk/cdr_manager.conf -var/ipfire/asterisk/cdr_mysql.conf -var/ipfire/asterisk/cdr_odbc.conf -var/ipfire/asterisk/cdr_pgsql.conf -var/ipfire/asterisk/cdr_sqlite3_custom.conf -var/ipfire/asterisk/cdr_syslog.conf -var/ipfire/asterisk/cdr_tds.conf -var/ipfire/asterisk/cel.conf -var/ipfire/asterisk/cel_custom.conf -var/ipfire/asterisk/cel_odbc.conf -var/ipfire/asterisk/cel_pgsql.conf -var/ipfire/asterisk/cel_sqlite3_custom.conf -var/ipfire/asterisk/cel_tds.conf -var/ipfire/asterisk/chan_dahdi.conf -var/ipfire/asterisk/chan_mobile.conf -var/ipfire/asterisk/cli.conf -var/ipfire/asterisk/cli_aliases.conf -var/ipfire/asterisk/cli_permissions.conf -var/ipfire/asterisk/codecs.conf -var/ipfire/asterisk/confbridge.conf -var/ipfire/asterisk/config_test.conf -var/ipfire/asterisk/console.conf -var/ipfire/asterisk/dbsep.conf -var/ipfire/asterisk/dnsmgr.conf -var/ipfire/asterisk/dsp.conf -var/ipfire/asterisk/dundi.conf -var/ipfire/asterisk/enum.conf -var/ipfire/asterisk/extconfig.conf -var/ipfire/asterisk/extensions.ael -var/ipfire/asterisk/extensions.conf -var/ipfire/asterisk/extensions.lua -var/ipfire/asterisk/extensions_minivm.conf -var/ipfire/asterisk/features.conf -var/ipfire/asterisk/festival.conf -var/ipfire/asterisk/followme.conf -var/ipfire/asterisk/func_odbc.conf -var/ipfire/asterisk/hep.conf -var/ipfire/asterisk/http.conf -var/ipfire/asterisk/iax.conf -var/ipfire/asterisk/iaxprov.conf -var/ipfire/asterisk/indications.conf -var/ipfire/asterisk/logger.conf -var/ipfire/asterisk/manager.conf -var/ipfire/asterisk/meetme.conf -var/ipfire/asterisk/mgcp.conf -var/ipfire/asterisk/minivm.conf -var/ipfire/asterisk/misdn.conf -var/ipfire/asterisk/modules.conf -var/ipfire/asterisk/motif.conf -var/ipfire/asterisk/musiconhold.conf -var/ipfire/asterisk/muted.conf -var/ipfire/asterisk/ooh323.conf -var/ipfire/asterisk/osp.conf -var/ipfire/asterisk/oss.conf -var/ipfire/asterisk/phone.conf -var/ipfire/asterisk/phoneprov.conf -var/ipfire/asterisk/pjproject.conf -var/ipfire/asterisk/pjsip.conf -var/ipfire/asterisk/pjsip_notify.conf -var/ipfire/asterisk/pjsip_wizard.conf -var/ipfire/asterisk/queuerules.conf -var/ipfire/asterisk/queues.conf -var/ipfire/asterisk/res_config_mysql.conf -var/ipfire/asterisk/res_config_sqlite.conf -var/ipfire/asterisk/res_config_sqlite3.conf -var/ipfire/asterisk/res_corosync.conf -var/ipfire/asterisk/res_curl.conf -var/ipfire/asterisk/res_fax.conf -var/ipfire/asterisk/res_ldap.conf -var/ipfire/asterisk/res_odbc.conf -var/ipfire/asterisk/res_parking.conf -var/ipfire/asterisk/res_pgsql.conf -var/ipfire/asterisk/res_pktccops.conf -var/ipfire/asterisk/res_snmp.conf -var/ipfire/asterisk/res_stun_monitor.conf -var/ipfire/asterisk/rtp.conf -var/ipfire/asterisk/say.conf -var/ipfire/asterisk/sip.conf -var/ipfire/asterisk/sip_notify.conf -var/ipfire/asterisk/skinny.conf -var/ipfire/asterisk/sla.conf -var/ipfire/asterisk/smdi.conf -var/ipfire/asterisk/sorcery.conf -var/ipfire/asterisk/ss7.timers -var/ipfire/asterisk/stasis.conf -var/ipfire/asterisk/statsd.conf -var/ipfire/asterisk/telcordia-1.adsi -var/ipfire/asterisk/test_sorcery.conf -var/ipfire/asterisk/udptl.conf -var/ipfire/asterisk/unistim.conf -var/ipfire/asterisk/users.conf -var/ipfire/asterisk/voicemail.conf -var/ipfire/asterisk/vpb.conf -var/ipfire/asterisk/xmpp.conf -var/ipfire/backup/addons/includes/asterisk -#var/lib/asterisk -var/lib/asterisk/agi-bin -#var/lib/asterisk/documentation -var/lib/asterisk/documentation/appdocsxml.dtd -var/lib/asterisk/documentation/appdocsxml.xslt -var/lib/asterisk/documentation/core-en_US.xml -var/lib/asterisk/documentation/thirdparty -#var/lib/asterisk/firmware -var/lib/asterisk/firmware/iax -#var/lib/asterisk/images -#var/lib/asterisk/images/asterisk-intro.jpg -#var/lib/asterisk/images/kpad2.jpg -var/lib/asterisk/keys -#var/lib/asterisk/moh -var/lib/asterisk/moh/.asterisk-moh-opsound-gsm-2.03 -var/lib/asterisk/moh/.asterisk-moh-opsound-wav-2.03 -var/lib/asterisk/moh/CHANGES-asterisk-moh-opsound-gsm -var/lib/asterisk/moh/CHANGES-asterisk-moh-opsound-wav -var/lib/asterisk/moh/CREDITS-asterisk-moh-opsound-gsm -var/lib/asterisk/moh/CREDITS-asterisk-moh-opsound-wav -var/lib/asterisk/moh/LICENSE-asterisk-moh-opsound-gsm -var/lib/asterisk/moh/LICENSE-asterisk-moh-opsound-wav -var/lib/asterisk/moh/macroform-cold_day.gsm -var/lib/asterisk/moh/macroform-cold_day.wav -var/lib/asterisk/moh/macroform-robot_dity.gsm -var/lib/asterisk/moh/macroform-robot_dity.wav -var/lib/asterisk/moh/macroform-the_simplicity.gsm -var/lib/asterisk/moh/macroform-the_simplicity.wav -var/lib/asterisk/moh/manolo_camp-morning_coffee.gsm -var/lib/asterisk/moh/manolo_camp-morning_coffee.wav -var/lib/asterisk/moh/reno_project-system.gsm -var/lib/asterisk/moh/reno_project-system.wav -var/lib/asterisk/phoneprov -var/lib/asterisk/phoneprov/000000000000-directory.xml -var/lib/asterisk/phoneprov/000000000000-phone.cfg -var/lib/asterisk/phoneprov/000000000000.cfg -var/lib/asterisk/phoneprov/polycom.xml -var/lib/asterisk/phoneprov/polycom_line.xml -var/lib/asterisk/phoneprov/snom-mac.xml -var/lib/asterisk/rest-api -#var/lib/asterisk/rest-api/applications.json -#var/lib/asterisk/rest-api/asterisk.json -#var/lib/asterisk/rest-api/bridges.json -#var/lib/asterisk/rest-api/channels.json -#var/lib/asterisk/rest-api/deviceStates.json -#var/lib/asterisk/rest-api/endpoints.json -#var/lib/asterisk/rest-api/events.json -#var/lib/asterisk/rest-api/mailboxes.json -#var/lib/asterisk/rest-api/playbacks.json -#var/lib/asterisk/rest-api/recordings.json -#var/lib/asterisk/rest-api/resources.json -#var/lib/asterisk/rest-api/sounds.json -var/lib/asterisk/scripts -#var/lib/asterisk/scripts/ast_coredumper -#var/lib/asterisk/scripts/ast_logescalator -#var/lib/asterisk/scripts/ast_loggrabber -#var/lib/asterisk/scripts/refcounter.py -#var/lib/asterisk/sounds -#var/lib/asterisk/sounds/de -var/lib/asterisk/sounds/de/.DS_Store -var/lib/asterisk/sounds/de/agent-alreadyon.gsm -var/lib/asterisk/sounds/de/agent-incorrect.gsm -var/lib/asterisk/sounds/de/agent-loggedoff.gsm -var/lib/asterisk/sounds/de/agent-loginok.gsm -var/lib/asterisk/sounds/de/agent-newlocation.gsm -var/lib/asterisk/sounds/de/agent-pass.gsm -var/lib/asterisk/sounds/de/agent-user.gsm -var/lib/asterisk/sounds/de/auth-incorrect.gsm -var/lib/asterisk/sounds/de/auth-thankyou.gsm -var/lib/asterisk/sounds/de/beep.gsm -var/lib/asterisk/sounds/de/beeperr.gsm -var/lib/asterisk/sounds/de/conf-adminmenu.gsm -var/lib/asterisk/sounds/de/conf-enteringno.gsm -var/lib/asterisk/sounds/de/conf-errormenu.gsm -var/lib/asterisk/sounds/de/conf-getchannel.gsm -var/lib/asterisk/sounds/de/conf-getconfno.gsm -var/lib/asterisk/sounds/de/conf-getpin.gsm -var/lib/asterisk/sounds/de/conf-hasjoin.gsm -var/lib/asterisk/sounds/de/conf-hasleft.gsm -var/lib/asterisk/sounds/de/conf-invalid.gsm -var/lib/asterisk/sounds/de/conf-invalidpin.gsm -var/lib/asterisk/sounds/de/conf-kicked.gsm -var/lib/asterisk/sounds/de/conf-leaderhasleft.gsm -var/lib/asterisk/sounds/de/conf-locked.gsm -var/lib/asterisk/sounds/de/conf-lockednow.gsm -var/lib/asterisk/sounds/de/conf-muted.gsm -var/lib/asterisk/sounds/de/conf-noempty.gsm -var/lib/asterisk/sounds/de/conf-onlyone.gsm -var/lib/asterisk/sounds/de/conf-onlyperson.gsm -var/lib/asterisk/sounds/de/conf-otherinparty.gsm -var/lib/asterisk/sounds/de/conf-placeintoconf.gsm -var/lib/asterisk/sounds/de/conf-thereare.gsm -var/lib/asterisk/sounds/de/conf-unlockednow.gsm -var/lib/asterisk/sounds/de/conf-unmuted.gsm -var/lib/asterisk/sounds/de/conf-usermenu.gsm -var/lib/asterisk/sounds/de/conf-userswilljoin.gsm -var/lib/asterisk/sounds/de/conf-userwilljoin.gsm -var/lib/asterisk/sounds/de/conf-waitforleader.gsm -var/lib/asterisk/sounds/de/demo-abouttotry.gsm -var/lib/asterisk/sounds/de/demo-congrats.gsm -var/lib/asterisk/sounds/de/demo-echodone.gsm -var/lib/asterisk/sounds/de/demo-echotest.gsm -var/lib/asterisk/sounds/de/demo-enterkeywords.gsm -var/lib/asterisk/sounds/de/demo-instruct.gsm -var/lib/asterisk/sounds/de/demo-moreinfo.gsm -var/lib/asterisk/sounds/de/demo-nogo.gsm -var/lib/asterisk/sounds/de/demo-nomatch.gsm -var/lib/asterisk/sounds/de/demo-thanks.gsm -var/lib/asterisk/sounds/de/dir-instr.gsm -var/lib/asterisk/sounds/de/dir-intro-fn.gsm -var/lib/asterisk/sounds/de/dir-intro.gsm -var/lib/asterisk/sounds/de/dir-nomatch.gsm -var/lib/asterisk/sounds/de/dir-nomore.gsm -var/lib/asterisk/sounds/de/dollars.gsm -var/lib/asterisk/sounds/de/hello-world.gsm -var/lib/asterisk/sounds/de/hours.gsm -var/lib/asterisk/sounds/de/invalid.gsm -var/lib/asterisk/sounds/de/minutes.gsm -var/lib/asterisk/sounds/de/pbx-invalid.gsm -var/lib/asterisk/sounds/de/pbx-invalidpark.gsm -var/lib/asterisk/sounds/de/pbx-transfer.gsm -var/lib/asterisk/sounds/de/priv-callee-options.gsm -var/lib/asterisk/sounds/de/priv-callpending.gsm -var/lib/asterisk/sounds/de/priv-introsaved.gsm -var/lib/asterisk/sounds/de/priv-recordintro.gsm -var/lib/asterisk/sounds/de/privacy-incorrect.gsm -var/lib/asterisk/sounds/de/privacy-prompt.gsm -var/lib/asterisk/sounds/de/privacy-thankyou.gsm -var/lib/asterisk/sounds/de/privacy-unident.gsm -var/lib/asterisk/sounds/de/queue-callswaiting.gsm -var/lib/asterisk/sounds/de/queue-holdtime.gsm -var/lib/asterisk/sounds/de/queue-less-than.gsm -var/lib/asterisk/sounds/de/queue-minutes.gsm -var/lib/asterisk/sounds/de/queue-periodic-announce.gsm -var/lib/asterisk/sounds/de/queue-reporthold.gsm -var/lib/asterisk/sounds/de/queue-seconds.gsm -var/lib/asterisk/sounds/de/queue-thankyou.gsm -var/lib/asterisk/sounds/de/queue-thereare.gsm -var/lib/asterisk/sounds/de/queue-youarenext.gsm -var/lib/asterisk/sounds/de/screen-callee-options.gsm -var/lib/asterisk/sounds/de/seconds.gsm -var/lib/asterisk/sounds/de/spy-agent.gsm -var/lib/asterisk/sounds/de/spy-h323.gsm -var/lib/asterisk/sounds/de/spy-iax.gsm -var/lib/asterisk/sounds/de/spy-iax2.gsm -var/lib/asterisk/sounds/de/spy-mgcp.gsm -var/lib/asterisk/sounds/de/spy-sip.gsm -var/lib/asterisk/sounds/de/spy-skinny.gsm -var/lib/asterisk/sounds/de/spy-zap.gsm -var/lib/asterisk/sounds/de/ss-noservice.gsm -var/lib/asterisk/sounds/de/transfer.gsm -var/lib/asterisk/sounds/de/tt-allbusy.gsm -var/lib/asterisk/sounds/de/tt-monkeys.gsm -var/lib/asterisk/sounds/de/tt-monkeysintro.gsm -var/lib/asterisk/sounds/de/tt-somethingwrong.gsm -var/lib/asterisk/sounds/de/tt-weasels.gsm -var/lib/asterisk/sounds/de/vm-Cust1.gsm -var/lib/asterisk/sounds/de/vm-Cust2.gsm -var/lib/asterisk/sounds/de/vm-Cust3.gsm -var/lib/asterisk/sounds/de/vm-Cust4.gsm -var/lib/asterisk/sounds/de/vm-Cust5.gsm -var/lib/asterisk/sounds/de/vm-Family.gsm -var/lib/asterisk/sounds/de/vm-Friends.gsm -var/lib/asterisk/sounds/de/vm-INBOX.gsm -var/lib/asterisk/sounds/de/vm-Old.gsm -var/lib/asterisk/sounds/de/vm-Work.gsm -var/lib/asterisk/sounds/de/vm-advopts.gsm -var/lib/asterisk/sounds/de/vm-and.gsm -var/lib/asterisk/sounds/de/vm-calldiffnum.gsm -var/lib/asterisk/sounds/de/vm-changeto.gsm -var/lib/asterisk/sounds/de/vm-delete.gsm -var/lib/asterisk/sounds/de/vm-deleted.gsm -var/lib/asterisk/sounds/de/vm-dialout.gsm -var/lib/asterisk/sounds/de/vm-enter-num-to-call.gsm -var/lib/asterisk/sounds/de/vm-extension.gsm -var/lib/asterisk/sounds/de/vm-first.gsm -var/lib/asterisk/sounds/de/vm-for.gsm -var/lib/asterisk/sounds/de/vm-forward.gsm -var/lib/asterisk/sounds/de/vm-forwardoptions.gsm -var/lib/asterisk/sounds/de/vm-from-extension.gsm -var/lib/asterisk/sounds/de/vm-from-phonenumber.gsm -var/lib/asterisk/sounds/de/vm-from.gsm -var/lib/asterisk/sounds/de/vm-goodbye.gsm -var/lib/asterisk/sounds/de/vm-helpexit.gsm -var/lib/asterisk/sounds/de/vm-incorrect-mailbox.gsm -var/lib/asterisk/sounds/de/vm-incorrect.gsm -var/lib/asterisk/sounds/de/vm-instructions.gsm -var/lib/asterisk/sounds/de/vm-intro.gsm -var/lib/asterisk/sounds/de/vm-isonphone.gsm -var/lib/asterisk/sounds/de/vm-isunavail.gsm -var/lib/asterisk/sounds/de/vm-last.gsm -var/lib/asterisk/sounds/de/vm-leavemsg.gsm -var/lib/asterisk/sounds/de/vm-login.gsm -var/lib/asterisk/sounds/de/vm-mailboxfull.gsm -var/lib/asterisk/sounds/de/vm-message.gsm -var/lib/asterisk/sounds/de/vm-messages.gsm -var/lib/asterisk/sounds/de/vm-minutes.gsm -var/lib/asterisk/sounds/de/vm-mismatch.gsm -var/lib/asterisk/sounds/de/vm-msginstruct.gsm -var/lib/asterisk/sounds/de/vm-msgsaved.gsm -var/lib/asterisk/sounds/de/vm-newpassword.gsm -var/lib/asterisk/sounds/de/vm-newuser.gsm -var/lib/asterisk/sounds/de/vm-next.gsm -var/lib/asterisk/sounds/de/vm-no.gsm -var/lib/asterisk/sounds/de/vm-nobodyavail.gsm -var/lib/asterisk/sounds/de/vm-nobox.gsm -var/lib/asterisk/sounds/de/vm-nomore.gsm -var/lib/asterisk/sounds/de/vm-nonumber.gsm -var/lib/asterisk/sounds/de/vm-num-i-have.gsm -var/lib/asterisk/sounds/de/vm-onefor.gsm -var/lib/asterisk/sounds/de/vm-options.gsm -var/lib/asterisk/sounds/de/vm-opts.gsm -var/lib/asterisk/sounds/de/vm-passchanged.gsm -var/lib/asterisk/sounds/de/vm-password.gsm -var/lib/asterisk/sounds/de/vm-press.gsm -var/lib/asterisk/sounds/de/vm-prev.gsm -var/lib/asterisk/sounds/de/vm-reachoper.gsm -var/lib/asterisk/sounds/de/vm-rec-busy.gsm -var/lib/asterisk/sounds/de/vm-rec-name.gsm -var/lib/asterisk/sounds/de/vm-rec-temp.gsm -var/lib/asterisk/sounds/de/vm-rec-unv.gsm -var/lib/asterisk/sounds/de/vm-received.gsm -var/lib/asterisk/sounds/de/vm-reenterpassword.gsm -var/lib/asterisk/sounds/de/vm-repeat.gsm -var/lib/asterisk/sounds/de/vm-review.gsm -var/lib/asterisk/sounds/de/vm-saved.gsm -var/lib/asterisk/sounds/de/vm-savedto.gsm -var/lib/asterisk/sounds/de/vm-savefolder.gsm -var/lib/asterisk/sounds/de/vm-savemessage.gsm -var/lib/asterisk/sounds/de/vm-saveoper.gsm -var/lib/asterisk/sounds/de/vm-sorry.gsm -var/lib/asterisk/sounds/de/vm-star-cancel.gsm -var/lib/asterisk/sounds/de/vm-starmain.gsm -var/lib/asterisk/sounds/de/vm-tempgreetactive.gsm -var/lib/asterisk/sounds/de/vm-tempgreeting.gsm -var/lib/asterisk/sounds/de/vm-tempgreeting2.gsm -var/lib/asterisk/sounds/de/vm-tempremoved.gsm -var/lib/asterisk/sounds/de/vm-then-pound.gsm -var/lib/asterisk/sounds/de/vm-theperson.gsm -var/lib/asterisk/sounds/de/vm-tocallback.gsm -var/lib/asterisk/sounds/de/vm-tocallnum.gsm -var/lib/asterisk/sounds/de/vm-tocancel.gsm -var/lib/asterisk/sounds/de/vm-tocancelmsg.gsm -var/lib/asterisk/sounds/de/vm-toenternumber.gsm -var/lib/asterisk/sounds/de/vm-toforward.gsm -var/lib/asterisk/sounds/de/vm-tohearenv.gsm -var/lib/asterisk/sounds/de/vm-tomakecall.gsm -var/lib/asterisk/sounds/de/vm-tooshort.gsm -var/lib/asterisk/sounds/de/vm-toreply.gsm -var/lib/asterisk/sounds/de/vm-torerecord.gsm -var/lib/asterisk/sounds/de/vm-undelete.gsm -var/lib/asterisk/sounds/de/vm-undeleted.gsm -var/lib/asterisk/sounds/de/vm-unknown-caller.gsm -var/lib/asterisk/sounds/de/vm-whichbox.gsm -var/lib/asterisk/sounds/de/vm-youhave.gsm -#var/lib/asterisk/sounds/dictate -#var/lib/asterisk/sounds/dictate/de -var/lib/asterisk/sounds/dictate/de/both_help.gsm -var/lib/asterisk/sounds/dictate/de/enter_filename.gsm -var/lib/asterisk/sounds/dictate/de/forhelp.gsm -var/lib/asterisk/sounds/dictate/de/pause.gsm -var/lib/asterisk/sounds/dictate/de/paused.gsm -var/lib/asterisk/sounds/dictate/de/play_help.gsm -var/lib/asterisk/sounds/dictate/de/playback.gsm -var/lib/asterisk/sounds/dictate/de/playback_mode.gsm -var/lib/asterisk/sounds/dictate/de/record.gsm -var/lib/asterisk/sounds/dictate/de/record_help.gsm -var/lib/asterisk/sounds/dictate/de/record_mode.gsm -var/lib/asterisk/sounds/dictate/de/truncating_audio.gsm -#var/lib/asterisk/sounds/digits -#var/lib/asterisk/sounds/digits/de -var/lib/asterisk/sounds/digits/de/0.gsm -var/lib/asterisk/sounds/digits/de/1.gsm -var/lib/asterisk/sounds/digits/de/10.gsm -var/lib/asterisk/sounds/digits/de/11.gsm -var/lib/asterisk/sounds/digits/de/12.gsm -var/lib/asterisk/sounds/digits/de/13.gsm -var/lib/asterisk/sounds/digits/de/14.gsm -var/lib/asterisk/sounds/digits/de/15.gsm -var/lib/asterisk/sounds/digits/de/16.gsm -var/lib/asterisk/sounds/digits/de/17.gsm -var/lib/asterisk/sounds/digits/de/18.gsm -var/lib/asterisk/sounds/digits/de/19.gsm -var/lib/asterisk/sounds/digits/de/1F.gsm -var/lib/asterisk/sounds/digits/de/2.gsm -var/lib/asterisk/sounds/digits/de/20.gsm -var/lib/asterisk/sounds/digits/de/3.gsm -var/lib/asterisk/sounds/digits/de/30.gsm -var/lib/asterisk/sounds/digits/de/4.gsm -var/lib/asterisk/sounds/digits/de/40.gsm -var/lib/asterisk/sounds/digits/de/5.gsm -var/lib/asterisk/sounds/digits/de/50.gsm -var/lib/asterisk/sounds/digits/de/6.gsm -var/lib/asterisk/sounds/digits/de/60.gsm -var/lib/asterisk/sounds/digits/de/7.gsm -var/lib/asterisk/sounds/digits/de/70.gsm -var/lib/asterisk/sounds/digits/de/8.gsm -var/lib/asterisk/sounds/digits/de/80.gsm -var/lib/asterisk/sounds/digits/de/9.gsm -var/lib/asterisk/sounds/digits/de/90.gsm -var/lib/asterisk/sounds/digits/de/a-m.gsm -var/lib/asterisk/sounds/digits/de/day-0.gsm -var/lib/asterisk/sounds/digits/de/day-1.gsm -var/lib/asterisk/sounds/digits/de/day-2.gsm -var/lib/asterisk/sounds/digits/de/day-3.gsm -var/lib/asterisk/sounds/digits/de/day-4.gsm -var/lib/asterisk/sounds/digits/de/day-5.gsm -var/lib/asterisk/sounds/digits/de/day-6.gsm -var/lib/asterisk/sounds/digits/de/h-1.gsm -var/lib/asterisk/sounds/digits/de/h-10.gsm -var/lib/asterisk/sounds/digits/de/h-11.gsm -var/lib/asterisk/sounds/digits/de/h-12.gsm -var/lib/asterisk/sounds/digits/de/h-13.gsm -var/lib/asterisk/sounds/digits/de/h-14.gsm -var/lib/asterisk/sounds/digits/de/h-15.gsm -var/lib/asterisk/sounds/digits/de/h-16.gsm -var/lib/asterisk/sounds/digits/de/h-17.gsm -var/lib/asterisk/sounds/digits/de/h-18.gsm -var/lib/asterisk/sounds/digits/de/h-19.gsm -var/lib/asterisk/sounds/digits/de/h-2.gsm -var/lib/asterisk/sounds/digits/de/h-20.gsm -var/lib/asterisk/sounds/digits/de/h-3.gsm -var/lib/asterisk/sounds/digits/de/h-30.gsm -var/lib/asterisk/sounds/digits/de/h-4.gsm -var/lib/asterisk/sounds/digits/de/h-5.gsm -var/lib/asterisk/sounds/digits/de/h-6.gsm -var/lib/asterisk/sounds/digits/de/h-7.gsm -var/lib/asterisk/sounds/digits/de/h-8.gsm -var/lib/asterisk/sounds/digits/de/h-9.gsm -var/lib/asterisk/sounds/digits/de/hundred.gsm -var/lib/asterisk/sounds/digits/de/million.gsm -var/lib/asterisk/sounds/digits/de/minus.gsm -var/lib/asterisk/sounds/digits/de/mon-0.gsm -var/lib/asterisk/sounds/digits/de/mon-1.gsm -var/lib/asterisk/sounds/digits/de/mon-10.gsm -var/lib/asterisk/sounds/digits/de/mon-11.gsm -var/lib/asterisk/sounds/digits/de/mon-2.gsm -var/lib/asterisk/sounds/digits/de/mon-3.gsm -var/lib/asterisk/sounds/digits/de/mon-4.gsm -var/lib/asterisk/sounds/digits/de/mon-5.gsm -var/lib/asterisk/sounds/digits/de/mon-6.gsm -var/lib/asterisk/sounds/digits/de/mon-7.gsm -var/lib/asterisk/sounds/digits/de/mon-8.gsm -var/lib/asterisk/sounds/digits/de/mon-9.gsm -var/lib/asterisk/sounds/digits/de/oclock.gsm -var/lib/asterisk/sounds/digits/de/oh.gsm -var/lib/asterisk/sounds/digits/de/p-m.gsm -var/lib/asterisk/sounds/digits/de/pound.gsm -var/lib/asterisk/sounds/digits/de/star.gsm -var/lib/asterisk/sounds/digits/de/thousand.gsm -var/lib/asterisk/sounds/digits/de/today.gsm -var/lib/asterisk/sounds/digits/de/tomorrow.gsm -var/lib/asterisk/sounds/digits/de/xh-10x.gsm -var/lib/asterisk/sounds/digits/de/xh-11x.gsm -var/lib/asterisk/sounds/digits/de/xh-12x.gsm -var/lib/asterisk/sounds/digits/de/xh-13x.gsm -var/lib/asterisk/sounds/digits/de/xh-14x.gsm -var/lib/asterisk/sounds/digits/de/xh-15x.gsm -var/lib/asterisk/sounds/digits/de/xh-16x.gsm -var/lib/asterisk/sounds/digits/de/xh-17x.gsm -var/lib/asterisk/sounds/digits/de/xh-18x.gsm -var/lib/asterisk/sounds/digits/de/xh-19x.gsm -var/lib/asterisk/sounds/digits/de/xh-1x.gsm -var/lib/asterisk/sounds/digits/de/xh-20x.gsm -var/lib/asterisk/sounds/digits/de/xh-2x.gsm -var/lib/asterisk/sounds/digits/de/xh-30x.gsm -var/lib/asterisk/sounds/digits/de/xh-3x.gsm -var/lib/asterisk/sounds/digits/de/xh-4x.gsm -var/lib/asterisk/sounds/digits/de/xh-5x.gsm -var/lib/asterisk/sounds/digits/de/xh-6x.gsm -var/lib/asterisk/sounds/digits/de/xh-7x.gsm -var/lib/asterisk/sounds/digits/de/xh-8x.gsm -var/lib/asterisk/sounds/digits/de/xh-9x.gsm -var/lib/asterisk/sounds/digits/de/yesterday.gsm -var/lib/asterisk/sounds/en -#var/lib/asterisk/sounds/en/.asterisk-core-sounds-en-gsm-1.6 -#var/lib/asterisk/sounds/en/.asterisk-extra-sounds-en-gsm-1.5.1 -var/lib/asterisk/sounds/en/1-for-am-2-for-pm.gsm -var/lib/asterisk/sounds/en/1-yes-2-no.gsm -#var/lib/asterisk/sounds/en/CHANGES-asterisk-core-en-1.6 -#var/lib/asterisk/sounds/en/CHANGES-asterisk-extra-en-1.5.1 -#var/lib/asterisk/sounds/en/CREDITS-asterisk-core-en-1.6 -#var/lib/asterisk/sounds/en/CREDITS-asterisk-extra-en-1.5.1 -#var/lib/asterisk/sounds/en/LICENSE-asterisk-core-en-1.6 -#var/lib/asterisk/sounds/en/LICENSE-asterisk-extra-en-1.5.1 -var/lib/asterisk/sounds/en/OfficeSpace.gsm -var/lib/asterisk/sounds/en/Randulo-allison.gsm -var/lib/asterisk/sounds/en/SIP_Test_Failure.gsm -var/lib/asterisk/sounds/en/SIP_Test_Success.gsm -var/lib/asterisk/sounds/en/T-changed-to.gsm -var/lib/asterisk/sounds/en/T-is-not-available.gsm -var/lib/asterisk/sounds/en/T-to-disable-ancmnt.gsm -var/lib/asterisk/sounds/en/T-to-enable-ancmnt.gsm -var/lib/asterisk/sounds/en/T-to-hear-cur-ancmnt.gsm -var/lib/asterisk/sounds/en/T-to-leave-msg.gsm -var/lib/asterisk/sounds/en/T-to-reach-main-office.gsm -var/lib/asterisk/sounds/en/T-to-rec-ancmnt.gsm -var/lib/asterisk/sounds/en/T-to-rtrn-to-main-menu.gsm -var/lib/asterisk/sounds/en/a-charge-for-this-svc.gsm -var/lib/asterisk/sounds/en/a-collect-charge-of.gsm -var/lib/asterisk/sounds/en/a-collect-charge.gsm -var/lib/asterisk/sounds/en/a-connect-charge-of.gsm -var/lib/asterisk/sounds/en/a-connect-charge.gsm -var/lib/asterisk/sounds/en/abandon-all-hope.gsm -var/lib/asterisk/sounds/en/abandons.gsm -var/lib/asterisk/sounds/en/academic-support.gsm -var/lib/asterisk/sounds/en/access-code.gsm -var/lib/asterisk/sounds/en/access-denied.gsm -var/lib/asterisk/sounds/en/access-granted.gsm -var/lib/asterisk/sounds/en/accessible-through-system.gsm -var/lib/asterisk/sounds/en/account-balance-is.gsm -var/lib/asterisk/sounds/en/account_number.gsm -var/lib/asterisk/sounds/en/accounting.gsm -var/lib/asterisk/sounds/en/accounts-payable.gsm -var/lib/asterisk/sounds/en/accounts-receivable.gsm -var/lib/asterisk/sounds/en/activated.gsm -var/lib/asterisk/sounds/en/added-to.gsm -var/lib/asterisk/sounds/en/added.gsm -var/lib/asterisk/sounds/en/address.gsm -var/lib/asterisk/sounds/en/administration.gsm -var/lib/asterisk/sounds/en/advised-to-seek-shelter.gsm -var/lib/asterisk/sounds/en/after-the-tone.gsm -var/lib/asterisk/sounds/en/after_tone.gsm -var/lib/asterisk/sounds/en/afternoon.gsm -var/lib/asterisk/sounds/en/agent-alreadyon.gsm -var/lib/asterisk/sounds/en/agent-incorrect.gsm -var/lib/asterisk/sounds/en/agent-loggedoff.gsm -var/lib/asterisk/sounds/en/agent-loginok.gsm -var/lib/asterisk/sounds/en/agent-newlocation.gsm -var/lib/asterisk/sounds/en/agent-pass.gsm -var/lib/asterisk/sounds/en/agent-user.gsm -var/lib/asterisk/sounds/en/airport.gsm -var/lib/asterisk/sounds/en/alabama.gsm -var/lib/asterisk/sounds/en/alaska.gsm -var/lib/asterisk/sounds/en/albuquerque.gsm -var/lib/asterisk/sounds/en/alert.gsm -var/lib/asterisk/sounds/en/all-circuits-busy-now.gsm -var/lib/asterisk/sounds/en/all-outgoing-lines-unavailable.gsm -var/lib/asterisk/sounds/en/all-reps-busy.gsm -var/lib/asterisk/sounds/en/all-your-base.gsm -var/lib/asterisk/sounds/en/altitude.gsm -var/lib/asterisk/sounds/en/ampersand.gsm -var/lib/asterisk/sounds/en/an-error-has-occurred.gsm -var/lib/asterisk/sounds/en/and-area-code.gsm -var/lib/asterisk/sounds/en/and-or.gsm -var/lib/asterisk/sounds/en/and-prs-pound-whn-finished.gsm -var/lib/asterisk/sounds/en/and.gsm -var/lib/asterisk/sounds/en/andnowstandby.gsm -var/lib/asterisk/sounds/en/another-time.gsm -var/lib/asterisk/sounds/en/approaching.gsm -var/lib/asterisk/sounds/en/approximately.gsm -var/lib/asterisk/sounds/en/are-you-still-there.gsm -var/lib/asterisk/sounds/en/are-you-still-there2.gsm -var/lib/asterisk/sounds/en/arizona.gsm -var/lib/asterisk/sounds/en/arkansas.gsm -var/lib/asterisk/sounds/en/arlington.gsm -var/lib/asterisk/sounds/en/ascending-2tone.gsm -var/lib/asterisk/sounds/en/astcc-account-balance-is.gsm -var/lib/asterisk/sounds/en/astcc-account-number-invalid.gsm -var/lib/asterisk/sounds/en/astcc-balance-of-account-is.gsm -var/lib/asterisk/sounds/en/astcc-card-number-invalid.gsm -var/lib/asterisk/sounds/en/astcc-digit-account-number.gsm -var/lib/asterisk/sounds/en/astcc-followed-by-the-hash-key.gsm -var/lib/asterisk/sounds/en/astcc-followed-by-the-pound-key.gsm -var/lib/asterisk/sounds/en/astcc-login12pound.gsm -var/lib/asterisk/sounds/en/astcc-please-enter-your.gsm -var/lib/asterisk/sounds/en/astcc-skipping-any-punctuation.gsm -var/lib/asterisk/sounds/en/asterisk-friend.gsm -var/lib/asterisk/sounds/en/at-any-time.gsm -var/lib/asterisk/sounds/en/at-customers-request.gsm -var/lib/asterisk/sounds/en/at-following-number.gsm -var/lib/asterisk/sounds/en/at-sign.gsm -var/lib/asterisk/sounds/en/at-tone-time-exactly.gsm -var/lib/asterisk/sounds/en/at_tone.gsm -var/lib/asterisk/sounds/en/athletics.gsm -var/lib/asterisk/sounds/en/atlanta.gsm -var/lib/asterisk/sounds/en/atlantic.gsm -var/lib/asterisk/sounds/en/attention-required.gsm -var/lib/asterisk/sounds/en/auditing.gsm -var/lib/asterisk/sounds/en/austin.gsm -var/lib/asterisk/sounds/en/auth-incorrect.gsm -var/lib/asterisk/sounds/en/auth-thankyou.gsm -var/lib/asterisk/sounds/en/available-options.gsm -var/lib/asterisk/sounds/en/available.gsm -var/lib/asterisk/sounds/en/avg-speed-answer.gsm -var/lib/asterisk/sounds/en/away-naughty-boy.gsm -var/lib/asterisk/sounds/en/away-naughty-girl.gsm -var/lib/asterisk/sounds/en/awkward.gsm -var/lib/asterisk/sounds/en/backslash.gsm -var/lib/asterisk/sounds/en/bad.gsm -var/lib/asterisk/sounds/en/baltimore.gsm -var/lib/asterisk/sounds/en/bar.gsm -var/lib/asterisk/sounds/en/barn.gsm -var/lib/asterisk/sounds/en/barns.gsm -var/lib/asterisk/sounds/en/barometric.gsm -var/lib/asterisk/sounds/en/basic-pbx-ivr-main.gsm -var/lib/asterisk/sounds/en/bearing.gsm -var/lib/asterisk/sounds/en/beaufort.gsm -var/lib/asterisk/sounds/en/because-paranoid.gsm -var/lib/asterisk/sounds/en/beep.gsm -var/lib/asterisk/sounds/en/beeperr.gsm -var/lib/asterisk/sounds/en/before-the-number.gsm -var/lib/asterisk/sounds/en/believe-its-free.gsm -var/lib/asterisk/sounds/en/billing-and-collections.gsm -var/lib/asterisk/sounds/en/billing.gsm -var/lib/asterisk/sounds/en/billionth.gsm -var/lib/asterisk/sounds/en/binary.gsm -var/lib/asterisk/sounds/en/bits.gsm -var/lib/asterisk/sounds/en/blue-eyed-polar-bear.gsm -var/lib/asterisk/sounds/en/bombsquad.gsm -var/lib/asterisk/sounds/en/bookstore.gsm -var/lib/asterisk/sounds/en/boston.gsm -var/lib/asterisk/sounds/en/box.gsm -var/lib/asterisk/sounds/en/brian.gsm -var/lib/asterisk/sounds/en/business-development.gsm -var/lib/asterisk/sounds/en/busy-hangovers.gsm -var/lib/asterisk/sounds/en/busy-pls-hold.gsm -var/lib/asterisk/sounds/en/but.gsm -var/lib/asterisk/sounds/en/by.gsm -var/lib/asterisk/sounds/en/bytes.gsm -var/lib/asterisk/sounds/en/cafeteria.gsm -var/lib/asterisk/sounds/en/california.gsm -var/lib/asterisk/sounds/en/call-forward.gsm -var/lib/asterisk/sounds/en/call-forwarding.gsm -var/lib/asterisk/sounds/en/call-fwd-cancelled.gsm -var/lib/asterisk/sounds/en/call-fwd-no-ans.gsm -var/lib/asterisk/sounds/en/call-fwd-on-busy.gsm -var/lib/asterisk/sounds/en/call-fwd-parallel.gsm -var/lib/asterisk/sounds/en/call-fwd-unconditional.gsm -var/lib/asterisk/sounds/en/call-preempted.gsm -var/lib/asterisk/sounds/en/call-quality-menu.gsm -var/lib/asterisk/sounds/en/call-requres.gsm -var/lib/asterisk/sounds/en/call-terminated.gsm -var/lib/asterisk/sounds/en/call-waiting.gsm -var/lib/asterisk/sounds/en/call.gsm -var/lib/asterisk/sounds/en/calling.gsm -var/lib/asterisk/sounds/en/calls-taken-by.gsm -var/lib/asterisk/sounds/en/calls-waiting-for-rep.gsm -var/lib/asterisk/sounds/en/calls.gsm -var/lib/asterisk/sounds/en/campground-office.gsm -var/lib/asterisk/sounds/en/cancelled.gsm -var/lib/asterisk/sounds/en/cannot-complete-as-dialed.gsm -var/lib/asterisk/sounds/en/cannot-complete-network-error.gsm -var/lib/asterisk/sounds/en/cannot-complete-otherend-error.gsm -var/lib/asterisk/sounds/en/cannot-complete-temp-error.gsm -var/lib/asterisk/sounds/en/card-balance-is.gsm -var/lib/asterisk/sounds/en/card-is-invalid.gsm -var/lib/asterisk/sounds/en/card-number.gsm -var/lib/asterisk/sounds/en/carried-away-by-monkeys.gsm -var/lib/asterisk/sounds/en/cause-code.gsm -var/lib/asterisk/sounds/en/cc-amex.gsm -var/lib/asterisk/sounds/en/cc-discover.gsm -var/lib/asterisk/sounds/en/cc-mastercard.gsm -var/lib/asterisk/sounds/en/cc-visa.gsm -var/lib/asterisk/sounds/en/celsius.gsm -var/lib/asterisk/sounds/en/cent.gsm -var/lib/asterisk/sounds/en/central.gsm -var/lib/asterisk/sounds/en/cents-per-minute.gsm -var/lib/asterisk/sounds/en/cents.gsm -var/lib/asterisk/sounds/en/ceo-office.gsm -var/lib/asterisk/sounds/en/challenge_try_again.gsm -var/lib/asterisk/sounds/en/chance-of.gsm -var/lib/asterisk/sounds/en/changing.gsm -var/lib/asterisk/sounds/en/channel-insecure-warn.gsm -var/lib/asterisk/sounds/en/channel-secure.gsm -var/lib/asterisk/sounds/en/channel.gsm -var/lib/asterisk/sounds/en/charlotte.gsm -var/lib/asterisk/sounds/en/chat-room.gsm -var/lib/asterisk/sounds/en/check-number-dial-again.gsm -var/lib/asterisk/sounds/en/chemistry.gsm -var/lib/asterisk/sounds/en/chicago.gsm -var/lib/asterisk/sounds/en/chris.gsm -var/lib/asterisk/sounds/en/claims.gsm -var/lib/asterisk/sounds/en/clear.gsm -var/lib/asterisk/sounds/en/clearing.gsm -var/lib/asterisk/sounds/en/cleveland.gsm -var/lib/asterisk/sounds/en/clli.gsm -var/lib/asterisk/sounds/en/close-parenthesis.gsm -var/lib/asterisk/sounds/en/closed.gsm -var/lib/asterisk/sounds/en/clouds.gsm -var/lib/asterisk/sounds/en/cloudy.gsm -var/lib/asterisk/sounds/en/collections.gsm -var/lib/asterisk/sounds/en/colorado-springs.gsm -var/lib/asterisk/sounds/en/colorado.gsm -var/lib/asterisk/sounds/en/columbus.gsm -var/lib/asterisk/sounds/en/comedyclub.gsm -var/lib/asterisk/sounds/en/comma.gsm -var/lib/asterisk/sounds/en/communications.gsm -var/lib/asterisk/sounds/en/company-dir-411.gsm -var/lib/asterisk/sounds/en/complaint.gsm -var/lib/asterisk/sounds/en/compliance.gsm -var/lib/asterisk/sounds/en/computer-friend1.gsm -var/lib/asterisk/sounds/en/computer-friend2.gsm -var/lib/asterisk/sounds/en/conditions.gsm -var/lib/asterisk/sounds/en/conf-1-to-list-users.gsm -var/lib/asterisk/sounds/en/conf-2-to-kick-nonadmin.gsm -var/lib/asterisk/sounds/en/conf-3-mute-or-unmute-nonadmin.gsm -var/lib/asterisk/sounds/en/conf-4-to-record-conf.gsm -var/lib/asterisk/sounds/en/conf-8-for-more-options.gsm -var/lib/asterisk/sounds/en/conf-8-to-exit-return-to-conf.gsm -var/lib/asterisk/sounds/en/conf-adminmenu-162.gsm -var/lib/asterisk/sounds/en/conf-adminmenu-18.gsm -var/lib/asterisk/sounds/en/conf-adminmenu-menu8.gsm -var/lib/asterisk/sounds/en/conf-adminmenu.gsm -var/lib/asterisk/sounds/en/conf-banned.gsm -var/lib/asterisk/sounds/en/conf-enteringno.gsm -var/lib/asterisk/sounds/en/conf-errormenu.gsm -var/lib/asterisk/sounds/en/conf-extended.gsm -var/lib/asterisk/sounds/en/conf-full.gsm -var/lib/asterisk/sounds/en/conf-getchannel.gsm -var/lib/asterisk/sounds/en/conf-getconfno.gsm -var/lib/asterisk/sounds/en/conf-getpin.gsm -var/lib/asterisk/sounds/en/conf-hasentered.gsm -var/lib/asterisk/sounds/en/conf-hasjoin.gsm -var/lib/asterisk/sounds/en/conf-hasleft.gsm -var/lib/asterisk/sounds/en/conf-invalid.gsm -var/lib/asterisk/sounds/en/conf-invalidpin.gsm -var/lib/asterisk/sounds/en/conf-kicked.gsm -var/lib/asterisk/sounds/en/conf-leaderhasleft.gsm -var/lib/asterisk/sounds/en/conf-locked.gsm -var/lib/asterisk/sounds/en/conf-lockednow.gsm -var/lib/asterisk/sounds/en/conf-muted.gsm -var/lib/asterisk/sounds/en/conf-noempty.gsm -var/lib/asterisk/sounds/en/conf-nonextended.gsm -var/lib/asterisk/sounds/en/conf-now-muted.gsm -var/lib/asterisk/sounds/en/conf-now-recording.gsm -var/lib/asterisk/sounds/en/conf-now-unmuted.gsm -var/lib/asterisk/sounds/en/conf-onlyone.gsm -var/lib/asterisk/sounds/en/conf-onlyperson.gsm -var/lib/asterisk/sounds/en/conf-onlypersonleft.gsm -var/lib/asterisk/sounds/en/conf-otherinparty.gsm -var/lib/asterisk/sounds/en/conf-peopleinconf.gsm -var/lib/asterisk/sounds/en/conf-placeintoconf.gsm -var/lib/asterisk/sounds/en/conf-roll-callcomplete.gsm -var/lib/asterisk/sounds/en/conf-sysop.gsm -var/lib/asterisk/sounds/en/conf-sysopreq.gsm -var/lib/asterisk/sounds/en/conf-sysopreqcancelled.gsm -var/lib/asterisk/sounds/en/conf-thereare.gsm -var/lib/asterisk/sounds/en/conf-unlockednow.gsm -var/lib/asterisk/sounds/en/conf-unmuted.gsm -var/lib/asterisk/sounds/en/conf-usermenu-162.gsm -var/lib/asterisk/sounds/en/conf-usermenu.gsm -var/lib/asterisk/sounds/en/conf-userswilljoin.gsm -var/lib/asterisk/sounds/en/conf-userwilljoin.gsm -var/lib/asterisk/sounds/en/conf-waitforleader.gsm -var/lib/asterisk/sounds/en/conf-youareinconfnum.gsm -var/lib/asterisk/sounds/en/confbridge-begin-glorious-a.gsm -var/lib/asterisk/sounds/en/confbridge-begin-glorious-b.gsm -var/lib/asterisk/sounds/en/confbridge-begin-glorious-c.gsm -var/lib/asterisk/sounds/en/confbridge-begin-leader.gsm -var/lib/asterisk/sounds/en/confbridge-binaural-off.gsm -var/lib/asterisk/sounds/en/confbridge-binaural-on.gsm -var/lib/asterisk/sounds/en/confbridge-conf-begin.gsm -var/lib/asterisk/sounds/en/confbridge-conf-end.gsm -var/lib/asterisk/sounds/en/confbridge-dec-list-vol-in.gsm -var/lib/asterisk/sounds/en/confbridge-dec-list-vol-out.gsm -var/lib/asterisk/sounds/en/confbridge-dec-talk-vol-in.gsm -var/lib/asterisk/sounds/en/confbridge-dec-talk-vol-out.gsm -var/lib/asterisk/sounds/en/confbridge-has-joined.gsm -var/lib/asterisk/sounds/en/confbridge-has-left.gsm -var/lib/asterisk/sounds/en/confbridge-inc-list-vol-in.gsm -var/lib/asterisk/sounds/en/confbridge-inc-list-vol-out.gsm -var/lib/asterisk/sounds/en/confbridge-inc-talk-vol-in.gsm -var/lib/asterisk/sounds/en/confbridge-inc-talk-vol-out.gsm -var/lib/asterisk/sounds/en/confbridge-invalid.gsm -var/lib/asterisk/sounds/en/confbridge-join.gsm -var/lib/asterisk/sounds/en/confbridge-leave-in.gsm -var/lib/asterisk/sounds/en/confbridge-leave-out.gsm -var/lib/asterisk/sounds/en/confbridge-leave.gsm -var/lib/asterisk/sounds/en/confbridge-lock-extended.gsm -var/lib/asterisk/sounds/en/confbridge-lock-in.gsm -var/lib/asterisk/sounds/en/confbridge-lock-no-join.gsm -var/lib/asterisk/sounds/en/confbridge-lock-out.gsm -var/lib/asterisk/sounds/en/confbridge-locked.gsm -var/lib/asterisk/sounds/en/confbridge-menu-exit-in.gsm -var/lib/asterisk/sounds/en/confbridge-menu-exit-out.gsm -var/lib/asterisk/sounds/en/confbridge-mute-extended.gsm -var/lib/asterisk/sounds/en/confbridge-mute-in.gsm -var/lib/asterisk/sounds/en/confbridge-mute-out.gsm -var/lib/asterisk/sounds/en/confbridge-muted.gsm -var/lib/asterisk/sounds/en/confbridge-only-one.gsm -var/lib/asterisk/sounds/en/confbridge-only-participant.gsm -var/lib/asterisk/sounds/en/confbridge-participants.gsm -var/lib/asterisk/sounds/en/confbridge-pin-bad.gsm -var/lib/asterisk/sounds/en/confbridge-pin.gsm -var/lib/asterisk/sounds/en/confbridge-remove-last-in.gsm -var/lib/asterisk/sounds/en/confbridge-remove-last-out.gsm -var/lib/asterisk/sounds/en/confbridge-removed.gsm -var/lib/asterisk/sounds/en/confbridge-rest-list-vol-in.gsm -var/lib/asterisk/sounds/en/confbridge-rest-list-vol-out.gsm -var/lib/asterisk/sounds/en/confbridge-rest-talk-vol-in.gsm -var/lib/asterisk/sounds/en/confbridge-rest-talk-vol-out.gsm -var/lib/asterisk/sounds/en/confbridge-there-are.gsm -var/lib/asterisk/sounds/en/confbridge-unlocked.gsm -var/lib/asterisk/sounds/en/confbridge-unmuted.gsm -var/lib/asterisk/sounds/en/conference-call.gsm -var/lib/asterisk/sounds/en/conference-reservations.gsm -var/lib/asterisk/sounds/en/conference.gsm -var/lib/asterisk/sounds/en/confirm-number-is.gsm -var/lib/asterisk/sounds/en/connected.gsm -var/lib/asterisk/sounds/en/connecticut.gsm -var/lib/asterisk/sounds/en/connecting.gsm -var/lib/asterisk/sounds/en/connection-failed.gsm -var/lib/asterisk/sounds/en/connection-timed-out.gsm -var/lib/asterisk/sounds/en/continue-english-press.gsm -var/lib/asterisk/sounds/en/continue-in-english.gsm -var/lib/asterisk/sounds/en/copy-center.gsm -var/lib/asterisk/sounds/en/core-sounds-en.txt -var/lib/asterisk/sounds/en/could-lose-a-few-pounds.gsm -var/lib/asterisk/sounds/en/counseling-services.gsm -var/lib/asterisk/sounds/en/count.gsm -var/lib/asterisk/sounds/en/countdown.gsm -var/lib/asterisk/sounds/en/crash.gsm -var/lib/asterisk/sounds/en/crashing_conf.gsm -var/lib/asterisk/sounds/en/current-time-is.gsm -var/lib/asterisk/sounds/en/current_account_balance.gsm -var/lib/asterisk/sounds/en/currently.gsm -var/lib/asterisk/sounds/en/customer-accounts.gsm -var/lib/asterisk/sounds/en/customer-relations.gsm -var/lib/asterisk/sounds/en/customer-service.gsm -var/lib/asterisk/sounds/en/cyclone.gsm -var/lib/asterisk/sounds/en/dallas.gsm -var/lib/asterisk/sounds/en/date.gsm -var/lib/asterisk/sounds/en/day.gsm -var/lib/asterisk/sounds/en/daylight.gsm -var/lib/asterisk/sounds/en/days.gsm -var/lib/asterisk/sounds/en/de-activated.gsm -var/lib/asterisk/sounds/en/deadbeat.gsm -var/lib/asterisk/sounds/en/decode.gsm -var/lib/asterisk/sounds/en/default-attendant.gsm -var/lib/asterisk/sounds/en/degrees.gsm -var/lib/asterisk/sounds/en/delaware.gsm -var/lib/asterisk/sounds/en/demo-abouttotry.gsm -var/lib/asterisk/sounds/en/demo-congrats.gsm -var/lib/asterisk/sounds/en/demo-echodone.gsm -var/lib/asterisk/sounds/en/demo-echotest.gsm -var/lib/asterisk/sounds/en/demo-enterkeywords.gsm -var/lib/asterisk/sounds/en/demo-instruct.gsm -var/lib/asterisk/sounds/en/demo-moreinfo.gsm -var/lib/asterisk/sounds/en/demo-nogo.gsm -var/lib/asterisk/sounds/en/demo-nomatch.gsm -var/lib/asterisk/sounds/en/demo-thanks.gsm -var/lib/asterisk/sounds/en/denial-of-service.gsm -var/lib/asterisk/sounds/en/denver.gsm -var/lib/asterisk/sounds/en/department-administrator.gsm -var/lib/asterisk/sounds/en/department.gsm -var/lib/asterisk/sounds/en/deposit.gsm -var/lib/asterisk/sounds/en/descending-2tone.gsm -var/lib/asterisk/sounds/en/design.gsm -var/lib/asterisk/sounds/en/detroit.gsm -var/lib/asterisk/sounds/en/development.gsm -var/lib/asterisk/sounds/en/dial-here-often.gsm -var/lib/asterisk/sounds/en/dictate -var/lib/asterisk/sounds/en/dictate/both_help.gsm -var/lib/asterisk/sounds/en/dictate/enter_filename.gsm -var/lib/asterisk/sounds/en/dictate/forhelp.gsm -var/lib/asterisk/sounds/en/dictate/pause.gsm -var/lib/asterisk/sounds/en/dictate/paused.gsm -var/lib/asterisk/sounds/en/dictate/play_help.gsm -var/lib/asterisk/sounds/en/dictate/playback.gsm -var/lib/asterisk/sounds/en/dictate/playback_mode.gsm -var/lib/asterisk/sounds/en/dictate/record.gsm -var/lib/asterisk/sounds/en/dictate/record_help.gsm -var/lib/asterisk/sounds/en/dictate/record_mode.gsm -var/lib/asterisk/sounds/en/dictate/truncating_audio.gsm -var/lib/asterisk/sounds/en/digit.gsm -var/lib/asterisk/sounds/en/digits -var/lib/asterisk/sounds/en/digits.gsm -var/lib/asterisk/sounds/en/digits/0.gsm -var/lib/asterisk/sounds/en/digits/1.gsm -var/lib/asterisk/sounds/en/digits/10.gsm -var/lib/asterisk/sounds/en/digits/11.gsm -var/lib/asterisk/sounds/en/digits/12.gsm -var/lib/asterisk/sounds/en/digits/13.gsm -var/lib/asterisk/sounds/en/digits/14.gsm -var/lib/asterisk/sounds/en/digits/15.gsm -var/lib/asterisk/sounds/en/digits/16.gsm -var/lib/asterisk/sounds/en/digits/17.gsm -var/lib/asterisk/sounds/en/digits/18.gsm -var/lib/asterisk/sounds/en/digits/19.gsm -var/lib/asterisk/sounds/en/digits/2.gsm -var/lib/asterisk/sounds/en/digits/20.gsm -var/lib/asterisk/sounds/en/digits/3.gsm -var/lib/asterisk/sounds/en/digits/30.gsm -var/lib/asterisk/sounds/en/digits/4.gsm -var/lib/asterisk/sounds/en/digits/40.gsm -var/lib/asterisk/sounds/en/digits/5.gsm -var/lib/asterisk/sounds/en/digits/50.gsm -var/lib/asterisk/sounds/en/digits/6.gsm -var/lib/asterisk/sounds/en/digits/60.gsm -var/lib/asterisk/sounds/en/digits/7.gsm -var/lib/asterisk/sounds/en/digits/70.gsm -var/lib/asterisk/sounds/en/digits/8.gsm -var/lib/asterisk/sounds/en/digits/80.gsm -var/lib/asterisk/sounds/en/digits/9.gsm -var/lib/asterisk/sounds/en/digits/90.gsm -var/lib/asterisk/sounds/en/digits/a-m.gsm -var/lib/asterisk/sounds/en/digits/at.gsm -var/lib/asterisk/sounds/en/digits/billion.gsm -var/lib/asterisk/sounds/en/digits/day-0.gsm -var/lib/asterisk/sounds/en/digits/day-1.gsm -var/lib/asterisk/sounds/en/digits/day-2.gsm -var/lib/asterisk/sounds/en/digits/day-3.gsm -var/lib/asterisk/sounds/en/digits/day-4.gsm -var/lib/asterisk/sounds/en/digits/day-5.gsm -var/lib/asterisk/sounds/en/digits/day-6.gsm -var/lib/asterisk/sounds/en/digits/dollars.gsm -var/lib/asterisk/sounds/en/digits/h-1.gsm -var/lib/asterisk/sounds/en/digits/h-10.gsm -var/lib/asterisk/sounds/en/digits/h-11.gsm -var/lib/asterisk/sounds/en/digits/h-12.gsm -var/lib/asterisk/sounds/en/digits/h-13.gsm -var/lib/asterisk/sounds/en/digits/h-14.gsm -var/lib/asterisk/sounds/en/digits/h-15.gsm -var/lib/asterisk/sounds/en/digits/h-16.gsm -var/lib/asterisk/sounds/en/digits/h-17.gsm -var/lib/asterisk/sounds/en/digits/h-18.gsm -var/lib/asterisk/sounds/en/digits/h-19.gsm -var/lib/asterisk/sounds/en/digits/h-2.gsm -var/lib/asterisk/sounds/en/digits/h-20.gsm -var/lib/asterisk/sounds/en/digits/h-3.gsm -var/lib/asterisk/sounds/en/digits/h-30.gsm -var/lib/asterisk/sounds/en/digits/h-4.gsm -var/lib/asterisk/sounds/en/digits/h-40.gsm -var/lib/asterisk/sounds/en/digits/h-5.gsm -var/lib/asterisk/sounds/en/digits/h-50.gsm -var/lib/asterisk/sounds/en/digits/h-6.gsm -var/lib/asterisk/sounds/en/digits/h-60.gsm -var/lib/asterisk/sounds/en/digits/h-7.gsm -var/lib/asterisk/sounds/en/digits/h-70.gsm -var/lib/asterisk/sounds/en/digits/h-8.gsm -var/lib/asterisk/sounds/en/digits/h-80.gsm -var/lib/asterisk/sounds/en/digits/h-9.gsm -var/lib/asterisk/sounds/en/digits/h-90.gsm -var/lib/asterisk/sounds/en/digits/h-billion.gsm -var/lib/asterisk/sounds/en/digits/h-hundred.gsm -var/lib/asterisk/sounds/en/digits/h-million.gsm -var/lib/asterisk/sounds/en/digits/h-thousand.gsm -var/lib/asterisk/sounds/en/digits/hundred.gsm -var/lib/asterisk/sounds/en/digits/million.gsm -var/lib/asterisk/sounds/en/digits/minus.gsm -var/lib/asterisk/sounds/en/digits/mon-0.gsm -var/lib/asterisk/sounds/en/digits/mon-1.gsm -var/lib/asterisk/sounds/en/digits/mon-10.gsm -var/lib/asterisk/sounds/en/digits/mon-11.gsm -var/lib/asterisk/sounds/en/digits/mon-2.gsm -var/lib/asterisk/sounds/en/digits/mon-3.gsm -var/lib/asterisk/sounds/en/digits/mon-4.gsm -var/lib/asterisk/sounds/en/digits/mon-5.gsm -var/lib/asterisk/sounds/en/digits/mon-6.gsm -var/lib/asterisk/sounds/en/digits/mon-7.gsm -var/lib/asterisk/sounds/en/digits/mon-8.gsm -var/lib/asterisk/sounds/en/digits/mon-9.gsm -var/lib/asterisk/sounds/en/digits/oclock.gsm -var/lib/asterisk/sounds/en/digits/oh.gsm -var/lib/asterisk/sounds/en/digits/p-m.gsm -var/lib/asterisk/sounds/en/digits/pound.gsm -var/lib/asterisk/sounds/en/digits/star.gsm -var/lib/asterisk/sounds/en/digits/thousand.gsm -var/lib/asterisk/sounds/en/digits/today.gsm -var/lib/asterisk/sounds/en/digits/tomorrow.gsm -var/lib/asterisk/sounds/en/digits/yesterday.gsm -var/lib/asterisk/sounds/en/dir-first.gsm -var/lib/asterisk/sounds/en/dir-firstlast.gsm -var/lib/asterisk/sounds/en/dir-instr.gsm -var/lib/asterisk/sounds/en/dir-intro-fn.gsm -var/lib/asterisk/sounds/en/dir-intro.gsm -var/lib/asterisk/sounds/en/dir-last.gsm -var/lib/asterisk/sounds/en/dir-multi1.gsm -var/lib/asterisk/sounds/en/dir-multi2.gsm -var/lib/asterisk/sounds/en/dir-multi3.gsm -var/lib/asterisk/sounds/en/dir-multi9.gsm -var/lib/asterisk/sounds/en/dir-nomatch.gsm -var/lib/asterisk/sounds/en/dir-nomore.gsm -var/lib/asterisk/sounds/en/dir-pls-enter.gsm -var/lib/asterisk/sounds/en/dir-usingkeypad.gsm -var/lib/asterisk/sounds/en/dir-welcome.gsm -var/lib/asterisk/sounds/en/directory-assistance.gsm -var/lib/asterisk/sounds/en/directory.gsm -var/lib/asterisk/sounds/en/disabled.gsm -var/lib/asterisk/sounds/en/discon-or-out-of-service.gsm -var/lib/asterisk/sounds/en/disconnected.gsm -var/lib/asterisk/sounds/en/disk.gsm -var/lib/asterisk/sounds/en/distribution.gsm -var/lib/asterisk/sounds/en/divided-by.gsm -var/lib/asterisk/sounds/en/dns.gsm -var/lib/asterisk/sounds/en/do-not-disturb.gsm -var/lib/asterisk/sounds/en/doing-enum-lookup.gsm -var/lib/asterisk/sounds/en/donotcall1.gsm -var/lib/asterisk/sounds/en/donotcall2.gsm -var/lib/asterisk/sounds/en/dont-know-who-sent.gsm -var/lib/asterisk/sounds/en/doppler-radar.gsm -var/lib/asterisk/sounds/en/down.gsm -var/lib/asterisk/sounds/en/driving-directions.gsm -var/lib/asterisk/sounds/en/duplex.gsm -var/lib/asterisk/sounds/en/duplication.gsm -var/lib/asterisk/sounds/en/early.gsm -var/lib/asterisk/sounds/en/east.gsm -var/lib/asterisk/sounds/en/easterly.gsm -var/lib/asterisk/sounds/en/eastern.gsm -var/lib/asterisk/sounds/en/echo-test.gsm -var/lib/asterisk/sounds/en/ed.gsm -var/lib/asterisk/sounds/en/eighteenth.gsm -var/lib/asterisk/sounds/en/eighth.gsm -var/lib/asterisk/sounds/en/eightieth.gsm -var/lib/asterisk/sounds/en/el-paso.gsm -var/lib/asterisk/sounds/en/eletelephony.gsm -var/lib/asterisk/sounds/en/eleventh.gsm -var/lib/asterisk/sounds/en/email.gsm -var/lib/asterisk/sounds/en/emergency.gsm -var/lib/asterisk/sounds/en/enabled.gsm -var/lib/asterisk/sounds/en/encode.gsm -var/lib/asterisk/sounds/en/engineering.gsm -var/lib/asterisk/sounds/en/ent-target-attendant.gsm -var/lib/asterisk/sounds/en/enter-a-time.gsm -var/lib/asterisk/sounds/en/enter-conf-call-number.gsm -var/lib/asterisk/sounds/en/enter-conf-pin-number.gsm -var/lib/asterisk/sounds/en/enter-ext-of-person.gsm -var/lib/asterisk/sounds/en/enter-num-blacklist.gsm -var/lib/asterisk/sounds/en/enter-password.gsm -var/lib/asterisk/sounds/en/enter-phone-number10.gsm -var/lib/asterisk/sounds/en/enter_account.gsm -var/lib/asterisk/sounds/en/entering-conf-number.gsm -var/lib/asterisk/sounds/en/entr-num-rmv-blklist.gsm -var/lib/asterisk/sounds/en/enum-lookup-failed.gsm -var/lib/asterisk/sounds/en/enum-lookup-successful.gsm -var/lib/asterisk/sounds/en/error-number.gsm -var/lib/asterisk/sounds/en/error.gsm -var/lib/asterisk/sounds/en/est-hold-time-is.gsm -var/lib/asterisk/sounds/en/euro.gsm -var/lib/asterisk/sounds/en/european.gsm -var/lib/asterisk/sounds/en/euros.gsm -var/lib/asterisk/sounds/en/evening.gsm -var/lib/asterisk/sounds/en/explanation.gsm -var/lib/asterisk/sounds/en/ext-or-zero.gsm -var/lib/asterisk/sounds/en/extension.gsm -var/lib/asterisk/sounds/en/extensions.gsm -var/lib/asterisk/sounds/en/extra-sounds-en.txt -var/lib/asterisk/sounds/en/facilities.gsm -var/lib/asterisk/sounds/en/fahrenheit.gsm -var/lib/asterisk/sounds/en/falling.gsm -var/lib/asterisk/sounds/en/fast.gsm -var/lib/asterisk/sounds/en/feature-not-avail-line.gsm -var/lib/asterisk/sounds/en/feeling_lucky_punk.gsm -var/lib/asterisk/sounds/en/feet.gsm -var/lib/asterisk/sounds/en/female.gsm -var/lib/asterisk/sounds/en/fifteenth.gsm -var/lib/asterisk/sounds/en/fifth.gsm -var/lib/asterisk/sounds/en/fiftieth.gsm -var/lib/asterisk/sounds/en/finals.gsm -var/lib/asterisk/sounds/en/finance.gsm -var/lib/asterisk/sounds/en/first-in-line.gsm -var/lib/asterisk/sounds/en/first.gsm -var/lib/asterisk/sounds/en/flagged-for-lea.gsm -var/lib/asterisk/sounds/en/flooding.gsm -var/lib/asterisk/sounds/en/florida.gsm -var/lib/asterisk/sounds/en/fog.gsm -var/lib/asterisk/sounds/en/foggy.gsm -var/lib/asterisk/sounds/en/followed-by.gsm -var/lib/asterisk/sounds/en/followed_hash.gsm -var/lib/asterisk/sounds/en/followed_pound.gsm -var/lib/asterisk/sounds/en/followme -var/lib/asterisk/sounds/en/followme/call-from.gsm -var/lib/asterisk/sounds/en/followme/no-recording.gsm -var/lib/asterisk/sounds/en/followme/options.gsm -var/lib/asterisk/sounds/en/followme/pls-hold-while-try.gsm -var/lib/asterisk/sounds/en/followme/sorry.gsm -var/lib/asterisk/sounds/en/followme/status.gsm -var/lib/asterisk/sounds/en/food-service.gsm -var/lib/asterisk/sounds/en/food-services.gsm -var/lib/asterisk/sounds/en/for-a-daily-wakeup-call.gsm -var/lib/asterisk/sounds/en/for-a-list-of.gsm -var/lib/asterisk/sounds/en/for-accounting.gsm -var/lib/asterisk/sounds/en/for-billing.gsm -var/lib/asterisk/sounds/en/for-english-press.gsm -var/lib/asterisk/sounds/en/for-investor-relations.gsm -var/lib/asterisk/sounds/en/for-louie-louie.gsm -var/lib/asterisk/sounds/en/for-no-press.gsm -var/lib/asterisk/sounds/en/for-qc-and-training-purposes.gsm -var/lib/asterisk/sounds/en/for-quality-purposes.gsm -var/lib/asterisk/sounds/en/for-sales.gsm -var/lib/asterisk/sounds/en/for-service.gsm -var/lib/asterisk/sounds/en/for-tech-support.gsm -var/lib/asterisk/sounds/en/for-the-first.gsm -var/lib/asterisk/sounds/en/for-the-weather.gsm -var/lib/asterisk/sounds/en/for-wakeup-call.gsm -var/lib/asterisk/sounds/en/for-yes-press.gsm -var/lib/asterisk/sounds/en/for.gsm -var/lib/asterisk/sounds/en/forget_about_it.gsm -var/lib/asterisk/sounds/en/fort-worth.gsm -var/lib/asterisk/sounds/en/fortieth.gsm -var/lib/asterisk/sounds/en/fourteenth.gsm -var/lib/asterisk/sounds/en/fourth.gsm -var/lib/asterisk/sounds/en/freeze.gsm -var/lib/asterisk/sounds/en/freezing.gsm -var/lib/asterisk/sounds/en/frequency.gsm -var/lib/asterisk/sounds/en/fresno.gsm -var/lib/asterisk/sounds/en/from-unknown-caller.gsm -var/lib/asterisk/sounds/en/from.gsm -var/lib/asterisk/sounds/en/ftp.gsm -var/lib/asterisk/sounds/en/gale.gsm -var/lib/asterisk/sounds/en/gambling-drunk.gsm -var/lib/asterisk/sounds/en/georgia.gsm -var/lib/asterisk/sounds/en/get-in-line-sales-guy.gsm -var/lib/asterisk/sounds/en/get_bleep_outta.gsm -var/lib/asterisk/sounds/en/get_information.gsm -var/lib/asterisk/sounds/en/get_information_first.gsm -var/lib/asterisk/sounds/en/gigabits.gsm -var/lib/asterisk/sounds/en/gigabytes.gsm -var/lib/asterisk/sounds/en/gigahertz.gsm -var/lib/asterisk/sounds/en/giggle1.gsm -var/lib/asterisk/sounds/en/gmt.gsm -var/lib/asterisk/sounds/en/go-away1.gsm -var/lib/asterisk/sounds/en/go-away2.gsm -var/lib/asterisk/sounds/en/good-afternoon.gsm -var/lib/asterisk/sounds/en/good-evening.gsm -var/lib/asterisk/sounds/en/good-morning.gsm -var/lib/asterisk/sounds/en/good.gsm -var/lib/asterisk/sounds/en/goodbye.gsm -var/lib/asterisk/sounds/en/goodbye_for_the_best.gsm -var/lib/asterisk/sounds/en/goodbye_love.gsm -var/lib/asterisk/sounds/en/got_kidding.gsm -var/lib/asterisk/sounds/en/grammar.gsm -var/lib/asterisk/sounds/en/greater-than.gsm -var/lib/asterisk/sounds/en/groovy.gsm -var/lib/asterisk/sounds/en/ha -var/lib/asterisk/sounds/en/ha/ac.gsm -var/lib/asterisk/sounds/en/ha/air-conditioner.gsm -var/lib/asterisk/sounds/en/ha/alarm.gsm -var/lib/asterisk/sounds/en/ha/amp.gsm -var/lib/asterisk/sounds/en/ha/amps.gsm -var/lib/asterisk/sounds/en/ha/attic.gsm -var/lib/asterisk/sounds/en/ha/baby-sleeping-mode.gsm -var/lib/asterisk/sounds/en/ha/back.gsm -var/lib/asterisk/sounds/en/ha/basement.gsm -var/lib/asterisk/sounds/en/ha/bathroom.gsm -var/lib/asterisk/sounds/en/ha/bedroom.gsm -var/lib/asterisk/sounds/en/ha/bright.gsm -var/lib/asterisk/sounds/en/ha/callerid.gsm -var/lib/asterisk/sounds/en/ha/carport.gsm -var/lib/asterisk/sounds/en/ha/closet.gsm -var/lib/asterisk/sounds/en/ha/coffee-pot.gsm -var/lib/asterisk/sounds/en/ha/cool.gsm -var/lib/asterisk/sounds/en/ha/cooling.gsm -var/lib/asterisk/sounds/en/ha/dc.gsm -var/lib/asterisk/sounds/en/ha/decibel.gsm -var/lib/asterisk/sounds/en/ha/decibels.gsm -var/lib/asterisk/sounds/en/ha/deck.gsm -var/lib/asterisk/sounds/en/ha/degree.gsm -var/lib/asterisk/sounds/en/ha/degrees.gsm -var/lib/asterisk/sounds/en/ha/den.gsm -var/lib/asterisk/sounds/en/ha/dim.gsm -var/lib/asterisk/sounds/en/ha/dining-room.gsm -var/lib/asterisk/sounds/en/ha/door.gsm -var/lib/asterisk/sounds/en/ha/doors.gsm -var/lib/asterisk/sounds/en/ha/down.gsm -var/lib/asterisk/sounds/en/ha/driveway.gsm -var/lib/asterisk/sounds/en/ha/dryer.gsm -var/lib/asterisk/sounds/en/ha/fan.gsm -var/lib/asterisk/sounds/en/ha/farad.gsm -var/lib/asterisk/sounds/en/ha/farads.gsm -var/lib/asterisk/sounds/en/ha/first-floor.gsm -var/lib/asterisk/sounds/en/ha/floor.gsm -var/lib/asterisk/sounds/en/ha/floors.gsm -var/lib/asterisk/sounds/en/ha/for-extended-status-report.gsm -var/lib/asterisk/sounds/en/ha/for-quick-status-report.gsm -var/lib/asterisk/sounds/en/ha/for-wx-report.gsm -var/lib/asterisk/sounds/en/ha/fountain.gsm -var/lib/asterisk/sounds/en/ha/foyer.gsm -var/lib/asterisk/sounds/en/ha/front.gsm -var/lib/asterisk/sounds/en/ha/furnace.gsm -var/lib/asterisk/sounds/en/ha/game-room.gsm -var/lib/asterisk/sounds/en/ha/garage.gsm -var/lib/asterisk/sounds/en/ha/great-room.gsm -var/lib/asterisk/sounds/en/ha/guest-room.gsm -var/lib/asterisk/sounds/en/ha/hall.gsm -var/lib/asterisk/sounds/en/ha/has-been-left.gsm -var/lib/asterisk/sounds/en/ha/heat-pump.gsm -var/lib/asterisk/sounds/en/ha/heat.gsm -var/lib/asterisk/sounds/en/ha/heating.gsm -var/lib/asterisk/sounds/en/ha/hot-tub.gsm -var/lib/asterisk/sounds/en/ha/house.gsm -var/lib/asterisk/sounds/en/ha/intruder.gsm -var/lib/asterisk/sounds/en/ha/is.gsm -var/lib/asterisk/sounds/en/ha/kelvin.gsm -var/lib/asterisk/sounds/en/ha/kitchen.gsm -var/lib/asterisk/sounds/en/ha/lamp.gsm -var/lib/asterisk/sounds/en/ha/lamps.gsm -var/lib/asterisk/sounds/en/ha/landscape.gsm -var/lib/asterisk/sounds/en/ha/laundry.gsm -var/lib/asterisk/sounds/en/ha/library.gsm -var/lib/asterisk/sounds/en/ha/light.gsm -var/lib/asterisk/sounds/en/ha/lights.gsm -var/lib/asterisk/sounds/en/ha/living-room.gsm -var/lib/asterisk/sounds/en/ha/locked.gsm -var/lib/asterisk/sounds/en/ha/locking.gsm -var/lib/asterisk/sounds/en/ha/mailbox.gsm -var/lib/asterisk/sounds/en/ha/master.gsm -var/lib/asterisk/sounds/en/ha/off.gsm -var/lib/asterisk/sounds/en/ha/office.gsm -var/lib/asterisk/sounds/en/ha/ohm.gsm -var/lib/asterisk/sounds/en/ha/ohms.gsm -var/lib/asterisk/sounds/en/ha/on.gsm -var/lib/asterisk/sounds/en/ha/open.gsm -var/lib/asterisk/sounds/en/ha/patio.gsm -var/lib/asterisk/sounds/en/ha/phone.gsm -var/lib/asterisk/sounds/en/ha/play-room.gsm -var/lib/asterisk/sounds/en/ha/play.gsm -var/lib/asterisk/sounds/en/ha/pool.gsm -var/lib/asterisk/sounds/en/ha/porch.gsm -var/lib/asterisk/sounds/en/ha/power-failure.gsm -var/lib/asterisk/sounds/en/ha/pressure.gsm -var/lib/asterisk/sounds/en/ha/psi.gsm -var/lib/asterisk/sounds/en/ha/quiet-mode.gsm -var/lib/asterisk/sounds/en/ha/reset.gsm -var/lib/asterisk/sounds/en/ha/roof.gsm -var/lib/asterisk/sounds/en/ha/room.gsm -var/lib/asterisk/sounds/en/ha/rooms.gsm -var/lib/asterisk/sounds/en/ha/second-floor.gsm -var/lib/asterisk/sounds/en/ha/secure.gsm -var/lib/asterisk/sounds/en/ha/security-system.gsm -var/lib/asterisk/sounds/en/ha/set.gsm -var/lib/asterisk/sounds/en/ha/side.gsm -var/lib/asterisk/sounds/en/ha/solar.gsm -var/lib/asterisk/sounds/en/ha/sprinklers.gsm -var/lib/asterisk/sounds/en/ha/still.gsm -var/lib/asterisk/sounds/en/ha/stove.gsm -var/lib/asterisk/sounds/en/ha/sump-pump.gsm -var/lib/asterisk/sounds/en/ha/sun-room.gsm -var/lib/asterisk/sounds/en/ha/system.gsm -var/lib/asterisk/sounds/en/ha/systems.gsm -var/lib/asterisk/sounds/en/ha/thermostat.gsm -var/lib/asterisk/sounds/en/ha/to-control-environ-sys.gsm -var/lib/asterisk/sounds/en/ha/to-control-lights-appl.gsm -var/lib/asterisk/sounds/en/ha/tower.gsm -var/lib/asterisk/sounds/en/ha/unlocked.gsm -var/lib/asterisk/sounds/en/ha/unlocking.gsm -var/lib/asterisk/sounds/en/ha/up.gsm -var/lib/asterisk/sounds/en/ha/volt.gsm -var/lib/asterisk/sounds/en/ha/volts.gsm -var/lib/asterisk/sounds/en/ha/washing-machine.gsm -var/lib/asterisk/sounds/en/ha/water-heater.gsm -var/lib/asterisk/sounds/en/ha/watt.gsm -var/lib/asterisk/sounds/en/ha/watts.gsm -var/lib/asterisk/sounds/en/ha/well-pump.gsm -var/lib/asterisk/sounds/en/ha/window.gsm -var/lib/asterisk/sounds/en/ha/windows.gsm -var/lib/asterisk/sounds/en/ha/xmas-lights.gsm -var/lib/asterisk/sounds/en/ha/xmas-tree.gsm -var/lib/asterisk/sounds/en/ha/yard.gsm -var/lib/asterisk/sounds/en/hail.gsm -var/lib/asterisk/sounds/en/hal_goodbye.gsm -var/lib/asterisk/sounds/en/half.gsm -var/lib/asterisk/sounds/en/hang-on-a-second-angry.gsm -var/lib/asterisk/sounds/en/hang-on-a-second.gsm -var/lib/asterisk/sounds/en/hangup-try-again.gsm -var/lib/asterisk/sounds/en/happy_saved.gsm -var/lib/asterisk/sounds/en/has-arrived-at.gsm -var/lib/asterisk/sounds/en/has-been-changed-to.gsm -var/lib/asterisk/sounds/en/has-been-cleared.gsm -var/lib/asterisk/sounds/en/has-been-disconnected.gsm -var/lib/asterisk/sounds/en/has-been-set-to.gsm -var/lib/asterisk/sounds/en/has-been.gsm -var/lib/asterisk/sounds/en/has-expired.gsm -var/lib/asterisk/sounds/en/has-issued-a.gsm -var/lib/asterisk/sounds/en/has-not-been-seen-for.gsm -var/lib/asterisk/sounds/en/has.gsm -var/lib/asterisk/sounds/en/hash.gsm -var/lib/asterisk/sounds/en/hawaii.gsm -var/lib/asterisk/sounds/en/headed-towards.gsm -var/lib/asterisk/sounds/en/heading.gsm -var/lib/asterisk/sounds/en/health-center.gsm -var/lib/asterisk/sounds/en/hear-odd-noise.gsm -var/lib/asterisk/sounds/en/hear-toilet-flush.gsm -var/lib/asterisk/sounds/en/hectopascal.gsm -var/lib/asterisk/sounds/en/hello-world.gsm -var/lib/asterisk/sounds/en/hello.gsm -var/lib/asterisk/sounds/en/helpdesk.gsm -var/lib/asterisk/sounds/en/hertz.gsm -var/lib/asterisk/sounds/en/high.gsm -var/lib/asterisk/sounds/en/highway.gsm -var/lib/asterisk/sounds/en/hit.gsm -var/lib/asterisk/sounds/en/hold-or-dial-0.gsm -var/lib/asterisk/sounds/en/home.gsm -var/lib/asterisk/sounds/en/honolulu.gsm -var/lib/asterisk/sounds/en/hours.gsm -var/lib/asterisk/sounds/en/housekeeping.gsm -var/lib/asterisk/sounds/en/houston.gsm -var/lib/asterisk/sounds/en/http.gsm -var/lib/asterisk/sounds/en/human-resources.gsm -var/lib/asterisk/sounds/en/humidity.gsm -var/lib/asterisk/sounds/en/hundredth.gsm -var/lib/asterisk/sounds/en/hurricane.gsm -var/lib/asterisk/sounds/en/hz.gsm -var/lib/asterisk/sounds/en/i-dont-understand.gsm -var/lib/asterisk/sounds/en/i-dont-understand2.gsm -var/lib/asterisk/sounds/en/i-dont-understand3.gsm -var/lib/asterisk/sounds/en/i-dont-understand4.gsm -var/lib/asterisk/sounds/en/i-dont-understand5.gsm -var/lib/asterisk/sounds/en/i-grow-bored.gsm -var/lib/asterisk/sounds/en/ice.gsm -var/lib/asterisk/sounds/en/icmp.gsm -var/lib/asterisk/sounds/en/icy.gsm -var/lib/asterisk/sounds/en/idaho.gsm -var/lib/asterisk/sounds/en/if-correct-press.gsm -var/lib/asterisk/sounds/en/if-grtg-played-indefinately.gsm -var/lib/asterisk/sounds/en/if-grtg-should-expire-at.gsm -var/lib/asterisk/sounds/en/if-maint-contract-or-emergency.gsm -var/lib/asterisk/sounds/en/if-rotary-phone.gsm -var/lib/asterisk/sounds/en/if-this-is-correct-press.gsm -var/lib/asterisk/sounds/en/if-this-is-correct.gsm -var/lib/asterisk/sounds/en/if-this-is-not-correct.gsm -var/lib/asterisk/sounds/en/if-u-know-ext-dial.gsm -var/lib/asterisk/sounds/en/if-unsuccessful-speak-to.gsm -var/lib/asterisk/sounds/en/if-you-know-the.gsm -var/lib/asterisk/sounds/en/if-you-need-help.gsm -var/lib/asterisk/sounds/en/if-youd-like-to-make-a-call.gsm -var/lib/asterisk/sounds/en/illinois.gsm -var/lib/asterisk/sounds/en/im-sorry-unable-to-connect-to-eng.gsm -var/lib/asterisk/sounds/en/im-sorry.gsm -var/lib/asterisk/sounds/en/imap.gsm -var/lib/asterisk/sounds/en/in-service.gsm -var/lib/asterisk/sounds/en/in-the-line.gsm -var/lib/asterisk/sounds/en/in-the-queue.gsm -var/lib/asterisk/sounds/en/in-the.gsm -var/lib/asterisk/sounds/en/in-your-city.gsm -var/lib/asterisk/sounds/en/in-your-zip-code.gsm -var/lib/asterisk/sounds/en/inbound.gsm -var/lib/asterisk/sounds/en/indiana.gsm -var/lib/asterisk/sounds/en/indianapolis.gsm -var/lib/asterisk/sounds/en/indicated.gsm -var/lib/asterisk/sounds/en/info-about-last-call.gsm -var/lib/asterisk/sounds/en/information-technology.gsm -var/lib/asterisk/sounds/en/information.gsm -var/lib/asterisk/sounds/en/infuriate-tech-staff.gsm -var/lib/asterisk/sounds/en/initiated.gsm -var/lib/asterisk/sounds/en/initiating.gsm -var/lib/asterisk/sounds/en/inside-sales.gsm -var/lib/asterisk/sounds/en/internal-audit.gsm -var/lib/asterisk/sounds/en/international-call.gsm -var/lib/asterisk/sounds/en/interstate.gsm -var/lib/asterisk/sounds/en/invalid-date.gsm -var/lib/asterisk/sounds/en/invalid-featurecode.gsm -var/lib/asterisk/sounds/en/invalid.gsm -var/lib/asterisk/sounds/en/investor-relations.gsm -var/lib/asterisk/sounds/en/iowa.gsm -var/lib/asterisk/sounds/en/is-at.gsm -var/lib/asterisk/sounds/en/is-curntly-busy.gsm -var/lib/asterisk/sounds/en/is-curntly-unavail.gsm -var/lib/asterisk/sounds/en/is-currently.gsm -var/lib/asterisk/sounds/en/is-in-use.gsm -var/lib/asterisk/sounds/en/is-not-in-the.gsm -var/lib/asterisk/sounds/en/is-not-set.gsm -var/lib/asterisk/sounds/en/is-now-being-recorded.gsm -var/lib/asterisk/sounds/en/is-set-to.gsm -var/lib/asterisk/sounds/en/is.gsm -var/lib/asterisk/sounds/en/it-now.gsm -var/lib/asterisk/sounds/en/it-services.gsm -var/lib/asterisk/sounds/en/jacksonville.gsm -var/lib/asterisk/sounds/en/janitorial.gsm -var/lib/asterisk/sounds/en/jason.gsm -var/lib/asterisk/sounds/en/jedi-extension-trick.gsm -var/lib/asterisk/sounds/en/john.gsm -var/lib/asterisk/sounds/en/just-kidding-not-upset.gsm -var/lib/asterisk/sounds/en/just-kidding-not-upset2.gsm -var/lib/asterisk/sounds/en/kansas-city.gsm -var/lib/asterisk/sounds/en/kansas.gsm -var/lib/asterisk/sounds/en/kentucky.gsm -var/lib/asterisk/sounds/en/keywords_cross_fingers.gsm -var/lib/asterisk/sounds/en/kilobits.gsm -var/lib/asterisk/sounds/en/kilobytes.gsm -var/lib/asterisk/sounds/en/kilohertz.gsm -var/lib/asterisk/sounds/en/kilometer.gsm -var/lib/asterisk/sounds/en/kilometers-per-hour.gsm -var/lib/asterisk/sounds/en/knock-knock.gsm -var/lib/asterisk/sounds/en/knots.gsm -var/lib/asterisk/sounds/en/language.gsm -var/lib/asterisk/sounds/en/las-vegas.gsm -var/lib/asterisk/sounds/en/last-error-was.gsm -var/lib/asterisk/sounds/en/last-num-to-call.gsm -var/lib/asterisk/sounds/en/late.gsm -var/lib/asterisk/sounds/en/later.gsm -var/lib/asterisk/sounds/en/lea-may-request-info.gsm -var/lib/asterisk/sounds/en/left-bracket.gsm -var/lib/asterisk/sounds/en/legal.gsm -var/lib/asterisk/sounds/en/len.gsm -var/lib/asterisk/sounds/en/less-than.gsm -var/lib/asterisk/sounds/en/letters -var/lib/asterisk/sounds/en/letters/a.gsm -var/lib/asterisk/sounds/en/letters/ascii123.gsm -var/lib/asterisk/sounds/en/letters/ascii124.gsm -var/lib/asterisk/sounds/en/letters/ascii125.gsm -var/lib/asterisk/sounds/en/letters/ascii126.gsm -var/lib/asterisk/sounds/en/letters/ascii34.gsm -var/lib/asterisk/sounds/en/letters/ascii36.gsm -var/lib/asterisk/sounds/en/letters/ascii37.gsm -var/lib/asterisk/sounds/en/letters/ascii38.gsm -var/lib/asterisk/sounds/en/letters/ascii39.gsm -var/lib/asterisk/sounds/en/letters/ascii40.gsm -var/lib/asterisk/sounds/en/letters/ascii41.gsm -var/lib/asterisk/sounds/en/letters/ascii42.gsm -var/lib/asterisk/sounds/en/letters/ascii44.gsm -var/lib/asterisk/sounds/en/letters/ascii58.gsm -var/lib/asterisk/sounds/en/letters/ascii59.gsm -var/lib/asterisk/sounds/en/letters/ascii60.gsm -var/lib/asterisk/sounds/en/letters/ascii62.gsm -var/lib/asterisk/sounds/en/letters/ascii63.gsm -var/lib/asterisk/sounds/en/letters/ascii91.gsm -var/lib/asterisk/sounds/en/letters/ascii92.gsm -var/lib/asterisk/sounds/en/letters/ascii93.gsm -var/lib/asterisk/sounds/en/letters/ascii94.gsm -var/lib/asterisk/sounds/en/letters/ascii95.gsm -var/lib/asterisk/sounds/en/letters/ascii96.gsm -var/lib/asterisk/sounds/en/letters/asterisk.gsm -var/lib/asterisk/sounds/en/letters/at.gsm -var/lib/asterisk/sounds/en/letters/b.gsm -var/lib/asterisk/sounds/en/letters/c.gsm -var/lib/asterisk/sounds/en/letters/d.gsm -var/lib/asterisk/sounds/en/letters/dash.gsm -var/lib/asterisk/sounds/en/letters/dollar.gsm -var/lib/asterisk/sounds/en/letters/dot.gsm -var/lib/asterisk/sounds/en/letters/e.gsm -var/lib/asterisk/sounds/en/letters/equals.gsm -var/lib/asterisk/sounds/en/letters/exclaimation-point.gsm -var/lib/asterisk/sounds/en/letters/f.gsm -var/lib/asterisk/sounds/en/letters/g.gsm -var/lib/asterisk/sounds/en/letters/h.gsm -var/lib/asterisk/sounds/en/letters/i.gsm -var/lib/asterisk/sounds/en/letters/j.gsm -var/lib/asterisk/sounds/en/letters/k.gsm -var/lib/asterisk/sounds/en/letters/l.gsm -var/lib/asterisk/sounds/en/letters/m.gsm -var/lib/asterisk/sounds/en/letters/n.gsm -var/lib/asterisk/sounds/en/letters/o.gsm -var/lib/asterisk/sounds/en/letters/p.gsm -var/lib/asterisk/sounds/en/letters/plus.gsm -var/lib/asterisk/sounds/en/letters/q.gsm -var/lib/asterisk/sounds/en/letters/r.gsm -var/lib/asterisk/sounds/en/letters/s.gsm -var/lib/asterisk/sounds/en/letters/slash.gsm -var/lib/asterisk/sounds/en/letters/space.gsm -var/lib/asterisk/sounds/en/letters/t.gsm -var/lib/asterisk/sounds/en/letters/u.gsm -var/lib/asterisk/sounds/en/letters/v.gsm -var/lib/asterisk/sounds/en/letters/w.gsm -var/lib/asterisk/sounds/en/letters/x.gsm -var/lib/asterisk/sounds/en/letters/y.gsm -var/lib/asterisk/sounds/en/letters/z.gsm -var/lib/asterisk/sounds/en/letters/zed.gsm -var/lib/asterisk/sounds/en/library.gsm -var/lib/asterisk/sounds/en/lightning.gsm -var/lib/asterisk/sounds/en/like_to_tell_valid_ext.gsm -var/lib/asterisk/sounds/en/limit-simul-calls.gsm -var/lib/asterisk/sounds/en/lines-complaining-customers.gsm -var/lib/asterisk/sounds/en/linux.gsm -var/lib/asterisk/sounds/en/list.gsm -var/lib/asterisk/sounds/en/load-average.gsm -var/lib/asterisk/sounds/en/local-authorities.gsm -var/lib/asterisk/sounds/en/location.gsm -var/lib/asterisk/sounds/en/login-fail.gsm -var/lib/asterisk/sounds/en/long-beach.gsm -var/lib/asterisk/sounds/en/los-angeles.gsm -var/lib/asterisk/sounds/en/loss-prevention.gsm -var/lib/asterisk/sounds/en/loss.gsm -var/lib/asterisk/sounds/en/lots-o-monkeys.gsm -var/lib/asterisk/sounds/en/louisiana.gsm -var/lib/asterisk/sounds/en/low.gsm -var/lib/asterisk/sounds/en/lowercase.gsm -var/lib/asterisk/sounds/en/lunch.gsm -var/lib/asterisk/sounds/en/lyrics-louie-louie.gsm -var/lib/asterisk/sounds/en/machine.gsm -var/lib/asterisk/sounds/en/made-it-up.gsm -var/lib/asterisk/sounds/en/mail.gsm -var/lib/asterisk/sounds/en/mailroom.gsm -var/lib/asterisk/sounds/en/main-menu.gsm -var/lib/asterisk/sounds/en/maine.gsm -var/lib/asterisk/sounds/en/maintenance.gsm -var/lib/asterisk/sounds/en/male.gsm -var/lib/asterisk/sounds/en/management.gsm -var/lib/asterisk/sounds/en/manufacturing.gsm -var/lib/asterisk/sounds/en/marketing.gsm -var/lib/asterisk/sounds/en/marryme.gsm -var/lib/asterisk/sounds/en/martini.gsm -var/lib/asterisk/sounds/en/maryland.gsm -var/lib/asterisk/sounds/en/massachusetts.gsm -var/lib/asterisk/sounds/en/mathematics.gsm -var/lib/asterisk/sounds/en/maximum.gsm -var/lib/asterisk/sounds/en/megabits.gsm -var/lib/asterisk/sounds/en/megabytes.gsm -var/lib/asterisk/sounds/en/megahertz.gsm -var/lib/asterisk/sounds/en/memory.gsm -var/lib/asterisk/sounds/en/memphis.gsm -var/lib/asterisk/sounds/en/menu.gsm -var/lib/asterisk/sounds/en/mesa.gsm -var/lib/asterisk/sounds/en/message-from.gsm -var/lib/asterisk/sounds/en/message-number.gsm -var/lib/asterisk/sounds/en/messages_curious.gsm -var/lib/asterisk/sounds/en/meter.gsm -var/lib/asterisk/sounds/en/meters.gsm -var/lib/asterisk/sounds/en/miami.gsm -var/lib/asterisk/sounds/en/michigan.gsm -var/lib/asterisk/sounds/en/midnight-tomorrow-night.gsm -var/lib/asterisk/sounds/en/midnight-tonight.gsm -var/lib/asterisk/sounds/en/midnight.gsm -var/lib/asterisk/sounds/en/mike.gsm -var/lib/asterisk/sounds/en/miles-per-hour.gsm -var/lib/asterisk/sounds/en/miles.gsm -var/lib/asterisk/sounds/en/millionth.gsm -var/lib/asterisk/sounds/en/milwaukee.gsm -var/lib/asterisk/sounds/en/mind_repeating.gsm -var/lib/asterisk/sounds/en/minimum.gsm -var/lib/asterisk/sounds/en/minions-not-answering-leave-message.gsm -var/lib/asterisk/sounds/en/minneapolis.gsm -var/lib/asterisk/sounds/en/minnesota.gsm -var/lib/asterisk/sounds/en/minute.gsm -var/lib/asterisk/sounds/en/minutes.gsm -var/lib/asterisk/sounds/en/missed.gsm -var/lib/asterisk/sounds/en/mississippi.gsm -var/lib/asterisk/sounds/en/missouri.gsm -var/lib/asterisk/sounds/en/misty.gsm -var/lib/asterisk/sounds/en/mode.gsm -var/lib/asterisk/sounds/en/monitored.gsm -var/lib/asterisk/sounds/en/montana.gsm -var/lib/asterisk/sounds/en/month.gsm -var/lib/asterisk/sounds/en/months.gsm -var/lib/asterisk/sounds/en/moo1.gsm -var/lib/asterisk/sounds/en/moo2.gsm -var/lib/asterisk/sounds/en/morning.gsm -var/lib/asterisk/sounds/en/moron.gsm -var/lib/asterisk/sounds/en/mostly.gsm -var/lib/asterisk/sounds/en/motor-pool.gsm -var/lib/asterisk/sounds/en/mountain.gsm -var/lib/asterisk/sounds/en/moving.gsm -var/lib/asterisk/sounds/en/ms.gsm -var/lib/asterisk/sounds/en/nashville.gsm -var/lib/asterisk/sounds/en/national-weather-service.gsm -var/lib/asterisk/sounds/en/nautical-miles.gsm -var/lib/asterisk/sounds/en/nbdy-avail-to-take-call.gsm -var/lib/asterisk/sounds/en/near.gsm -var/lib/asterisk/sounds/en/nebraska.gsm -var/lib/asterisk/sounds/en/negative.gsm -var/lib/asterisk/sounds/en/network-operations-center.gsm -var/lib/asterisk/sounds/en/network-operations.gsm -var/lib/asterisk/sounds/en/nevada.gsm -var/lib/asterisk/sounds/en/new-accounts.gsm -var/lib/asterisk/sounds/en/new-hampshire.gsm -var/lib/asterisk/sounds/en/new-jersey.gsm -var/lib/asterisk/sounds/en/new-mexico.gsm -var/lib/asterisk/sounds/en/new-orleans.gsm -var/lib/asterisk/sounds/en/new-york.gsm -var/lib/asterisk/sounds/en/night.gsm -var/lib/asterisk/sounds/en/nineteenth.gsm -var/lib/asterisk/sounds/en/ninetieth.gsm -var/lib/asterisk/sounds/en/ninth.gsm -var/lib/asterisk/sounds/en/no-112-1.gsm -var/lib/asterisk/sounds/en/no-112-2.gsm -var/lib/asterisk/sounds/en/no-911-1.gsm -var/lib/asterisk/sounds/en/no-911-2.gsm -var/lib/asterisk/sounds/en/no-empty-conferences.gsm -var/lib/asterisk/sounds/en/no-info-about-number.gsm -var/lib/asterisk/sounds/en/no-longer-in-service.gsm -var/lib/asterisk/sounds/en/no-reply-no-mailbox.gsm -var/lib/asterisk/sounds/en/no-route-exists-to-dest.gsm -var/lib/asterisk/sounds/en/no_invite_to_conf.gsm -var/lib/asterisk/sounds/en/no_longer_conf.gsm -var/lib/asterisk/sounds/en/no_problem_help.gsm -var/lib/asterisk/sounds/en/no_worries_try_again.gsm -var/lib/asterisk/sounds/en/nobody-but-chickens.gsm -var/lib/asterisk/sounds/en/node.gsm -var/lib/asterisk/sounds/en/none_of_my_business1.gsm -var/lib/asterisk/sounds/en/none_of_my_business2.gsm -var/lib/asterisk/sounds/en/north-carolina.gsm -var/lib/asterisk/sounds/en/north-dakota.gsm -var/lib/asterisk/sounds/en/north.gsm -var/lib/asterisk/sounds/en/northerly.gsm -var/lib/asterisk/sounds/en/not-auth-pstn.gsm -var/lib/asterisk/sounds/en/not-enough-credit.gsm -var/lib/asterisk/sounds/en/not-necessary-1.gsm -var/lib/asterisk/sounds/en/not-necessary-ac.gsm -var/lib/asterisk/sounds/en/not-necessary-dial-1-or-ac.gsm -var/lib/asterisk/sounds/en/not-rqsted-wakeup.gsm -var/lib/asterisk/sounds/en/not-taking-your-call.gsm -var/lib/asterisk/sounds/en/not-yet-assigned.gsm -var/lib/asterisk/sounds/en/not-yet-connected.gsm -var/lib/asterisk/sounds/en/not_me.gsm -var/lib/asterisk/sounds/en/not_pass.gsm -var/lib/asterisk/sounds/en/not_siri.gsm -var/lib/asterisk/sounds/en/not_you.gsm -var/lib/asterisk/sounds/en/nothing-recorded.gsm -var/lib/asterisk/sounds/en/now.gsm -var/lib/asterisk/sounds/en/num-not-in-db.gsm -var/lib/asterisk/sounds/en/num-outside-area.gsm -var/lib/asterisk/sounds/en/num-was-successfully.gsm -var/lib/asterisk/sounds/en/number-not-answering.gsm -var/lib/asterisk/sounds/en/number.gsm -var/lib/asterisk/sounds/en/oakland.gsm -var/lib/asterisk/sounds/en/octothorpe.gsm -var/lib/asterisk/sounds/en/off-duty.gsm -var/lib/asterisk/sounds/en/off.gsm -var/lib/asterisk/sounds/en/office-code.gsm -var/lib/asterisk/sounds/en/office-iguanas.gsm -var/lib/asterisk/sounds/en/office.gsm -var/lib/asterisk/sounds/en/ogm_home.gsm -var/lib/asterisk/sounds/en/ohio.gsm -var/lib/asterisk/sounds/en/oklahoma-city.gsm -var/lib/asterisk/sounds/en/oklahoma.gsm -var/lib/asterisk/sounds/en/omaha.gsm -var/lib/asterisk/sounds/en/on-busy.gsm -var/lib/asterisk/sounds/en/on-monthly-tel-stment.gsm -var/lib/asterisk/sounds/en/on-no-answer.gsm -var/lib/asterisk/sounds/en/on.gsm -var/lib/asterisk/sounds/en/one-moment-please.gsm -var/lib/asterisk/sounds/en/one-small-step.gsm -var/lib/asterisk/sounds/en/one-small-step2.gsm -var/lib/asterisk/sounds/en/oops1.gsm -var/lib/asterisk/sounds/en/oops2.gsm -var/lib/asterisk/sounds/en/oops3.gsm -var/lib/asterisk/sounds/en/open-parenthesis.gsm -var/lib/asterisk/sounds/en/open.gsm -var/lib/asterisk/sounds/en/operations.gsm -var/lib/asterisk/sounds/en/option-is-invalid.gsm -var/lib/asterisk/sounds/en/option-not-implemented.gsm -var/lib/asterisk/sounds/en/or-press.gsm -var/lib/asterisk/sounds/en/or.gsm -var/lib/asterisk/sounds/en/order-desk.gsm -var/lib/asterisk/sounds/en/orders.gsm -var/lib/asterisk/sounds/en/oregon.gsm -var/lib/asterisk/sounds/en/other-options-exercise.gsm -var/lib/asterisk/sounds/en/otherwise-press.gsm -var/lib/asterisk/sounds/en/otherwise.gsm -var/lib/asterisk/sounds/en/our-business-hours-are.gsm -var/lib/asterisk/sounds/en/outbound.gsm -var/lib/asterisk/sounds/en/outside-sales.gsm -var/lib/asterisk/sounds/en/outside-transfer.gsm -var/lib/asterisk/sounds/en/pacific.gsm -var/lib/asterisk/sounds/en/packet.gsm -var/lib/asterisk/sounds/en/panic.gsm -var/lib/asterisk/sounds/en/partially.gsm -var/lib/asterisk/sounds/en/partly.gsm -var/lib/asterisk/sounds/en/pascal.gsm -var/lib/asterisk/sounds/en/pascal2.gsm -var/lib/asterisk/sounds/en/passwords_not_match.gsm -var/lib/asterisk/sounds/en/patchy.gsm -var/lib/asterisk/sounds/en/pbx-invalid.gsm -var/lib/asterisk/sounds/en/pbx-invalidpark.gsm -var/lib/asterisk/sounds/en/pbx-parkingfailed.gsm -var/lib/asterisk/sounds/en/pbx-transfer.gsm -var/lib/asterisk/sounds/en/pence.gsm -var/lib/asterisk/sounds/en/pennies.gsm -var/lib/asterisk/sounds/en/pennsylvania.gsm -var/lib/asterisk/sounds/en/penny.gsm -var/lib/asterisk/sounds/en/percent.gsm -var/lib/asterisk/sounds/en/perhaps-we-are.gsm -var/lib/asterisk/sounds/en/perhaps-we-are2.gsm -var/lib/asterisk/sounds/en/period.gsm -var/lib/asterisk/sounds/en/personnel.gsm -var/lib/asterisk/sounds/en/persons-in-path-of.gsm -var/lib/asterisk/sounds/en/philadelphia.gsm -var/lib/asterisk/sounds/en/phoenix.gsm -var/lib/asterisk/sounds/en/phonetic -var/lib/asterisk/sounds/en/phonetic/9_p.gsm -var/lib/asterisk/sounds/en/phonetic/a_p.gsm -var/lib/asterisk/sounds/en/phonetic/b_p.gsm -var/lib/asterisk/sounds/en/phonetic/c_p.gsm -var/lib/asterisk/sounds/en/phonetic/d_p.gsm -var/lib/asterisk/sounds/en/phonetic/e_p.gsm -var/lib/asterisk/sounds/en/phonetic/f_p.gsm -var/lib/asterisk/sounds/en/phonetic/g_p.gsm -var/lib/asterisk/sounds/en/phonetic/h_p.gsm -var/lib/asterisk/sounds/en/phonetic/i_p.gsm -var/lib/asterisk/sounds/en/phonetic/j_p.gsm -var/lib/asterisk/sounds/en/phonetic/k_p.gsm -var/lib/asterisk/sounds/en/phonetic/l_p.gsm -var/lib/asterisk/sounds/en/phonetic/m_p.gsm -var/lib/asterisk/sounds/en/phonetic/n_p.gsm -var/lib/asterisk/sounds/en/phonetic/o_p.gsm -var/lib/asterisk/sounds/en/phonetic/p_p.gsm -var/lib/asterisk/sounds/en/phonetic/q_p.gsm -var/lib/asterisk/sounds/en/phonetic/r_p.gsm -var/lib/asterisk/sounds/en/phonetic/s_p.gsm -var/lib/asterisk/sounds/en/phonetic/t_p.gsm -var/lib/asterisk/sounds/en/phonetic/u_p.gsm -var/lib/asterisk/sounds/en/phonetic/v_p.gsm -var/lib/asterisk/sounds/en/phonetic/w_p.gsm -var/lib/asterisk/sounds/en/phonetic/x_p.gsm -var/lib/asterisk/sounds/en/phonetic/y_p.gsm -var/lib/asterisk/sounds/en/phonetic/z_p.gsm -var/lib/asterisk/sounds/en/physics.gsm -var/lib/asterisk/sounds/en/pin-invalid.gsm -var/lib/asterisk/sounds/en/pin-number-accepted.gsm -var/lib/asterisk/sounds/en/pin_number.gsm -var/lib/asterisk/sounds/en/ping.gsm -var/lib/asterisk/sounds/en/pipe.gsm -var/lib/asterisk/sounds/en/planning.gsm -var/lib/asterisk/sounds/en/please-answer-the-following.gsm -var/lib/asterisk/sounds/en/please-contact-tech-supt.gsm -var/lib/asterisk/sounds/en/please-enter-first-three-letters.gsm -var/lib/asterisk/sounds/en/please-enter-the.gsm -var/lib/asterisk/sounds/en/please-enter-your.gsm -var/lib/asterisk/sounds/en/please-hang-up-and-dial-operator.gsm -var/lib/asterisk/sounds/en/please-hang-up-and-try-again.gsm -var/lib/asterisk/sounds/en/please-hold-minion-connect.gsm -var/lib/asterisk/sounds/en/please-hold-while-minion.gsm -var/lib/asterisk/sounds/en/please-try-again-later.gsm -var/lib/asterisk/sounds/en/please-try-again.gsm -var/lib/asterisk/sounds/en/please-try-call-later.gsm -var/lib/asterisk/sounds/en/please-try.gsm -var/lib/asterisk/sounds/en/please-wait-connect-oncall-eng.gsm -var/lib/asterisk/sounds/en/pls-ent-num-transfer.gsm -var/lib/asterisk/sounds/en/pls-enter-conf-password.gsm -var/lib/asterisk/sounds/en/pls-enter-num-message-after-tone.gsm -var/lib/asterisk/sounds/en/pls-enter-vm-password.gsm -var/lib/asterisk/sounds/en/pls-entr-num-uwish2-call.gsm -var/lib/asterisk/sounds/en/pls-hold-process-tx.gsm -var/lib/asterisk/sounds/en/pls-hold-silent30.gsm -var/lib/asterisk/sounds/en/pls-hold-while-try.gsm -var/lib/asterisk/sounds/en/pls-listen-options-changed.gsm -var/lib/asterisk/sounds/en/pls-lv-msg-will-contact.gsm -var/lib/asterisk/sounds/en/pls-rcrd-name-at-tone.gsm -var/lib/asterisk/sounds/en/pls-stay-on-line.gsm -var/lib/asterisk/sounds/en/pls-try-again.gsm -var/lib/asterisk/sounds/en/pls-try-area-code.gsm -var/lib/asterisk/sounds/en/pls-try-manually.gsm -var/lib/asterisk/sounds/en/pls-wait-connect-call.gsm -var/lib/asterisk/sounds/en/plugh.gsm -var/lib/asterisk/sounds/en/pm-announcement-number.gsm -var/lib/asterisk/sounds/en/pm-invalid-option.gsm -var/lib/asterisk/sounds/en/pm-phrase-management.gsm -var/lib/asterisk/sounds/en/pm-prompt-number.gsm -var/lib/asterisk/sounds/en/pm-to-record-phrase.gsm -var/lib/asterisk/sounds/en/pm-to-review-phrase.gsm -var/lib/asterisk/sounds/en/point.gsm -var/lib/asterisk/sounds/en/pop.gsm -var/lib/asterisk/sounds/en/port.gsm -var/lib/asterisk/sounds/en/portland.gsm -var/lib/asterisk/sounds/en/portnumber.gsm -var/lib/asterisk/sounds/en/position.gsm -var/lib/asterisk/sounds/en/post-entry-pound.gsm -var/lib/asterisk/sounds/en/pounds.gsm -var/lib/asterisk/sounds/en/presales-support.gsm -var/lib/asterisk/sounds/en/presidents-office.gsm -var/lib/asterisk/sounds/en/press-0.gsm -var/lib/asterisk/sounds/en/press-1.gsm -var/lib/asterisk/sounds/en/press-2.gsm -var/lib/asterisk/sounds/en/press-3.gsm -var/lib/asterisk/sounds/en/press-4.gsm -var/lib/asterisk/sounds/en/press-5.gsm -var/lib/asterisk/sounds/en/press-6-to-eject.gsm -var/lib/asterisk/sounds/en/press-6.gsm -var/lib/asterisk/sounds/en/press-7.gsm -var/lib/asterisk/sounds/en/press-8.gsm -var/lib/asterisk/sounds/en/press-9.gsm -var/lib/asterisk/sounds/en/press-button-again.gsm -var/lib/asterisk/sounds/en/press-enter.gsm -var/lib/asterisk/sounds/en/press-escape.gsm -var/lib/asterisk/sounds/en/press-hash.gsm -var/lib/asterisk/sounds/en/press-or-say-0.gsm -var/lib/asterisk/sounds/en/press-or-say-1.gsm -var/lib/asterisk/sounds/en/press-or-say-2.gsm -var/lib/asterisk/sounds/en/press-or-say-3.gsm -var/lib/asterisk/sounds/en/press-or-say-4.gsm -var/lib/asterisk/sounds/en/press-or-say-5.gsm -var/lib/asterisk/sounds/en/press-or-say-6.gsm -var/lib/asterisk/sounds/en/press-or-say-7.gsm -var/lib/asterisk/sounds/en/press-or-say-8.gsm -var/lib/asterisk/sounds/en/press-or-say-9.gsm -var/lib/asterisk/sounds/en/press-pound-save-changes.gsm -var/lib/asterisk/sounds/en/press-pound-to-login-star-to-hangup.gsm -var/lib/asterisk/sounds/en/press-pound.gsm -var/lib/asterisk/sounds/en/press-return.gsm -var/lib/asterisk/sounds/en/press-star-cancel.gsm -var/lib/asterisk/sounds/en/press-star.gsm -var/lib/asterisk/sounds/en/press-the-space-bar.gsm -var/lib/asterisk/sounds/en/press-tilde.gsm -var/lib/asterisk/sounds/en/press.gsm -var/lib/asterisk/sounds/en/press_pound_hash.gsm -var/lib/asterisk/sounds/en/press_pound_hash_key.gsm -var/lib/asterisk/sounds/en/pressure.gsm -var/lib/asterisk/sounds/en/prime_number.gsm -var/lib/asterisk/sounds/en/printing.gsm -var/lib/asterisk/sounds/en/priv-callee-options.gsm -var/lib/asterisk/sounds/en/priv-callpending.gsm -var/lib/asterisk/sounds/en/priv-introsaved.gsm -var/lib/asterisk/sounds/en/priv-recordintro.gsm -var/lib/asterisk/sounds/en/privacy-blacklisted.gsm -var/lib/asterisk/sounds/en/privacy-blocked.gsm -var/lib/asterisk/sounds/en/privacy-if-error-leave-message-or-hangup.gsm -var/lib/asterisk/sounds/en/privacy-if-error.gsm -var/lib/asterisk/sounds/en/privacy-if-sales-call-contact-in-writing.gsm -var/lib/asterisk/sounds/en/privacy-incorrect.gsm -var/lib/asterisk/sounds/en/privacy-last-caller-was.gsm -var/lib/asterisk/sounds/en/privacy-not.gsm -var/lib/asterisk/sounds/en/privacy-please-dial.gsm -var/lib/asterisk/sounds/en/privacy-please-stay-on-line-to-be-connected.gsm -var/lib/asterisk/sounds/en/privacy-prompt.gsm -var/lib/asterisk/sounds/en/privacy-restricted-by-req.gsm -var/lib/asterisk/sounds/en/privacy-screening-unidentified-calls.gsm -var/lib/asterisk/sounds/en/privacy-stop-calling-not-welcome.gsm -var/lib/asterisk/sounds/en/privacy-stop-calling-not-welcome2.gsm -var/lib/asterisk/sounds/en/privacy-thankyou.gsm -var/lib/asterisk/sounds/en/privacy-this-number-is.gsm -var/lib/asterisk/sounds/en/privacy-to-blacklist-last-caller.gsm -var/lib/asterisk/sounds/en/privacy-to-blacklist-this-number.gsm -var/lib/asterisk/sounds/en/privacy-to-hear-our-contact-details.gsm -var/lib/asterisk/sounds/en/privacy-to-whitelist-last-caller.gsm -var/lib/asterisk/sounds/en/privacy-to-whitelist-this-number.gsm -var/lib/asterisk/sounds/en/privacy-unident.gsm -var/lib/asterisk/sounds/en/privacy-whitelisted.gsm -var/lib/asterisk/sounds/en/privacy-you-are-blacklisted.gsm -var/lib/asterisk/sounds/en/privacy-you-are-calling-from.gsm -var/lib/asterisk/sounds/en/privacy-your-callerid-is.gsm -var/lib/asterisk/sounds/en/product.gsm -var/lib/asterisk/sounds/en/production.gsm -var/lib/asterisk/sounds/en/projects.gsm -var/lib/asterisk/sounds/en/prompt-not-found.gsm -var/lib/asterisk/sounds/en/protocol.gsm -var/lib/asterisk/sounds/en/public-relations.gsm -var/lib/asterisk/sounds/en/purchasing.gsm -var/lib/asterisk/sounds/en/purposes.gsm -var/lib/asterisk/sounds/en/q-dot-931.gsm -var/lib/asterisk/sounds/en/q-dot-9thirty1.gsm -var/lib/asterisk/sounds/en/quality-assurance.gsm -var/lib/asterisk/sounds/en/quality-control.gsm -var/lib/asterisk/sounds/en/quality_control.gsm -var/lib/asterisk/sounds/en/quarter.gsm -var/lib/asterisk/sounds/en/queue-callswaiting.gsm -var/lib/asterisk/sounds/en/queue-holdtime.gsm -var/lib/asterisk/sounds/en/queue-less-than.gsm -var/lib/asterisk/sounds/en/queue-minute.gsm -var/lib/asterisk/sounds/en/queue-minutes.gsm -var/lib/asterisk/sounds/en/queue-periodic-announce.gsm -var/lib/asterisk/sounds/en/queue-quantity1.gsm -var/lib/asterisk/sounds/en/queue-quantity2.gsm -var/lib/asterisk/sounds/en/queue-reporthold.gsm -var/lib/asterisk/sounds/en/queue-seconds.gsm -var/lib/asterisk/sounds/en/queue-thankyou.gsm -var/lib/asterisk/sounds/en/queue-thereare.gsm -var/lib/asterisk/sounds/en/queue-youarenext.gsm -var/lib/asterisk/sounds/en/quickly.gsm -var/lib/asterisk/sounds/en/quote.gsm -var/lib/asterisk/sounds/en/race.gsm -var/lib/asterisk/sounds/en/rain.gsm -var/lib/asterisk/sounds/en/rainfall.gsm -var/lib/asterisk/sounds/en/rainy.gsm -var/lib/asterisk/sounds/en/range.gsm -var/lib/asterisk/sounds/en/reassigned-new-areacode.gsm -var/lib/asterisk/sounds/en/rebates.gsm -var/lib/asterisk/sounds/en/received.gsm -var/lib/asterisk/sounds/en/receiving.gsm -var/lib/asterisk/sounds/en/reception.gsm -var/lib/asterisk/sounds/en/recorded.gsm -var/lib/asterisk/sounds/en/registrar.gsm -var/lib/asterisk/sounds/en/regret_not_saved.gsm -var/lib/asterisk/sounds/en/remote-already-in-this-mode-2.gsm -var/lib/asterisk/sounds/en/remote-already-in-this-mode.gsm -var/lib/asterisk/sounds/en/remote-base.gsm -var/lib/asterisk/sounds/en/removed.gsm -var/lib/asterisk/sounds/en/repair.gsm -var/lib/asterisk/sounds/en/repeat-only.gsm -var/lib/asterisk/sounds/en/repeat_pin.gsm -var/lib/asterisk/sounds/en/repeater.gsm -var/lib/asterisk/sounds/en/research-and-development.gsm -var/lib/asterisk/sounds/en/research.gsm -var/lib/asterisk/sounds/en/reservations.gsm -var/lib/asterisk/sounds/en/restarting.gsm -var/lib/asterisk/sounds/en/rhode-island.gsm -var/lib/asterisk/sounds/en/right-bracket.gsm -var/lib/asterisk/sounds/en/rising.gsm -var/lib/asterisk/sounds/en/risk-management.gsm -var/lib/asterisk/sounds/en/roaming.gsm -var/lib/asterisk/sounds/en/room-service.gsm -var/lib/asterisk/sounds/en/route-sip.gsm -var/lib/asterisk/sounds/en/rqsted-wakeup-for.gsm -var/lib/asterisk/sounds/en/sacramento.gsm -var/lib/asterisk/sounds/en/said_hold_on.gsm -var/lib/asterisk/sounds/en/saint-louis.gsm -var/lib/asterisk/sounds/en/sales-floor.gsm -var/lib/asterisk/sounds/en/sales.gsm -var/lib/asterisk/sounds/en/saleshell.gsm -var/lib/asterisk/sounds/en/san-antonio.gsm -var/lib/asterisk/sounds/en/san-diego.gsm -var/lib/asterisk/sounds/en/san-francisco.gsm -var/lib/asterisk/sounds/en/san-jose.gsm -var/lib/asterisk/sounds/en/save-announce-press.gsm -var/lib/asterisk/sounds/en/say-temp-msg-prs-pound.gsm -var/lib/asterisk/sounds/en/says-thats-stupid.gsm -var/lib/asterisk/sounds/en/scattered.gsm -var/lib/asterisk/sounds/en/sciences.gsm -var/lib/asterisk/sounds/en/screen-callee-options.gsm -var/lib/asterisk/sounds/en/seattle.gsm -var/lib/asterisk/sounds/en/second.gsm -var/lib/asterisk/sounds/en/seconds.gsm -var/lib/asterisk/sounds/en/secretary.gsm -var/lib/asterisk/sounds/en/security.gsm -var/lib/asterisk/sounds/en/self-destruct-in.gsm -var/lib/asterisk/sounds/en/self-destruct.gsm -var/lib/asterisk/sounds/en/sendhelp.gsm -var/lib/asterisk/sounds/en/server.gsm -var/lib/asterisk/sounds/en/service-not-implemented.gsm -var/lib/asterisk/sounds/en/service.gsm -var/lib/asterisk/sounds/en/seventeenth.gsm -var/lib/asterisk/sounds/en/seventh.gsm -var/lib/asterisk/sounds/en/seventieth.gsm -var/lib/asterisk/sounds/en/severe.gsm -var/lib/asterisk/sounds/en/shall-i-try-again.gsm -var/lib/asterisk/sounds/en/shiny-brass-lamp.gsm -var/lib/asterisk/sounds/en/shipping.gsm -var/lib/asterisk/sounds/en/shop.gsm -var/lib/asterisk/sounds/en/show-office.gsm -var/lib/asterisk/sounds/en/sighted.gsm -var/lib/asterisk/sounds/en/silence -var/lib/asterisk/sounds/en/silence/1.gsm -var/lib/asterisk/sounds/en/silence/10.gsm -var/lib/asterisk/sounds/en/silence/2.gsm -var/lib/asterisk/sounds/en/silence/3.gsm -var/lib/asterisk/sounds/en/silence/4.gsm -var/lib/asterisk/sounds/en/silence/5.gsm -var/lib/asterisk/sounds/en/silence/6.gsm -var/lib/asterisk/sounds/en/silence/7.gsm -var/lib/asterisk/sounds/en/silence/8.gsm -var/lib/asterisk/sounds/en/silence/9.gsm -var/lib/asterisk/sounds/en/simplex.gsm -var/lib/asterisk/sounds/en/simul-call-limit-reached.gsm -var/lib/asterisk/sounds/en/sixteenth.gsm -var/lib/asterisk/sounds/en/sixth.gsm -var/lib/asterisk/sounds/en/sixtieth.gsm -var/lib/asterisk/sounds/en/sleet.gsm -var/lib/asterisk/sounds/en/sleeting.gsm -var/lib/asterisk/sounds/en/slow.gsm -var/lib/asterisk/sounds/en/slowly.gsm -var/lib/asterisk/sounds/en/snow.gsm -var/lib/asterisk/sounds/en/snowing.gsm -var/lib/asterisk/sounds/en/snowy.gsm -var/lib/asterisk/sounds/en/software.gsm -var/lib/asterisk/sounds/en/someone-you-trust1.gsm -var/lib/asterisk/sounds/en/someone-you-trust2.gsm -var/lib/asterisk/sounds/en/someone-you-trust3.gsm -var/lib/asterisk/sounds/en/something-terribly-wrong.gsm -var/lib/asterisk/sounds/en/sorry-cant-let-you-do-that.gsm -var/lib/asterisk/sounds/en/sorry-cant-let-you-do-that2.gsm -var/lib/asterisk/sounds/en/sorry-cant-let-you-do-that3.gsm -var/lib/asterisk/sounds/en/sorry-mailbox-full.gsm -var/lib/asterisk/sounds/en/sorry-youre-having-problems.gsm -var/lib/asterisk/sounds/en/sorry.gsm -var/lib/asterisk/sounds/en/sorry2.gsm -var/lib/asterisk/sounds/en/sorry_caller_number.gsm -var/lib/asterisk/sounds/en/sorry_didnt_get.gsm -var/lib/asterisk/sounds/en/sorry_didnt_quite_get.gsm -var/lib/asterisk/sounds/en/sorry_login_incorrect.gsm -var/lib/asterisk/sounds/en/sorry_missed.gsm -var/lib/asterisk/sounds/en/sorry_no_messages.gsm -var/lib/asterisk/sounds/en/sorrydave.gsm -var/lib/asterisk/sounds/en/south-carolina.gsm -var/lib/asterisk/sounds/en/south-dakota.gsm -var/lib/asterisk/sounds/en/south.gsm -var/lib/asterisk/sounds/en/southerly.gsm -var/lib/asterisk/sounds/en/spam.gsm -var/lib/asterisk/sounds/en/spam2.gsm -var/lib/asterisk/sounds/en/speak-louder-into-phone.gsm -var/lib/asterisk/sounds/en/speak-louder.gsm -var/lib/asterisk/sounds/en/speak-to-the-operator.gsm -var/lib/asterisk/sounds/en/speed-dial-empty.gsm -var/lib/asterisk/sounds/en/speed-dial.gsm -var/lib/asterisk/sounds/en/speed.gsm -var/lib/asterisk/sounds/en/splat.gsm -var/lib/asterisk/sounds/en/spy-agent.gsm -var/lib/asterisk/sounds/en/spy-console.gsm -var/lib/asterisk/sounds/en/spy-dahdi.gsm -var/lib/asterisk/sounds/en/spy-h323.gsm -var/lib/asterisk/sounds/en/spy-iax.gsm -var/lib/asterisk/sounds/en/spy-iax2.gsm -var/lib/asterisk/sounds/en/spy-jingle.gsm -var/lib/asterisk/sounds/en/spy-local.gsm -var/lib/asterisk/sounds/en/spy-mgcp.gsm -var/lib/asterisk/sounds/en/spy-misdn.gsm -var/lib/asterisk/sounds/en/spy-mobile.gsm -var/lib/asterisk/sounds/en/spy-nbs.gsm -var/lib/asterisk/sounds/en/spy-sip.gsm -var/lib/asterisk/sounds/en/spy-skinny.gsm -var/lib/asterisk/sounds/en/spy-unistim.gsm -var/lib/asterisk/sounds/en/spy-usbradio.gsm -var/lib/asterisk/sounds/en/spy-zap.gsm -var/lib/asterisk/sounds/en/ss-noservice.gsm -var/lib/asterisk/sounds/en/ssh.gsm -var/lib/asterisk/sounds/en/staff.gsm -var/lib/asterisk/sounds/en/staffing.gsm -var/lib/asterisk/sounds/en/standard.gsm -var/lib/asterisk/sounds/en/star-for-menu-again.gsm -var/lib/asterisk/sounds/en/starting-with-either.gsm -var/lib/asterisk/sounds/en/station.gsm -var/lib/asterisk/sounds/en/status.gsm -var/lib/asterisk/sounds/en/step-in-stream.gsm -var/lib/asterisk/sounds/en/sterling.gsm -var/lib/asterisk/sounds/en/still_on_phone.gsm -var/lib/asterisk/sounds/en/store-accounting.gsm -var/lib/asterisk/sounds/en/storm.gsm -var/lib/asterisk/sounds/en/sun.gsm -var/lib/asterisk/sounds/en/sunny.gsm -var/lib/asterisk/sounds/en/support.gsm -var/lib/asterisk/sounds/en/sure_help.gsm -var/lib/asterisk/sounds/en/swap.gsm -var/lib/asterisk/sounds/en/system-crashed.gsm -var/lib/asterisk/sounds/en/system-status-msg.gsm -var/lib/asterisk/sounds/en/system.gsm -var/lib/asterisk/sounds/en/systems.gsm -var/lib/asterisk/sounds/en/talkin_me.gsm -var/lib/asterisk/sounds/en/talking-to-myself.gsm -var/lib/asterisk/sounds/en/target-attendant.gsm -var/lib/asterisk/sounds/en/tcp.gsm -var/lib/asterisk/sounds/en/technical-support.gsm -var/lib/asterisk/sounds/en/telemarketercalling.gsm -var/lib/asterisk/sounds/en/telephone-in-your-pocket.gsm -var/lib/asterisk/sounds/en/telephone-in-your-pocket2.gsm -var/lib/asterisk/sounds/en/telephone-number.gsm -var/lib/asterisk/sounds/en/telesales.gsm -var/lib/asterisk/sounds/en/teletubbie-murder.gsm -var/lib/asterisk/sounds/en/telnet.gsm -var/lib/asterisk/sounds/en/temp-disconnected.gsm -var/lib/asterisk/sounds/en/temperature.gsm -var/lib/asterisk/sounds/en/tennessee.gsm -var/lib/asterisk/sounds/en/tenth.gsm -var/lib/asterisk/sounds/en/terabits.gsm -var/lib/asterisk/sounds/en/terabytes.gsm -var/lib/asterisk/sounds/en/terminated.gsm -var/lib/asterisk/sounds/en/terminating.gsm -var/lib/asterisk/sounds/en/test-tones-follow.gsm -var/lib/asterisk/sounds/en/texas.gsm -var/lib/asterisk/sounds/en/thank-you-cooperation.gsm -var/lib/asterisk/sounds/en/thank-you-for-calling.gsm -var/lib/asterisk/sounds/en/thank_you_calling.gsm -var/lib/asterisk/sounds/en/thanks-annoyance.gsm -var/lib/asterisk/sounds/en/thanks-for-calling-today.gsm -var/lib/asterisk/sounds/en/thanks-for-using.gsm -var/lib/asterisk/sounds/en/that-is-not-rec-phn-num.gsm -var/lib/asterisk/sounds/en/that-number.gsm -var/lib/asterisk/sounds/en/that-tickles.gsm -var/lib/asterisk/sounds/en/that-you-require.gsm -var/lib/asterisk/sounds/en/the-mailbox.gsm -var/lib/asterisk/sounds/en/the-monkeys-twice.gsm -var/lib/asterisk/sounds/en/the-new-number-is.gsm -var/lib/asterisk/sounds/en/the-next.gsm -var/lib/asterisk/sounds/en/the-num-i-have-is.gsm -var/lib/asterisk/sounds/en/the-number-u-dialed.gsm -var/lib/asterisk/sounds/en/the-party-you-are-calling.gsm -var/lib/asterisk/sounds/en/the-weather-at.gsm -var/lib/asterisk/sounds/en/then-press-pound.gsm -var/lib/asterisk/sounds/en/there-are.gsm -var/lib/asterisk/sounds/en/there-is-no-customer-support.gsm -var/lib/asterisk/sounds/en/these-are-currently.gsm -var/lib/asterisk/sounds/en/third.gsm -var/lib/asterisk/sounds/en/thirteenth.gsm -var/lib/asterisk/sounds/en/thirtieth.gsm -var/lib/asterisk/sounds/en/this-call-may-be-monitored-or-recorded.gsm -var/lib/asterisk/sounds/en/this-call-may-be.gsm -var/lib/asterisk/sounds/en/this-call-will-cost.gsm -var/lib/asterisk/sounds/en/this-call-will-end-in.gsm -var/lib/asterisk/sounds/en/this-is-the-voice-mail-system.gsm -var/lib/asterisk/sounds/en/this-is-yr-wakeup-call.gsm -var/lib/asterisk/sounds/en/this.gsm -var/lib/asterisk/sounds/en/thnk-u-for-patience.gsm -var/lib/asterisk/sounds/en/thousandth.gsm -var/lib/asterisk/sounds/en/through.gsm -var/lib/asterisk/sounds/en/thunderstorm.gsm -var/lib/asterisk/sounds/en/tide.gsm -var/lib/asterisk/sounds/en/time.gsm -var/lib/asterisk/sounds/en/times.gsm -var/lib/asterisk/sounds/en/timewarp.gsm -var/lib/asterisk/sounds/en/to-accept-recording.gsm -var/lib/asterisk/sounds/en/to-be-called-back.gsm -var/lib/asterisk/sounds/en/to-blklist-last-caller.gsm -var/lib/asterisk/sounds/en/to-blklist-last-num.gsm -var/lib/asterisk/sounds/en/to-call-num-press.gsm -var/lib/asterisk/sounds/en/to-call-prson-w-sent-msg.gsm -var/lib/asterisk/sounds/en/to-call-this-number.gsm -var/lib/asterisk/sounds/en/to-cancel-this-msg.gsm -var/lib/asterisk/sounds/en/to-cancel-wakeup.gsm -var/lib/asterisk/sounds/en/to-change-exp-date.gsm -var/lib/asterisk/sounds/en/to-change-your-pin-number.gsm -var/lib/asterisk/sounds/en/to-collect-voicemail.gsm -var/lib/asterisk/sounds/en/to-compose-a-message.gsm -var/lib/asterisk/sounds/en/to-confirm-wakeup.gsm -var/lib/asterisk/sounds/en/to-dial-by-name-press.gsm -var/lib/asterisk/sounds/en/to-dial-by-name.gsm -var/lib/asterisk/sounds/en/to-enter-a-diff-number.gsm -var/lib/asterisk/sounds/en/to-enter-a-number.gsm -var/lib/asterisk/sounds/en/to-erase-yr-temp-grtg.gsm -var/lib/asterisk/sounds/en/to-extension.gsm -var/lib/asterisk/sounds/en/to-hang-up-2.gsm -var/lib/asterisk/sounds/en/to-hang-up.gsm -var/lib/asterisk/sounds/en/to-hear-callerid.gsm -var/lib/asterisk/sounds/en/to-hear-menu-again.gsm -var/lib/asterisk/sounds/en/to-hear-msg-again.gsm -var/lib/asterisk/sounds/en/to-hear-msg-envelope.gsm -var/lib/asterisk/sounds/en/to-hear-net-status.gsm -var/lib/asterisk/sounds/en/to-hear-weather-status.gsm -var/lib/asterisk/sounds/en/to-hear-your-account-balance.gsm -var/lib/asterisk/sounds/en/to-join-a-meeting.gsm -var/lib/asterisk/sounds/en/to-leave-message-for.gsm -var/lib/asterisk/sounds/en/to-listen-to-it.gsm -var/lib/asterisk/sounds/en/to-log-in-to-voice-mail.gsm -var/lib/asterisk/sounds/en/to-place-outgoing-call.gsm -var/lib/asterisk/sounds/en/to-reach-first-rep.gsm -var/lib/asterisk/sounds/en/to-reach-operator.gsm -var/lib/asterisk/sounds/en/to-rec-yr-temp-grtg.gsm -var/lib/asterisk/sounds/en/to-record-call.gsm -var/lib/asterisk/sounds/en/to-redial-the-last-number-you-called.gsm -var/lib/asterisk/sounds/en/to-report-emergency.gsm -var/lib/asterisk/sounds/en/to-report-system-network-down.gsm -var/lib/asterisk/sounds/en/to-rerecord-announce.gsm -var/lib/asterisk/sounds/en/to-rerecord-it.gsm -var/lib/asterisk/sounds/en/to-rerecord-yr-message.gsm -var/lib/asterisk/sounds/en/to-rmv-num-blklist.gsm -var/lib/asterisk/sounds/en/to-rqst-wakeup-call.gsm -var/lib/asterisk/sounds/en/to-send-a-reply.gsm -var/lib/asterisk/sounds/en/to-snooze-for.gsm -var/lib/asterisk/sounds/en/to-use-def-attendant.gsm -var/lib/asterisk/sounds/en/tomorrow-night.gsm -var/lib/asterisk/sounds/en/tone_time.gsm -var/lib/asterisk/sounds/en/tones-that-follow-are-for-the-deaf.gsm -var/lib/asterisk/sounds/en/tonight.gsm -var/lib/asterisk/sounds/en/too-low.gsm -var/lib/asterisk/sounds/en/tornado.gsm -var/lib/asterisk/sounds/en/touchtone1.gsm -var/lib/asterisk/sounds/en/touchtone2.gsm -var/lib/asterisk/sounds/en/touchtone3.gsm -var/lib/asterisk/sounds/en/towards.gsm -var/lib/asterisk/sounds/en/trading-desk.gsm -var/lib/asterisk/sounds/en/traffic.gsm -var/lib/asterisk/sounds/en/training.gsm -var/lib/asterisk/sounds/en/transfer.gsm -var/lib/asterisk/sounds/en/transfer_to_agent.gsm -var/lib/asterisk/sounds/en/transportation.gsm -var/lib/asterisk/sounds/en/travel.gsm -var/lib/asterisk/sounds/en/treasury.gsm -var/lib/asterisk/sounds/en/tt-allbusy.gsm -var/lib/asterisk/sounds/en/tt-codezone.gsm -var/lib/asterisk/sounds/en/tt-codezone_MIXDOWN.gsm -var/lib/asterisk/sounds/en/tt-hangup.gsm -var/lib/asterisk/sounds/en/tt-monkeys.gsm -var/lib/asterisk/sounds/en/tt-monkeysintro.gsm -var/lib/asterisk/sounds/en/tt-monty-knights.gsm -var/lib/asterisk/sounds/en/tt-somethingwrong.gsm -var/lib/asterisk/sounds/en/tt-weasels.gsm -var/lib/asterisk/sounds/en/tucson.gsm -var/lib/asterisk/sounds/en/tulsa.gsm -var/lib/asterisk/sounds/en/turn-off-recording.gsm -var/lib/asterisk/sounds/en/turning-to.gsm -var/lib/asterisk/sounds/en/twelveth.gsm -var/lib/asterisk/sounds/en/twentieth.gsm -var/lib/asterisk/sounds/en/twisty-maze.gsm -var/lib/asterisk/sounds/en/tx-has-been-approved.gsm -var/lib/asterisk/sounds/en/typhoon.gsm -var/lib/asterisk/sounds/en/udp.gsm -var/lib/asterisk/sounds/en/uh-oh1.gsm -var/lib/asterisk/sounds/en/uh-oh2.gsm -var/lib/asterisk/sounds/en/uk.gsm -var/lib/asterisk/sounds/en/unavailable.gsm -var/lib/asterisk/sounds/en/unconditional.gsm -var/lib/asterisk/sounds/en/unicorn_blood.gsm -var/lib/asterisk/sounds/en/unicorn_blood_MIXDOWN.gsm -var/lib/asterisk/sounds/en/unidentified-no-callback.gsm -var/lib/asterisk/sounds/en/units.gsm -var/lib/asterisk/sounds/en/unix.gsm -var/lib/asterisk/sounds/en/unwelcomecall.gsm -var/lib/asterisk/sounds/en/up.gsm -var/lib/asterisk/sounds/en/uppercase.gsm -var/lib/asterisk/sounds/en/uptime.gsm -var/lib/asterisk/sounds/en/user.gsm -var/lib/asterisk/sounds/en/users.gsm -var/lib/asterisk/sounds/en/utah.gsm -var/lib/asterisk/sounds/en/variable.gsm -var/lib/asterisk/sounds/en/vermont.gsm -var/lib/asterisk/sounds/en/virginia-beach.gsm -var/lib/asterisk/sounds/en/virginia.gsm -var/lib/asterisk/sounds/en/visibility.gsm -var/lib/asterisk/sounds/en/visit-asterisk-website.gsm -var/lib/asterisk/sounds/en/vm-Cust1.gsm -var/lib/asterisk/sounds/en/vm-Cust2.gsm -var/lib/asterisk/sounds/en/vm-Cust3.gsm -var/lib/asterisk/sounds/en/vm-Cust4.gsm -var/lib/asterisk/sounds/en/vm-Cust5.gsm -var/lib/asterisk/sounds/en/vm-Family.gsm -var/lib/asterisk/sounds/en/vm-Friends.gsm -var/lib/asterisk/sounds/en/vm-INBOX.gsm -var/lib/asterisk/sounds/en/vm-Old.gsm -var/lib/asterisk/sounds/en/vm-Urgent.gsm -var/lib/asterisk/sounds/en/vm-Work.gsm -var/lib/asterisk/sounds/en/vm-advopts.gsm -var/lib/asterisk/sounds/en/vm-and.gsm -var/lib/asterisk/sounds/en/vm-calldiffnum.gsm -var/lib/asterisk/sounds/en/vm-changeto.gsm -var/lib/asterisk/sounds/en/vm-delete.gsm -var/lib/asterisk/sounds/en/vm-deleted.gsm -var/lib/asterisk/sounds/en/vm-dialout.gsm -var/lib/asterisk/sounds/en/vm-duration.gsm -var/lib/asterisk/sounds/en/vm-enter-num-to-call.gsm -var/lib/asterisk/sounds/en/vm-extension.gsm -var/lib/asterisk/sounds/en/vm-first.gsm -var/lib/asterisk/sounds/en/vm-for.gsm -var/lib/asterisk/sounds/en/vm-forward-multiple.gsm -var/lib/asterisk/sounds/en/vm-forward.gsm -var/lib/asterisk/sounds/en/vm-forwardoptions.gsm -var/lib/asterisk/sounds/en/vm-from-extension.gsm -var/lib/asterisk/sounds/en/vm-from-phonenumber.gsm -var/lib/asterisk/sounds/en/vm-from.gsm -var/lib/asterisk/sounds/en/vm-goodbye.gsm -var/lib/asterisk/sounds/en/vm-helpexit.gsm -var/lib/asterisk/sounds/en/vm-incorrect-mailbox.gsm -var/lib/asterisk/sounds/en/vm-incorrect.gsm -var/lib/asterisk/sounds/en/vm-instructions.gsm -var/lib/asterisk/sounds/en/vm-intro.gsm -var/lib/asterisk/sounds/en/vm-invalid-password.gsm -var/lib/asterisk/sounds/en/vm-invalidpassword.gsm -var/lib/asterisk/sounds/en/vm-isonphone.gsm -var/lib/asterisk/sounds/en/vm-isunavail.gsm -var/lib/asterisk/sounds/en/vm-last.gsm -var/lib/asterisk/sounds/en/vm-leavemsg.gsm -var/lib/asterisk/sounds/en/vm-login.gsm -var/lib/asterisk/sounds/en/vm-mailboxfull.gsm -var/lib/asterisk/sounds/en/vm-marked-nonurgent.gsm -var/lib/asterisk/sounds/en/vm-marked-urgent.gsm -var/lib/asterisk/sounds/en/vm-message.gsm -var/lib/asterisk/sounds/en/vm-messages.gsm -var/lib/asterisk/sounds/en/vm-minutes.gsm -var/lib/asterisk/sounds/en/vm-mismatch.gsm -var/lib/asterisk/sounds/en/vm-msgforwarded.gsm -var/lib/asterisk/sounds/en/vm-msginstruct.gsm -var/lib/asterisk/sounds/en/vm-msgsaved.gsm -var/lib/asterisk/sounds/en/vm-newpassword.gsm -var/lib/asterisk/sounds/en/vm-newuser.gsm -var/lib/asterisk/sounds/en/vm-next.gsm -var/lib/asterisk/sounds/en/vm-no.gsm -var/lib/asterisk/sounds/en/vm-nobodyavail.gsm -var/lib/asterisk/sounds/en/vm-nobox.gsm -var/lib/asterisk/sounds/en/vm-nomore.gsm -var/lib/asterisk/sounds/en/vm-nonumber.gsm -var/lib/asterisk/sounds/en/vm-num-i-have.gsm -var/lib/asterisk/sounds/en/vm-onefor-full.gsm -var/lib/asterisk/sounds/en/vm-onefor.gsm -var/lib/asterisk/sounds/en/vm-options.gsm -var/lib/asterisk/sounds/en/vm-opts-full.gsm -var/lib/asterisk/sounds/en/vm-opts.gsm -var/lib/asterisk/sounds/en/vm-passchanged.gsm -var/lib/asterisk/sounds/en/vm-password.gsm -var/lib/asterisk/sounds/en/vm-pls-try-again.gsm -var/lib/asterisk/sounds/en/vm-press.gsm -var/lib/asterisk/sounds/en/vm-prev.gsm -var/lib/asterisk/sounds/en/vm-reachoper.gsm -var/lib/asterisk/sounds/en/vm-rec-busy.gsm -var/lib/asterisk/sounds/en/vm-rec-name.gsm -var/lib/asterisk/sounds/en/vm-rec-temp.gsm -var/lib/asterisk/sounds/en/vm-rec-unv.gsm -var/lib/asterisk/sounds/en/vm-received.gsm -var/lib/asterisk/sounds/en/vm-record-prepend.gsm -var/lib/asterisk/sounds/en/vm-reenterpassword.gsm -var/lib/asterisk/sounds/en/vm-repeat.gsm -var/lib/asterisk/sounds/en/vm-review-nonurgent.gsm -var/lib/asterisk/sounds/en/vm-review-urgent.gsm -var/lib/asterisk/sounds/en/vm-review.gsm -var/lib/asterisk/sounds/en/vm-saved.gsm -var/lib/asterisk/sounds/en/vm-savedto.gsm -var/lib/asterisk/sounds/en/vm-savefolder.gsm -var/lib/asterisk/sounds/en/vm-savemessage.gsm -var/lib/asterisk/sounds/en/vm-saveoper.gsm -var/lib/asterisk/sounds/en/vm-sorry.gsm -var/lib/asterisk/sounds/en/vm-star-cancel.gsm -var/lib/asterisk/sounds/en/vm-starmain.gsm -var/lib/asterisk/sounds/en/vm-tempgreetactive.gsm -var/lib/asterisk/sounds/en/vm-tempgreeting.gsm -var/lib/asterisk/sounds/en/vm-tempgreeting2.gsm -var/lib/asterisk/sounds/en/vm-tempremoved.gsm -var/lib/asterisk/sounds/en/vm-then-pound.gsm -var/lib/asterisk/sounds/en/vm-theperson.gsm -var/lib/asterisk/sounds/en/vm-tmpexists.gsm -var/lib/asterisk/sounds/en/vm-tocallback.gsm -var/lib/asterisk/sounds/en/vm-tocallnum.gsm -var/lib/asterisk/sounds/en/vm-tocancel.gsm -var/lib/asterisk/sounds/en/vm-tocancelmsg.gsm -var/lib/asterisk/sounds/en/vm-toenternumber.gsm -var/lib/asterisk/sounds/en/vm-toforward.gsm -var/lib/asterisk/sounds/en/vm-tohearenv.gsm -var/lib/asterisk/sounds/en/vm-tomakecall.gsm -var/lib/asterisk/sounds/en/vm-tooshort.gsm -var/lib/asterisk/sounds/en/vm-toreply.gsm -var/lib/asterisk/sounds/en/vm-torerecord.gsm -var/lib/asterisk/sounds/en/vm-undelete.gsm -var/lib/asterisk/sounds/en/vm-undeleted.gsm -var/lib/asterisk/sounds/en/vm-unknown-caller.gsm -var/lib/asterisk/sounds/en/vm-whichbox.gsm -var/lib/asterisk/sounds/en/vm-youhave.gsm -var/lib/asterisk/sounds/en/voice-mail-system.gsm -var/lib/asterisk/sounds/en/wait-moment.gsm -var/lib/asterisk/sounds/en/wait-offensive-sounds.gsm -var/lib/asterisk/sounds/en/wakeup-call-cancelled.gsm -var/lib/asterisk/sounds/en/wakeup-call.gsm -var/lib/asterisk/sounds/en/wakeup-daily.gsm -var/lib/asterisk/sounds/en/wakeup-for-daily.gsm -var/lib/asterisk/sounds/en/wakeup-for-one-time.gsm -var/lib/asterisk/sounds/en/wakeup-onetime.gsm -var/lib/asterisk/sounds/en/walks-into-bar-mail.gsm -var/lib/asterisk/sounds/en/warning.gsm -var/lib/asterisk/sounds/en/was-last-seen.gsm -var/lib/asterisk/sounds/en/was.gsm -var/lib/asterisk/sounds/en/washington-dc.gsm -var/lib/asterisk/sounds/en/washington.gsm -var/lib/asterisk/sounds/en/watch.gsm -var/lib/asterisk/sounds/en/watson.gsm -var/lib/asterisk/sounds/en/we-apologize.gsm -var/lib/asterisk/sounds/en/we-dont-have-tech-support.gsm -var/lib/asterisk/sounds/en/weasels-eaten-phonesys.gsm -var/lib/asterisk/sounds/en/weather-station.gsm -var/lib/asterisk/sounds/en/weather.gsm -var/lib/asterisk/sounds/en/web.gsm -var/lib/asterisk/sounds/en/weeks.gsm -var/lib/asterisk/sounds/en/welcome.gsm -var/lib/asterisk/sounds/en/were-sorry.gsm -var/lib/asterisk/sounds/en/west-virginia.gsm -var/lib/asterisk/sounds/en/west.gsm -var/lib/asterisk/sounds/en/westerly.gsm -var/lib/asterisk/sounds/en/what-are-you-wearing.gsm -var/lib/asterisk/sounds/en/what-time-it-is.gsm -var/lib/asterisk/sounds/en/what-time-it-is2.gsm -var/lib/asterisk/sounds/en/when-dialing-this-number.gsm -var/lib/asterisk/sounds/en/who-would-you-like-to-call.gsm -var/lib/asterisk/sounds/en/whoareyou.gsm -var/lib/asterisk/sounds/en/why-no-answer-mystery.gsm -var/lib/asterisk/sounds/en/wichita.gsm -var/lib/asterisk/sounds/en/will-apply.gsm -var/lib/asterisk/sounds/en/will-expire.gsm -var/lib/asterisk/sounds/en/will-not-expire.gsm -var/lib/asterisk/sounds/en/will-reflect-charge-of.gsm -var/lib/asterisk/sounds/en/wind.gsm -var/lib/asterisk/sounds/en/windows.gsm -var/lib/asterisk/sounds/en/windy.gsm -var/lib/asterisk/sounds/en/wisconsin.gsm -var/lib/asterisk/sounds/en/wish-to-continue.gsm -var/lib/asterisk/sounds/en/wish_command_totally.gsm -var/lib/asterisk/sounds/en/with.gsm -var/lib/asterisk/sounds/en/within.gsm -var/lib/asterisk/sounds/en/woo_hoo_call_first.gsm -var/lib/asterisk/sounds/en/work.gsm -var/lib/asterisk/sounds/en/wrong-try-again-smarty.gsm -var/lib/asterisk/sounds/en/wtng-to-spk-w-rep.gsm -var/lib/asterisk/sounds/en/www-switchboard-com.gsm -var/lib/asterisk/sounds/en/wx -var/lib/asterisk/sounds/en/wx/around.gsm -var/lib/asterisk/sounds/en/wx/barometer.gsm -var/lib/asterisk/sounds/en/wx/ceiling.gsm -var/lib/asterisk/sounds/en/wx/dew-point.gsm -var/lib/asterisk/sounds/en/wx/falling.gsm -var/lib/asterisk/sounds/en/wx/feet.gsm -var/lib/asterisk/sounds/en/wx/foot.gsm -var/lib/asterisk/sounds/en/wx/gust.gsm -var/lib/asterisk/sounds/en/wx/gusting-to.gsm -var/lib/asterisk/sounds/en/wx/gusts.gsm -var/lib/asterisk/sounds/en/wx/gusty.gsm -var/lib/asterisk/sounds/en/wx/heat-index.gsm -var/lib/asterisk/sounds/en/wx/humidity.gsm -var/lib/asterisk/sounds/en/wx/inch.gsm -var/lib/asterisk/sounds/en/wx/inches.gsm -var/lib/asterisk/sounds/en/wx/kilometer.gsm -var/lib/asterisk/sounds/en/wx/large.gsm -var/lib/asterisk/sounds/en/wx/meter.gsm -var/lib/asterisk/sounds/en/wx/mist.gsm -var/lib/asterisk/sounds/en/wx/northeast.gsm -var/lib/asterisk/sounds/en/wx/northwest.gsm -var/lib/asterisk/sounds/en/wx/percent.gsm -var/lib/asterisk/sounds/en/wx/point.gsm -var/lib/asterisk/sounds/en/wx/rising.gsm -var/lib/asterisk/sounds/en/wx/southeast.gsm -var/lib/asterisk/sounds/en/wx/southwest.gsm -var/lib/asterisk/sounds/en/wx/steady.gsm -var/lib/asterisk/sounds/en/wx/temperature.gsm -var/lib/asterisk/sounds/en/wx/wind-chill.gsm -var/lib/asterisk/sounds/en/wx/winds.gsm -var/lib/asterisk/sounds/en/wyoming.gsm -var/lib/asterisk/sounds/en/yeah.gsm -var/lib/asterisk/sounds/en/year.gsm -var/lib/asterisk/sounds/en/years.gsm -var/lib/asterisk/sounds/en/yes-dear.gsm -var/lib/asterisk/sounds/en/yes-dear2.gsm -var/lib/asterisk/sounds/en/you-are-caller-num.gsm -var/lib/asterisk/sounds/en/you-are-curr-call-num.gsm -var/lib/asterisk/sounds/en/you-can-press.gsm -var/lib/asterisk/sounds/en/you-dialed-wrong-number.gsm -var/lib/asterisk/sounds/en/you-entered.gsm -var/lib/asterisk/sounds/en/you-have-dialed.gsm -var/lib/asterisk/sounds/en/you-have-reached-a-test-number.gsm -var/lib/asterisk/sounds/en/you-have-these-options.gsm -var/lib/asterisk/sounds/en/you-must-first-dial.gsm -var/lib/asterisk/sounds/en/you-seem-impatient.gsm -var/lib/asterisk/sounds/en/you-sound-cute.gsm -var/lib/asterisk/sounds/en/you-wish-to-join.gsm -var/lib/asterisk/sounds/en/you_say_yes.gsm -var/lib/asterisk/sounds/en/your-account.gsm -var/lib/asterisk/sounds/en/your-msg-has-been-saved.gsm -var/lib/asterisk/sounds/en/your-msg-is-too-short.gsm -var/lib/asterisk/sounds/en/your-notifications.gsm -var/lib/asterisk/sounds/en/your-req-notification.gsm -var/lib/asterisk/sounds/en/your-temp-greeting.gsm -var/lib/asterisk/sounds/en/your.gsm -var/lib/asterisk/sounds/en/yourcallisimportant.gsm -var/lib/asterisk/sounds/en/yourcallisimpotent.gsm -var/lib/asterisk/sounds/en/zip-code.gsm -var/lib/asterisk/sounds/en/zombies.gsm -#var/lib/asterisk/sounds/letters -#var/lib/asterisk/sounds/letters/de -var/lib/asterisk/sounds/letters/de/a.gsm -var/lib/asterisk/sounds/letters/de/at.gsm -var/lib/asterisk/sounds/letters/de/b.gsm -var/lib/asterisk/sounds/letters/de/c.gsm -var/lib/asterisk/sounds/letters/de/d.gsm -var/lib/asterisk/sounds/letters/de/dash.gsm -var/lib/asterisk/sounds/letters/de/dollar.gsm -var/lib/asterisk/sounds/letters/de/dot.gsm -var/lib/asterisk/sounds/letters/de/e.gsm -var/lib/asterisk/sounds/letters/de/equals.gsm -var/lib/asterisk/sounds/letters/de/exclaimation-point.gsm -var/lib/asterisk/sounds/letters/de/f.gsm -var/lib/asterisk/sounds/letters/de/g.gsm -var/lib/asterisk/sounds/letters/de/h.gsm -var/lib/asterisk/sounds/letters/de/i.gsm -var/lib/asterisk/sounds/letters/de/j.gsm -var/lib/asterisk/sounds/letters/de/k.gsm -var/lib/asterisk/sounds/letters/de/l.gsm -var/lib/asterisk/sounds/letters/de/m.gsm -var/lib/asterisk/sounds/letters/de/n.gsm -var/lib/asterisk/sounds/letters/de/o.gsm -var/lib/asterisk/sounds/letters/de/p.gsm -var/lib/asterisk/sounds/letters/de/plus.gsm -var/lib/asterisk/sounds/letters/de/q.gsm -var/lib/asterisk/sounds/letters/de/r.gsm -var/lib/asterisk/sounds/letters/de/s.gsm -var/lib/asterisk/sounds/letters/de/slash.gsm -var/lib/asterisk/sounds/letters/de/space.gsm -var/lib/asterisk/sounds/letters/de/t.gsm -var/lib/asterisk/sounds/letters/de/u.gsm -var/lib/asterisk/sounds/letters/de/v.gsm -var/lib/asterisk/sounds/letters/de/w.gsm -var/lib/asterisk/sounds/letters/de/x.gsm -var/lib/asterisk/sounds/letters/de/y.gsm -var/lib/asterisk/sounds/letters/de/z.gsm -var/lib/asterisk/sounds/letters/de/zed.gsm -#var/lib/asterisk/sounds/phonetic -#var/lib/asterisk/sounds/phonetic/de -var/lib/asterisk/sounds/phonetic/de/9_p.gsm -var/lib/asterisk/sounds/phonetic/de/a_p.gsm -var/lib/asterisk/sounds/phonetic/de/b_p.gsm -var/lib/asterisk/sounds/phonetic/de/c_p.gsm -var/lib/asterisk/sounds/phonetic/de/d_p.gsm -var/lib/asterisk/sounds/phonetic/de/e_p.gsm -var/lib/asterisk/sounds/phonetic/de/f_p.gsm -var/lib/asterisk/sounds/phonetic/de/g_p.gsm -var/lib/asterisk/sounds/phonetic/de/h_p.gsm -var/lib/asterisk/sounds/phonetic/de/i_p.gsm -var/lib/asterisk/sounds/phonetic/de/j_p.gsm -var/lib/asterisk/sounds/phonetic/de/k_p.gsm -var/lib/asterisk/sounds/phonetic/de/l_p.gsm -var/lib/asterisk/sounds/phonetic/de/m_p.gsm -var/lib/asterisk/sounds/phonetic/de/n_p.gsm -var/lib/asterisk/sounds/phonetic/de/niner.gsm -var/lib/asterisk/sounds/phonetic/de/o_p.gsm -var/lib/asterisk/sounds/phonetic/de/p_p.gsm -var/lib/asterisk/sounds/phonetic/de/q_p.gsm -var/lib/asterisk/sounds/phonetic/de/r_p.gsm -var/lib/asterisk/sounds/phonetic/de/s_p.gsm -var/lib/asterisk/sounds/phonetic/de/t_p.gsm -var/lib/asterisk/sounds/phonetic/de/u_p.gsm -var/lib/asterisk/sounds/phonetic/de/v_p.gsm -var/lib/asterisk/sounds/phonetic/de/w_p.gsm -var/lib/asterisk/sounds/phonetic/de/x_p.gsm -var/lib/asterisk/sounds/phonetic/de/y_p.gsm -var/lib/asterisk/sounds/phonetic/de/z_p.gsm -#var/lib/asterisk/static-http -#var/lib/asterisk/static-http/ajamdemo.html -#var/lib/asterisk/static-http/appdocsxml.xslt -#var/lib/asterisk/static-http/astman.css -#var/lib/asterisk/static-http/astman.js -#var/lib/asterisk/static-http/core-en_US.xml -#var/lib/asterisk/static-http/mantest.html -#var/lib/asterisk/static-http/prototype.js -#var/lib/asterisk/third-party -#var/log/asterisk -var/log/asterisk/cdr-csv -var/log/asterisk/cdr-custom -var/log/asterisk/cel-custom -#var/spool/asterisk -var/spool/asterisk/dictate -var/spool/asterisk/meetme -var/spool/asterisk/monitor -var/spool/asterisk/recording -var/spool/asterisk/system -var/spool/asterisk/tmp -#var/spool/asterisk/voicemail -#var/spool/asterisk/voicemail/default -#var/spool/asterisk/voicemail/default/1234 -var/spool/asterisk/voicemail/default/1234/INBOX -var/spool/asterisk/voicemail/default/1234/en -var/spool/asterisk/voicemail/default/1234/en/busy.gsm -var/spool/asterisk/voicemail/default/1234/en/unavail.gsm diff --git a/config/rootfiles/packages/bluetooth b/config/rootfiles/packages/bluetooth deleted file mode 100644 index 267e40ea1..000000000 --- a/config/rootfiles/packages/bluetooth +++ /dev/null @@ -1,98 +0,0 @@ -#etc/bluetooth -etc/bluetooth/audio.conf -etc/bluetooth/hcid.conf -etc/bluetooth/input.conf -etc/bluetooth/main.conf -etc/bluetooth/network.conf -etc/bluetooth/rfcomm.conf -etc/dbus-1/system.d/bluetooth.conf -#lib/udev/rules.d/24-bluetooth.rules -lib/firmware/BCM-LEGAL.txt -lib/firmware/BCM2033-FW.bin -lib/firmware/BCM2033-MD.hex -lib/firmware/STLC2500_R4_00_03.ptc -lib/firmware/STLC2500_R4_00_06.ssf -lib/firmware/STLC2500_R4_02_02_WLAN.ssf -lib/firmware/STLC2500_R4_02_04.ptc -lib/udev/bluetooth_serial -usr/bin/ciptool -usr/bin/dfutool -usr/bin/dund -usr/bin/hcitool -usr/bin/hidd -usr/bin/l2ping -usr/bin/l2test -usr/bin/pand -usr/bin/passkey-agent -usr/bin/rctest -usr/bin/rfcomm -usr/bin/sdptool -#usr/include/bluetooth -#usr/include/bluetooth/bluetooth.h -#usr/include/bluetooth/bnep.h -#usr/include/bluetooth/cmtp.h -#usr/include/bluetooth/hci.h -#usr/include/bluetooth/hci_lib.h -#usr/include/bluetooth/hidp.h -#usr/include/bluetooth/l2cap.h -#usr/include/bluetooth/rfcomm.h -#usr/include/bluetooth/sco.h -#usr/include/bluetooth/sdp.h -#usr/include/bluetooth/sdp_lib.h -#usr/lib/alsa-lib/libasound_module_ctl_bluetooth.la -usr/lib/alsa-lib/libasound_module_ctl_bluetooth.so -#usr/lib/alsa-lib/libasound_module_pcm_bluetooth.la -usr/lib/alsa-lib/libasound_module_pcm_bluetooth.so -#usr/lib/bluetooth -#usr/lib/bluetooth/plugins -#usr/lib/bluetooth/plugins/audio.la -usr/lib/bluetooth/plugins/audio.so -#usr/lib/bluetooth/plugins/input.la -usr/lib/bluetooth/plugins/input.so -#usr/lib/bluetooth/plugins/netlink.la -usr/lib/bluetooth/plugins/netlink.so -#usr/lib/bluetooth/plugins/network.la -usr/lib/bluetooth/plugins/network.so -#usr/lib/bluetooth/plugins/serial.la -usr/lib/bluetooth/plugins/serial.so -usr/lib/cups/backend/bluetooth -#usr/lib/libbluetooth.a -#usr/lib/libbluetooth.la -usr/lib/libbluetooth.so -usr/lib/libbluetooth.so.2 -usr/lib/libbluetooth.so.2.11.2 -#usr/lib/pkgconfig/bluez.pc -usr/sbin/bccmd -usr/sbin/hciattach -usr/sbin/hciconfig -usr/sbin/hcid -usr/sbin/hcidump -#usr/sbin/hciemu -usr/sbin/hid2hci -#usr/share/aclocal/bluez.m4 -#usr/share/man/man1/ciptool.1 -#usr/share/man/man1/dfutool.1 -#usr/share/man/man1/dund.1 -#usr/share/man/man1/hcitool.1 -#usr/share/man/man1/hidd.1 -#usr/share/man/man1/l2ping.1 -#usr/share/man/man1/pand.1 -#usr/share/man/man1/rfcomm.1 -#usr/share/man/man1/sdptool.1 -#usr/share/man/man5/hcid.conf.5 -#usr/share/man/man8/bccmd.8 -#usr/share/man/man8/hciattach.8 -#usr/share/man/man8/hciconfig.8 -#usr/share/man/man8/hcid.8 -#usr/share/man/man8/hcidump.8 -#usr/share/man/man8/hid2hci.8 -var/ipfire/backup/addons/includes/bluetooth -#var/ipfire/bluetooth -var/ipfire/bluetooth/settings -var/lib/bluetooth -srv/web/ipfire/cgi-bin/bluetooth.cgi -var/ipfire/menu.d/EX-bluetooth.menu -etc/rc.d/init.d/bluetooth -etc/rc.d/rc3.d/S16bluetooth -etc/rc.d/rc0.d/K84bluetooth -etc/rc.d/rc6.d/K84bluetooth diff --git a/config/rootfiles/packages/dpfhack b/config/rootfiles/packages/dpfhack deleted file mode 100644 index b79791c90..000000000 --- a/config/rootfiles/packages/dpfhack +++ /dev/null @@ -1,3 +0,0 @@ -#usr/include/dpf.h -#usr/include/usbuser.h -usr/lib/libdpf.so diff --git a/config/rootfiles/packages/elfutils b/config/rootfiles/packages/elfutils index c96267c26..d5db41fc7 100644 --- a/config/rootfiles/packages/elfutils +++ b/config/rootfiles/packages/elfutils @@ -27,15 +27,15 @@ usr/bin/eu-unstrip #usr/include/gelf.h #usr/include/libelf.h #usr/include/nlist.h -usr/lib/libasm-0.184.so +usr/lib/libasm-0.185.so #usr/lib/libasm.a #usr/lib/libasm.so usr/lib/libasm.so.1 -usr/lib/libdw-0.184.so +usr/lib/libdw-0.185.so #usr/lib/libdw.a #usr/lib/libdw.so usr/lib/libdw.so.1 -usr/lib/libelf-0.184.so +usr/lib/libelf-0.185.so #usr/lib/libelf.a #usr/lib/libelf.so usr/lib/libelf.so.1 diff --git a/config/rootfiles/packages/flac b/config/rootfiles/packages/flac index 6ea1dc958..1e489a5bb 100644 --- a/config/rootfiles/packages/flac +++ b/config/rootfiles/packages/flac @@ -28,29 +28,28 @@ usr/lib/libFLAC.so.8.3.0 #usr/lib/pkgconfig/flac.pc #usr/share/aclocal/libFLAC++.m4 #usr/share/aclocal/libFLAC.m4 -#usr/share/doc/flac-1.3.2 -#usr/share/doc/flac-1.3.2/FLAC.tag -#usr/share/doc/flac-1.3.2/html -#usr/share/doc/flac-1.3.2/html/changelog.html -#usr/share/doc/flac-1.3.2/html/developers.html -#usr/share/doc/flac-1.3.2/html/documentation.html -#usr/share/doc/flac-1.3.2/html/documentation_bugs.html -#usr/share/doc/flac-1.3.2/html/documentation_example_code.html -#usr/share/doc/flac-1.3.2/html/documentation_format_overview.html -#usr/share/doc/flac-1.3.2/html/documentation_tools.html -#usr/share/doc/flac-1.3.2/html/documentation_tools_flac.html -#usr/share/doc/flac-1.3.2/html/documentation_tools_metaflac.html -#usr/share/doc/flac-1.3.2/html/faq.html -#usr/share/doc/flac-1.3.2/html/favicon.ico -#usr/share/doc/flac-1.3.2/html/features.html -#usr/share/doc/flac-1.3.2/html/flac.css -#usr/share/doc/flac-1.3.2/html/format.html -#usr/share/doc/flac-1.3.2/html/id.html -#usr/share/doc/flac-1.3.2/html/images -#usr/share/doc/flac-1.3.2/html/images/logo.svg -#usr/share/doc/flac-1.3.2/html/images/logo130.gif -#usr/share/doc/flac-1.3.2/html/index.html -#usr/share/doc/flac-1.3.2/html/license.html -#usr/share/doc/flac-1.3.2/html/ogg_mapping.html +#usr/share/doc/flac +#usr/share/doc/flac/FLAC.tag +#usr/share/doc/flac/changelog.html +#usr/share/doc/flac/developers.html +#usr/share/doc/flac/documentation.html +#usr/share/doc/flac/documentation_bugs.html +#usr/share/doc/flac/documentation_example_code.html +#usr/share/doc/flac/documentation_format_overview.html +#usr/share/doc/flac/documentation_tools.html +#usr/share/doc/flac/documentation_tools_flac.html +#usr/share/doc/flac/documentation_tools_metaflac.html +#usr/share/doc/flac/faq.html +#usr/share/doc/flac/favicon.ico +#usr/share/doc/flac/features.html +#usr/share/doc/flac/flac.css +#usr/share/doc/flac/format.html +#usr/share/doc/flac/id.html +#usr/share/doc/flac/images +#usr/share/doc/flac/images/logo.svg +#usr/share/doc/flac/images/logo130.gif +#usr/share/doc/flac/index.html +#usr/share/doc/flac/license.html +#usr/share/doc/flac/ogg_mapping.html #usr/share/man/man1/flac.1 #usr/share/man/man1/metaflac.1 diff --git a/config/rootfiles/packages/lcd4linux b/config/rootfiles/packages/lcd4linux deleted file mode 100644 index 226daf418..000000000 --- a/config/rootfiles/packages/lcd4linux +++ /dev/null @@ -1,3 +0,0 @@ -usr/bin/lcd4linux -var/ipfire/backup/addons/includes/lcd4linux -etc/rc.d/init.d/lcd4linux diff --git a/config/rootfiles/packages/libmicrohttpd b/config/rootfiles/packages/libmicrohttpd deleted file mode 100644 index 62717ed94..000000000 --- a/config/rootfiles/packages/libmicrohttpd +++ /dev/null @@ -1,6 +0,0 @@ -#usr/include/microhttpd.h -#usr/lib/libmicrohttpd.la -#usr/lib/libmicrohttpd.so -usr/lib/libmicrohttpd.so.12 -usr/lib/libmicrohttpd.so.12.58.0 -#usr/lib/pkgconfig/libmicrohttpd.pc diff --git a/config/rootfiles/packages/libogg b/config/rootfiles/packages/libogg index 0b53490cd..2977fc6b0 100644 --- a/config/rootfiles/packages/libogg +++ b/config/rootfiles/packages/libogg @@ -6,7 +6,7 @@ #usr/lib/libogg.la #usr/lib/libogg.so usr/lib/libogg.so.0 -usr/lib/libogg.so.0.8.4 +usr/lib/libogg.so.0.8.5 #usr/lib/pkgconfig/ogg.pc #usr/share/aclocal/ogg.m4 #usr/share/doc/libogg @@ -94,4 +94,3 @@ usr/lib/libogg.so.0.8.4 #usr/share/doc/libogg/vorbisword2.png #usr/share/doc/libogg/white-ogg.png #usr/share/doc/libogg/white-xifish.png - diff --git a/config/rootfiles/packages/libsrtp b/config/rootfiles/packages/libsrtp deleted file mode 100644 index 3ee2e3b64..000000000 --- a/config/rootfiles/packages/libsrtp +++ /dev/null @@ -1,41 +0,0 @@ -#usr/include/srtp -#usr/include/srtp/aes.h -#usr/include/srtp/aes_cbc.h -#usr/include/srtp/aes_gcm_ossl.h -#usr/include/srtp/aes_icm.h -#usr/include/srtp/aes_icm_ossl.h -#usr/include/srtp/alloc.h -#usr/include/srtp/auth.h -#usr/include/srtp/cipher.h -#usr/include/srtp/config.h -#usr/include/srtp/crypto.h -#usr/include/srtp/crypto_kernel.h -#usr/include/srtp/crypto_math.h -#usr/include/srtp/crypto_types.h -#usr/include/srtp/cryptoalg.h -#usr/include/srtp/datatypes.h -#usr/include/srtp/ekt.h -#usr/include/srtp/err.h -#usr/include/srtp/getopt_s.h -#usr/include/srtp/gf2_8.h -#usr/include/srtp/hmac.h -#usr/include/srtp/integers.h -#usr/include/srtp/kernel_compat.h -#usr/include/srtp/key.h -#usr/include/srtp/null_auth.h -#usr/include/srtp/null_cipher.h -#usr/include/srtp/prng.h -#usr/include/srtp/rand_source.h -#usr/include/srtp/rdb.h -#usr/include/srtp/rdbx.h -#usr/include/srtp/rtp.h -#usr/include/srtp/rtp_priv.h -#usr/include/srtp/sha1.h -#usr/include/srtp/srtp.h -#usr/include/srtp/srtp_priv.h -#usr/include/srtp/stat.h -#usr/include/srtp/ut_sim.h -#usr/include/srtp/xfm.h -usr/lib/libsrtp.so -usr/lib/libsrtp.so.1 -#usr/lib/pkgconfig/libsrtp.pc diff --git a/config/rootfiles/packages/miniupnpd b/config/rootfiles/packages/miniupnpd deleted file mode 100644 index cdad3be61..000000000 --- a/config/rootfiles/packages/miniupnpd +++ /dev/null @@ -1,6 +0,0 @@ -etc/miniupnpd -etc/miniupnpd/miniupnpd.conf -etc/rc.d/init.d/miniupnpd -etc/rc.d/init.d/networking/red.down/10-miniupnpd -etc/rc.d/init.d/networking/red.up/10-miniupnpd -usr/sbin/miniupnpd diff --git a/config/rootfiles/packages/motion b/config/rootfiles/packages/motion deleted file mode 100644 index f93b24a91..000000000 --- a/config/rootfiles/packages/motion +++ /dev/null @@ -1,44 +0,0 @@ -etc/motion -etc/motion.conf -etc/motion/camera1-dist.conf -etc/motion/camera2-dist.conf -etc/motion/camera3-dist.conf -etc/motion/camera4-dist.conf -#etc/motion/motion-dist.conf -etc/rc.d/init.d/motion -etc/rc.d/rc0.d/K01motion -etc/rc.d/rc6.d/K01motion -etc/rc.d/rc3.d/S99motion -usr/bin/motion -#usr/share/doc/motion -#usr/share/doc/motion/COPYING -#usr/share/doc/motion/CREDITS -#usr/share/doc/motion/mask1.png -#usr/share/doc/motion/motion_build.html -#usr/share/doc/motion/motion_config.html -#usr/share/doc/motion/motion_guide.html -#usr/share/doc/motion/motion_stylesheet.css -#usr/share/doc/motion/normal.jpg -#usr/share/doc/motion/outputmotion1.jpg -#usr/share/doc/motion/outputnormal1.jpg -#usr/share/locale/da/LC_MESSAGES/motion.mo -#usr/share/locale/de/LC_MESSAGES/motion.mo -#usr/share/locale/es/LC_MESSAGES/motion.mo -#usr/share/locale/fi/LC_MESSAGES/motion.mo -#usr/share/locale/fr/LC_MESSAGES/motion.mo -#usr/share/locale/it/LC_MESSAGES/motion.mo -#usr/share/locale/ja/LC_MESSAGES/motion.mo -#usr/share/locale/ko/LC_MESSAGES/motion.mo -#usr/share/locale/li -#usr/share/locale/li/LC_MESSAGES -#usr/share/locale/li/LC_MESSAGES/motion.mo -#usr/share/locale/nl/LC_MESSAGES/motion.mo -#usr/share/locale/no -#usr/share/locale/no/LC_MESSAGES -#usr/share/locale/no/LC_MESSAGES/motion.mo -#usr/share/locale/pt/LC_MESSAGES/motion.mo -#usr/share/locale/sk/LC_MESSAGES/motion.mo -#usr/share/locale/sv/LC_MESSAGES/motion.mo -#usr/share/locale/zh/LC_MESSAGES/motion.mo -#usr/share/man/man1/motion.1 -var/ipfire/backup/addons/includes/motion diff --git a/config/rootfiles/packages/netsnmpd b/config/rootfiles/packages/netsnmpd index c116882a9..c8eb25853 100644 --- a/config/rootfiles/packages/netsnmpd +++ b/config/rootfiles/packages/netsnmpd @@ -131,6 +131,7 @@ usr/bin/traptoemail #usr/include/net-snmp/library/snmp.h #usr/include/net-snmp/library/snmpAliasDomain.h #usr/include/net-snmp/library/snmpCallbackDomain.h +#usr/include/net-snmp/library/snmpIPBaseDomain.h #usr/include/net-snmp/library/snmpIPv4BaseDomain.h #usr/include/net-snmp/library/snmpIPv6BaseDomain.h #usr/include/net-snmp/library/snmpSocketBaseDomain.h @@ -184,23 +185,14 @@ usr/bin/traptoemail #usr/include/net-snmp/system/bsdi4.h #usr/include/net-snmp/system/cygwin.h #usr/include/net-snmp/system/darwin.h -#usr/include/net-snmp/system/darwin10.h -#usr/include/net-snmp/system/darwin11.h -#usr/include/net-snmp/system/darwin12.h -#usr/include/net-snmp/system/darwin13.h -#usr/include/net-snmp/system/darwin14.h -#usr/include/net-snmp/system/darwin15.h -#usr/include/net-snmp/system/darwin16.h -#usr/include/net-snmp/system/darwin17.h -#usr/include/net-snmp/system/darwin7.h -#usr/include/net-snmp/system/darwin8.h -#usr/include/net-snmp/system/darwin9.h #usr/include/net-snmp/system/dragonfly.h #usr/include/net-snmp/system/dynix.h #usr/include/net-snmp/system/freebsd.h #usr/include/net-snmp/system/freebsd10.h #usr/include/net-snmp/system/freebsd11.h #usr/include/net-snmp/system/freebsd12.h +#usr/include/net-snmp/system/freebsd13.h +#usr/include/net-snmp/system/freebsd14.h #usr/include/net-snmp/system/freebsd2.h #usr/include/net-snmp/system/freebsd3.h #usr/include/net-snmp/system/freebsd4.h @@ -240,28 +232,28 @@ usr/bin/traptoemail #usr/lib/libnetsnmp.a #usr/lib/libnetsnmp.la #usr/lib/libnetsnmp.so -usr/lib/libnetsnmp.so.35 -usr/lib/libnetsnmp.so.35.0.0 +usr/lib/libnetsnmp.so.40 +usr/lib/libnetsnmp.so.40.1.0 #usr/lib/libnetsnmpagent.a #usr/lib/libnetsnmpagent.la #usr/lib/libnetsnmpagent.so -usr/lib/libnetsnmpagent.so.35 -usr/lib/libnetsnmpagent.so.35.0.0 +usr/lib/libnetsnmpagent.so.40 +usr/lib/libnetsnmpagent.so.40.1.0 #usr/lib/libnetsnmphelpers.a #usr/lib/libnetsnmphelpers.la #usr/lib/libnetsnmphelpers.so -usr/lib/libnetsnmphelpers.so.35 -usr/lib/libnetsnmphelpers.so.35.0.0 +usr/lib/libnetsnmphelpers.so.40 +usr/lib/libnetsnmphelpers.so.40.1.0 #usr/lib/libnetsnmpmibs.a #usr/lib/libnetsnmpmibs.la #usr/lib/libnetsnmpmibs.so -usr/lib/libnetsnmpmibs.so.35 -usr/lib/libnetsnmpmibs.so.35.0.0 +usr/lib/libnetsnmpmibs.so.40 +usr/lib/libnetsnmpmibs.so.40.1.0 #usr/lib/libnetsnmptrapd.a #usr/lib/libnetsnmptrapd.la #usr/lib/libnetsnmptrapd.so -usr/lib/libnetsnmptrapd.so.35 -usr/lib/libnetsnmptrapd.so.35.0.0 +usr/lib/libnetsnmptrapd.so.40 +usr/lib/libnetsnmptrapd.so.40.1.0 #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/Bundle usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/Bundle/MakefileSubs.pm #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/NetSNMP @@ -280,33 +272,28 @@ usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/SNMP.pm #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/Bundle/NetSNMP/.packlist #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/ASN -#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/ASN/ASN.bs usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/ASN/ASN.so usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/ASN/autosplit.ix #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/OID -#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/OID/OID.bs usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/OID/OID.so usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/OID/autosplit.ix #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/TrapReceiver -#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/TrapReceiver/TrapReceiver.bs usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/TrapReceiver/TrapReceiver.so usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/TrapReceiver/autosplit.ix #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/agent -#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/agent/agent.bs usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/agent/agent.so usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/agent/autosplit.ix #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/agent/default_store usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/agent/default_store/autosplit.ix -#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/agent/default_store/default_store.bs usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/agent/default_store/default_store.so #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/default_store usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/default_store/autosplit.ix -#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/default_store/default_store.bs usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/NetSNMP/default_store/default_store.so #usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/SNMP -#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/SNMP/SNMP.bs usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/SNMP/SNMP.so usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/SNMP/autosplit.ix +#usr/lib/pkgconfig/netsnmp-agent.pc +#usr/lib/pkgconfig/netsnmp.pc usr/sbin/snmpd usr/sbin/snmptrapd #usr/share/man/man1/agentxtrap.1 diff --git a/config/rootfiles/packages/perl-TimeDate b/config/rootfiles/packages/perl-TimeDate index a5f5da95c..aa1d64827 100644 --- a/config/rootfiles/packages/perl-TimeDate +++ b/config/rootfiles/packages/perl-TimeDate @@ -5,6 +5,7 @@ usr/lib/perl5/site_perl/5.32.1/Date/Language/Afar.pm usr/lib/perl5/site_perl/5.32.1/Date/Language/Amharic.pm usr/lib/perl5/site_perl/5.32.1/Date/Language/Austrian.pm usr/lib/perl5/site_perl/5.32.1/Date/Language/Brazilian.pm +usr/lib/perl5/site_perl/5.32.1/Date/Language/Bulgarian.pm usr/lib/perl5/site_perl/5.32.1/Date/Language/Chinese.pm usr/lib/perl5/site_perl/5.32.1/Date/Language/Chinese_GB.pm usr/lib/perl5/site_perl/5.32.1/Date/Language/Czech.pm @@ -20,6 +21,7 @@ usr/lib/perl5/site_perl/5.32.1/Date/Language/Hungarian.pm usr/lib/perl5/site_perl/5.32.1/Date/Language/Icelandic.pm usr/lib/perl5/site_perl/5.32.1/Date/Language/Italian.pm usr/lib/perl5/site_perl/5.32.1/Date/Language/Norwegian.pm +usr/lib/perl5/site_perl/5.32.1/Date/Language/Occitan.pm usr/lib/perl5/site_perl/5.32.1/Date/Language/Oromo.pm usr/lib/perl5/site_perl/5.32.1/Date/Language/Romanian.pm usr/lib/perl5/site_perl/5.32.1/Date/Language/Russian.pm @@ -36,10 +38,13 @@ usr/lib/perl5/site_perl/5.32.1/Date/Language/Turkish.pm usr/lib/perl5/site_perl/5.32.1/Date/Parse.pm #usr/lib/perl5/site_perl/5.32.1/Time usr/lib/perl5/site_perl/5.32.1/Time/Zone.pm -#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/TimeDate -#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/TimeDate/.packlist +usr/lib/perl5/site_perl/5.32.1/TimeDate.pm +#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/Date/Parse +#usr/lib/perl5/site_perl/5.32.1/xxxMACHINExxx-linux-thread-multi/auto/Date/Parse/.packlist #usr/share/man/man3/Date::Format.3 #usr/share/man/man3/Date::Language.3 +#usr/share/man/man3/Date::Language::Bulgarian.3 #usr/share/man/man3/Date::Language::Hungarian.3 #usr/share/man/man3/Date::Parse.3 #usr/share/man/man3/Time::Zone.3 +#usr/share/man/man3/TimeDate.3 diff --git a/config/rootfiles/packages/python3-pyparsing b/config/rootfiles/packages/python3-pyparsing new file mode 100644 index 000000000..3106ff1b6 --- /dev/null +++ b/config/rootfiles/packages/python3-pyparsing @@ -0,0 +1,9 @@ +#usr/lib/python3.8/site-packages/easy-install.pth +#usr/lib/python3.8/site-packages/pyparsing-2.4.7-py3.8.egg +#usr/lib/python3.8/site-packages/pyparsing-2.4.7-py3.8.egg/EGG-INFO +#usr/lib/python3.8/site-packages/pyparsing-2.4.7-py3.8.egg/EGG-INFO/PKG-INFO +#usr/lib/python3.8/site-packages/pyparsing-2.4.7-py3.8.egg/EGG-INFO/SOURCES.txt +#usr/lib/python3.8/site-packages/pyparsing-2.4.7-py3.8.egg/EGG-INFO/dependency_links.txt +#usr/lib/python3.8/site-packages/pyparsing-2.4.7-py3.8.egg/EGG-INFO/not-zip-safe +#usr/lib/python3.8/site-packages/pyparsing-2.4.7-py3.8.egg/EGG-INFO/top_level.txt +usr/lib/python3.8/site-packages/pyparsing-2.4.7-py3.8.egg/pyparsing.py diff --git a/config/rootfiles/packages/python3-setuptools b/config/rootfiles/packages/python3-setuptools new file mode 100644 index 000000000..cb6e9b037 --- /dev/null +++ b/config/rootfiles/packages/python3-setuptools @@ -0,0 +1,175 @@ +#usr/lib/python3.8/site-packages/easy-install.pth +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/EGG-INFO +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/EGG-INFO/PKG-INFO +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/EGG-INFO/SOURCES.txt +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/EGG-INFO/dependency_links.txt +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/EGG-INFO/entry_points.txt +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/EGG-INFO/not-zip-safe +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/EGG-INFO/requires.txt +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/EGG-INFO/top_level.txt +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/_distutils_hack +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/_distutils_hack/__init__.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/_distutils_hack/override.py +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/__init__.py +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/_vendor +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/_vendor/__init__.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/_vendor/appdirs.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/_vendor/packaging +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/_vendor/packaging/__about__.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/_vendor/packaging/__init__.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/_vendor/packaging/_compat.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/_vendor/packaging/_structures.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/_vendor/packaging/_typing.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/_vendor/packaging/markers.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/_vendor/packaging/requirements.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/_vendor/packaging/specifiers.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/_vendor/packaging/tags.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/_vendor/packaging/utils.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/_vendor/packaging/version.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/_vendor/pyparsing.py +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/extern +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/extern/__init__.py +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/tests +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/tests/data +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/tests/data/my-test-package-source +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/pkg_resources/tests/data/my-test-package-source/setup.py +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/__init__.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_deprecation_warning.py +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/__init__.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/_msvccompiler.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/archive_util.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/bcppcompiler.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/ccompiler.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/cmd.py +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/__init__.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/bdist.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/bdist_dumb.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/bdist_msi.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/bdist_rpm.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/bdist_wininst.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/build.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/build_clib.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/build_ext.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/build_py.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/build_scripts.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/check.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/clean.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/config.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/install.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/install_data.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/install_egg_info.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/install_headers.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/install_lib.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/install_scripts.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/py37compat.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/register.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/sdist.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/command/upload.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/config.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/core.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/cygwinccompiler.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/debug.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/dep_util.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/dir_util.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/dist.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/errors.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/extension.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/fancy_getopt.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/file_util.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/filelist.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/log.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/msvc9compiler.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/msvccompiler.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/py35compat.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/py38compat.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/spawn.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/sysconfig.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/text_file.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/unixccompiler.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/util.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/version.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_distutils/versionpredicate.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_imp.py +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_vendor +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_vendor/__init__.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_vendor/ordered_set.py +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_vendor/packaging +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_vendor/packaging/__about__.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_vendor/packaging/__init__.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_vendor/packaging/_compat.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_vendor/packaging/_structures.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_vendor/packaging/_typing.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_vendor/packaging/markers.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_vendor/packaging/requirements.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_vendor/packaging/specifiers.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_vendor/packaging/tags.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_vendor/packaging/utils.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_vendor/packaging/version.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/_vendor/pyparsing.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/archive_util.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/build_meta.py +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/cli-32.exe +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/cli-64.exe +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/cli.exe +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/__init__.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/alias.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/bdist_egg.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/bdist_rpm.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/build_clib.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/build_ext.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/build_py.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/develop.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/dist_info.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/easy_install.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/egg_info.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/install.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/install_egg_info.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/install_lib.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/install_scripts.py +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/launcher +#manifest.xml +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/py36compat.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/register.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/rotate.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/saveopts.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/sdist.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/setopt.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/test.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/upload.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/command/upload_docs.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/config.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/dep_util.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/depends.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/dist.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/errors.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/extension.py +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/extern +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/extern/__init__.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/glob.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/gui-32.exe +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/gui-64.exe +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/gui.exe +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/installer.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/launch.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/lib2to3_ex.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/monkey.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/msvc.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/namespaces.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/package_index.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/py34compat.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/sandbox.py +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/script +#(dev).tmpl +#usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/script.tmpl +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/ssl_support.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/unicode_utils.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/version.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/wheel.py +usr/lib/python3.8/site-packages/setuptools-56.2.0-py3.8.egg/setuptools/windows_support.py +#usr/lib/python3.8/site-packages/setuptools.pth diff --git a/config/rootfiles/packages/sane b/config/rootfiles/packages/sane deleted file mode 100644 index 9da1fda6b..000000000 --- a/config/rootfiles/packages/sane +++ /dev/null @@ -1,659 +0,0 @@ -etc/rc.d/init.d/sane -etc/rc.d/rc0.d/K10sane -etc/rc.d/rc3.d/S95sane -etc/rc.d/rc6.d/K10sane -#etc/sane.d -etc/sane.d/abaton.conf -etc/sane.d/agfafocus.conf -etc/sane.d/apple.conf -etc/sane.d/artec.conf -etc/sane.d/artec_eplus48u.conf -etc/sane.d/avision.conf -etc/sane.d/bh.conf -etc/sane.d/canon.conf -etc/sane.d/canon630u.conf -etc/sane.d/canon_dr.conf -etc/sane.d/cardscan.conf -etc/sane.d/coolscan.conf -etc/sane.d/coolscan2.conf -etc/sane.d/coolscan3.conf -etc/sane.d/dc210.conf -etc/sane.d/dc240.conf -etc/sane.d/dc25.conf -etc/sane.d/dell1600n_net.conf -etc/sane.d/dll.conf -etc/sane.d/dll.d -etc/sane.d/dmc.conf -etc/sane.d/epjitsu.conf -etc/sane.d/epson.conf -etc/sane.d/epson2.conf -etc/sane.d/epsonds.conf -etc/sane.d/fujitsu.conf -etc/sane.d/genesys.conf -etc/sane.d/gt68xx.conf -etc/sane.d/hp.conf -etc/sane.d/hp3900.conf -etc/sane.d/hp4200.conf -etc/sane.d/hp5400.conf -etc/sane.d/hs2p.conf -etc/sane.d/ibm.conf -etc/sane.d/kodak.conf -etc/sane.d/kodakaio.conf -etc/sane.d/kvs1025.conf -etc/sane.d/leo.conf -etc/sane.d/lexmark.conf -etc/sane.d/ma1509.conf -etc/sane.d/magicolor.conf -etc/sane.d/matsushita.conf -etc/sane.d/microtek.conf -etc/sane.d/microtek2.conf -etc/sane.d/mustek.conf -etc/sane.d/mustek_pp.conf -etc/sane.d/mustek_usb.conf -etc/sane.d/nec.conf -etc/sane.d/net.conf -etc/sane.d/p5.conf -etc/sane.d/pie.conf -etc/sane.d/pieusb.conf -etc/sane.d/pixma.conf -etc/sane.d/plustek.conf -etc/sane.d/plustek_pp.conf -etc/sane.d/qcam.conf -etc/sane.d/ricoh.conf -etc/sane.d/rts8891.conf -etc/sane.d/s9036.conf -etc/sane.d/saned.conf -etc/sane.d/sceptre.conf -etc/sane.d/sharp.conf -etc/sane.d/sm3840.conf -etc/sane.d/snapscan.conf -etc/sane.d/sp15c.conf -etc/sane.d/st400.conf -etc/sane.d/stv680.conf -etc/sane.d/tamarack.conf -etc/sane.d/teco1.conf -etc/sane.d/teco2.conf -etc/sane.d/teco3.conf -etc/sane.d/test.conf -etc/sane.d/u12.conf -etc/sane.d/umax.conf -etc/sane.d/umax1220u.conf -etc/sane.d/umax_pp.conf -etc/sane.d/xerox_mfp.conf -usr/bin/gamma4scanimage -usr/bin/sane-config -usr/bin/sane-find-scanner -usr/bin/scanimage -usr/bin/umax_pp -#usr/include/sane -usr/include/sane/sane.h -usr/include/sane/saneopts.h -#usr/lib/libsane.la -usr/lib/libsane.so -usr/lib/libsane.so.1 -usr/lib/libsane.so.1.0.28 -#usr/lib/pkgconfig/sane-backends.pc -#usr/lib/sane -#usr/lib/sane/libsane-abaton.la -usr/lib/sane/libsane-abaton.so -usr/lib/sane/libsane-abaton.so.1 -usr/lib/sane/libsane-abaton.so.1.0.28 -#usr/lib/sane/libsane-agfafocus.la -usr/lib/sane/libsane-agfafocus.so -usr/lib/sane/libsane-agfafocus.so.1 -usr/lib/sane/libsane-agfafocus.so.1.0.28 -#usr/lib/sane/libsane-apple.la -usr/lib/sane/libsane-apple.so -usr/lib/sane/libsane-apple.so.1 -usr/lib/sane/libsane-apple.so.1.0.28 -#usr/lib/sane/libsane-artec.la -usr/lib/sane/libsane-artec.so -usr/lib/sane/libsane-artec.so.1 -usr/lib/sane/libsane-artec.so.1.0.28 -#usr/lib/sane/libsane-artec_eplus48u.la -usr/lib/sane/libsane-artec_eplus48u.so -usr/lib/sane/libsane-artec_eplus48u.so.1 -usr/lib/sane/libsane-artec_eplus48u.so.1.0.28 -#usr/lib/sane/libsane-as6e.la -usr/lib/sane/libsane-as6e.so -usr/lib/sane/libsane-as6e.so.1 -usr/lib/sane/libsane-as6e.so.1.0.28 -#usr/lib/sane/libsane-avision.la -usr/lib/sane/libsane-avision.so -usr/lib/sane/libsane-avision.so.1 -usr/lib/sane/libsane-avision.so.1.0.28 -#usr/lib/sane/libsane-bh.la -usr/lib/sane/libsane-bh.so -usr/lib/sane/libsane-bh.so.1 -usr/lib/sane/libsane-bh.so.1.0.28 -#usr/lib/sane/libsane-canon.la -usr/lib/sane/libsane-canon.so -usr/lib/sane/libsane-canon.so.1 -usr/lib/sane/libsane-canon.so.1.0.28 -#usr/lib/sane/libsane-canon630u.la -usr/lib/sane/libsane-canon630u.so -usr/lib/sane/libsane-canon630u.so.1 -usr/lib/sane/libsane-canon630u.so.1.0.28 -#usr/lib/sane/libsane-canon_dr.la -usr/lib/sane/libsane-canon_dr.so -usr/lib/sane/libsane-canon_dr.so.1 -usr/lib/sane/libsane-canon_dr.so.1.0.28 -#usr/lib/sane/libsane-cardscan.la -usr/lib/sane/libsane-cardscan.so -usr/lib/sane/libsane-cardscan.so.1 -usr/lib/sane/libsane-cardscan.so.1.0.28 -#usr/lib/sane/libsane-coolscan.la -usr/lib/sane/libsane-coolscan.so -usr/lib/sane/libsane-coolscan.so.1 -usr/lib/sane/libsane-coolscan.so.1.0.28 -#usr/lib/sane/libsane-coolscan2.la -usr/lib/sane/libsane-coolscan2.so -usr/lib/sane/libsane-coolscan2.so.1 -usr/lib/sane/libsane-coolscan2.so.1.0.28 -#usr/lib/sane/libsane-coolscan3.la -usr/lib/sane/libsane-coolscan3.so -usr/lib/sane/libsane-coolscan3.so.1 -usr/lib/sane/libsane-coolscan3.so.1.0.28 -#usr/lib/sane/libsane-dc210.la -usr/lib/sane/libsane-dc210.so -usr/lib/sane/libsane-dc210.so.1 -usr/lib/sane/libsane-dc210.so.1.0.28 -#usr/lib/sane/libsane-dc240.la -usr/lib/sane/libsane-dc240.so -usr/lib/sane/libsane-dc240.so.1 -usr/lib/sane/libsane-dc240.so.1.0.28 -#usr/lib/sane/libsane-dc25.la -usr/lib/sane/libsane-dc25.so -usr/lib/sane/libsane-dc25.so.1 -usr/lib/sane/libsane-dc25.so.1.0.28 -#usr/lib/sane/libsane-dell1600n_net.la -usr/lib/sane/libsane-dell1600n_net.so -usr/lib/sane/libsane-dell1600n_net.so.1 -usr/lib/sane/libsane-dell1600n_net.so.1.0.28 -#usr/lib/sane/libsane-dll.la -usr/lib/sane/libsane-dll.so -usr/lib/sane/libsane-dll.so.1 -usr/lib/sane/libsane-dll.so.1.0.28 -#usr/lib/sane/libsane-dmc.la -usr/lib/sane/libsane-dmc.so -usr/lib/sane/libsane-dmc.so.1 -usr/lib/sane/libsane-dmc.so.1.0.28 -#usr/lib/sane/libsane-epjitsu.la -usr/lib/sane/libsane-epjitsu.so -usr/lib/sane/libsane-epjitsu.so.1 -usr/lib/sane/libsane-epjitsu.so.1.0.28 -#usr/lib/sane/libsane-epson.la -usr/lib/sane/libsane-epson.so -usr/lib/sane/libsane-epson.so.1 -usr/lib/sane/libsane-epson.so.1.0.28 -#usr/lib/sane/libsane-epson2.la -usr/lib/sane/libsane-epson2.so -usr/lib/sane/libsane-epson2.so.1 -usr/lib/sane/libsane-epson2.so.1.0.28 -#usr/lib/sane/libsane-epsonds.la -usr/lib/sane/libsane-epsonds.so -usr/lib/sane/libsane-epsonds.so.1 -usr/lib/sane/libsane-epsonds.so.1.0.28 -#usr/lib/sane/libsane-fujitsu.la -usr/lib/sane/libsane-fujitsu.so -usr/lib/sane/libsane-fujitsu.so.1 -usr/lib/sane/libsane-fujitsu.so.1.0.28 -#usr/lib/sane/libsane-genesys.la -usr/lib/sane/libsane-genesys.so -usr/lib/sane/libsane-genesys.so.1 -usr/lib/sane/libsane-genesys.so.1.0.28 -#usr/lib/sane/libsane-gt68xx.la -usr/lib/sane/libsane-gt68xx.so -usr/lib/sane/libsane-gt68xx.so.1 -usr/lib/sane/libsane-gt68xx.so.1.0.28 -#usr/lib/sane/libsane-hp.la -usr/lib/sane/libsane-hp.so -usr/lib/sane/libsane-hp.so.1 -usr/lib/sane/libsane-hp.so.1.0.28 -#usr/lib/sane/libsane-hp3500.la -usr/lib/sane/libsane-hp3500.so -usr/lib/sane/libsane-hp3500.so.1 -usr/lib/sane/libsane-hp3500.so.1.0.28 -#usr/lib/sane/libsane-hp3900.la -usr/lib/sane/libsane-hp3900.so -usr/lib/sane/libsane-hp3900.so.1 -usr/lib/sane/libsane-hp3900.so.1.0.28 -#usr/lib/sane/libsane-hp4200.la -usr/lib/sane/libsane-hp4200.so -usr/lib/sane/libsane-hp4200.so.1 -usr/lib/sane/libsane-hp4200.so.1.0.28 -#usr/lib/sane/libsane-hp5400.la -usr/lib/sane/libsane-hp5400.so -usr/lib/sane/libsane-hp5400.so.1 -usr/lib/sane/libsane-hp5400.so.1.0.28 -#usr/lib/sane/libsane-hp5590.la -usr/lib/sane/libsane-hp5590.so -usr/lib/sane/libsane-hp5590.so.1 -usr/lib/sane/libsane-hp5590.so.1.0.28 -#usr/lib/sane/libsane-hpljm1005.la -usr/lib/sane/libsane-hpljm1005.so -usr/lib/sane/libsane-hpljm1005.so.1 -usr/lib/sane/libsane-hpljm1005.so.1.0.28 -#usr/lib/sane/libsane-hs2p.la -usr/lib/sane/libsane-hs2p.so -usr/lib/sane/libsane-hs2p.so.1 -usr/lib/sane/libsane-hs2p.so.1.0.28 -#usr/lib/sane/libsane-ibm.la -usr/lib/sane/libsane-ibm.so -usr/lib/sane/libsane-ibm.so.1 -usr/lib/sane/libsane-ibm.so.1.0.28 -#usr/lib/sane/libsane-kodak.la -usr/lib/sane/libsane-kodak.so -usr/lib/sane/libsane-kodak.so.1 -usr/lib/sane/libsane-kodak.so.1.0.28 -#usr/lib/sane/libsane-kodakaio.la -usr/lib/sane/libsane-kodakaio.so -usr/lib/sane/libsane-kodakaio.so.1 -usr/lib/sane/libsane-kodakaio.so.1.0.28 -#usr/lib/sane/libsane-kvs1025.la -usr/lib/sane/libsane-kvs1025.so -usr/lib/sane/libsane-kvs1025.so.1 -usr/lib/sane/libsane-kvs1025.so.1.0.28 -#usr/lib/sane/libsane-kvs20xx.la -usr/lib/sane/libsane-kvs20xx.so -usr/lib/sane/libsane-kvs20xx.so.1 -usr/lib/sane/libsane-kvs20xx.so.1.0.28 -#usr/lib/sane/libsane-kvs40xx.la -usr/lib/sane/libsane-kvs40xx.so -usr/lib/sane/libsane-kvs40xx.so.1 -usr/lib/sane/libsane-kvs40xx.so.1.0.28 -#usr/lib/sane/libsane-leo.la -usr/lib/sane/libsane-leo.so -usr/lib/sane/libsane-leo.so.1 -usr/lib/sane/libsane-leo.so.1.0.28 -#usr/lib/sane/libsane-lexmark.la -usr/lib/sane/libsane-lexmark.so -usr/lib/sane/libsane-lexmark.so.1 -usr/lib/sane/libsane-lexmark.so.1.0.28 -#usr/lib/sane/libsane-ma1509.la -usr/lib/sane/libsane-ma1509.so -usr/lib/sane/libsane-ma1509.so.1 -usr/lib/sane/libsane-ma1509.so.1.0.28 -#usr/lib/sane/libsane-magicolor.la -usr/lib/sane/libsane-magicolor.so -usr/lib/sane/libsane-magicolor.so.1 -usr/lib/sane/libsane-magicolor.so.1.0.28 -#usr/lib/sane/libsane-matsushita.la -usr/lib/sane/libsane-matsushita.so -usr/lib/sane/libsane-matsushita.so.1 -usr/lib/sane/libsane-matsushita.so.1.0.28 -#usr/lib/sane/libsane-microtek.la -usr/lib/sane/libsane-microtek.so -usr/lib/sane/libsane-microtek.so.1 -usr/lib/sane/libsane-microtek.so.1.0.28 -#usr/lib/sane/libsane-microtek2.la -usr/lib/sane/libsane-microtek2.so -usr/lib/sane/libsane-microtek2.so.1 -usr/lib/sane/libsane-microtek2.so.1.0.28 -#usr/lib/sane/libsane-mustek.la -usr/lib/sane/libsane-mustek.so -usr/lib/sane/libsane-mustek.so.1 -usr/lib/sane/libsane-mustek.so.1.0.28 -#usr/lib/sane/libsane-mustek_pp.la -usr/lib/sane/libsane-mustek_pp.so -usr/lib/sane/libsane-mustek_pp.so.1 -usr/lib/sane/libsane-mustek_pp.so.1.0.28 -#usr/lib/sane/libsane-mustek_usb.la -usr/lib/sane/libsane-mustek_usb.so -usr/lib/sane/libsane-mustek_usb.so.1 -usr/lib/sane/libsane-mustek_usb.so.1.0.28 -#usr/lib/sane/libsane-mustek_usb2.la -usr/lib/sane/libsane-mustek_usb2.so -usr/lib/sane/libsane-mustek_usb2.so.1 -usr/lib/sane/libsane-mustek_usb2.so.1.0.28 -#usr/lib/sane/libsane-nec.la -usr/lib/sane/libsane-nec.so -usr/lib/sane/libsane-nec.so.1 -usr/lib/sane/libsane-nec.so.1.0.28 -#usr/lib/sane/libsane-net.la -usr/lib/sane/libsane-net.so -usr/lib/sane/libsane-net.so.1 -usr/lib/sane/libsane-net.so.1.0.28 -#usr/lib/sane/libsane-niash.la -usr/lib/sane/libsane-niash.so -usr/lib/sane/libsane-niash.so.1 -usr/lib/sane/libsane-niash.so.1.0.28 -#usr/lib/sane/libsane-p5.la -usr/lib/sane/libsane-p5.so -usr/lib/sane/libsane-p5.so.1 -usr/lib/sane/libsane-p5.so.1.0.28 -#usr/lib/sane/libsane-pie.la -usr/lib/sane/libsane-pie.so -usr/lib/sane/libsane-pie.so.1 -usr/lib/sane/libsane-pie.so.1.0.28 -#usr/lib/sane/libsane-pieusb.la -usr/lib/sane/libsane-pieusb.so -usr/lib/sane/libsane-pieusb.so.1 -usr/lib/sane/libsane-pieusb.so.1.0.28 -#usr/lib/sane/libsane-pixma.la -usr/lib/sane/libsane-pixma.so -usr/lib/sane/libsane-pixma.so.1 -usr/lib/sane/libsane-pixma.so.1.0.28 -#usr/lib/sane/libsane-plustek.la -usr/lib/sane/libsane-plustek.so -usr/lib/sane/libsane-plustek.so.1 -usr/lib/sane/libsane-plustek.so.1.0.28 -#usr/lib/sane/libsane-plustek_pp.la -usr/lib/sane/libsane-plustek_pp.so -usr/lib/sane/libsane-plustek_pp.so.1 -usr/lib/sane/libsane-plustek_pp.so.1.0.28 -#usr/lib/sane/libsane-qcam.la -usr/lib/sane/libsane-qcam.so -usr/lib/sane/libsane-qcam.so.1 -usr/lib/sane/libsane-qcam.so.1.0.28 -#usr/lib/sane/libsane-ricoh.la -usr/lib/sane/libsane-ricoh.so -usr/lib/sane/libsane-ricoh.so.1 -usr/lib/sane/libsane-ricoh.so.1.0.28 -#usr/lib/sane/libsane-ricoh2.la -usr/lib/sane/libsane-ricoh2.so -usr/lib/sane/libsane-ricoh2.so.1 -usr/lib/sane/libsane-ricoh2.so.1.0.28 -#usr/lib/sane/libsane-rts8891.la -usr/lib/sane/libsane-rts8891.so -usr/lib/sane/libsane-rts8891.so.1 -usr/lib/sane/libsane-rts8891.so.1.0.28 -#usr/lib/sane/libsane-s9036.la -usr/lib/sane/libsane-s9036.so -usr/lib/sane/libsane-s9036.so.1 -usr/lib/sane/libsane-s9036.so.1.0.28 -#usr/lib/sane/libsane-sceptre.la -usr/lib/sane/libsane-sceptre.so -usr/lib/sane/libsane-sceptre.so.1 -usr/lib/sane/libsane-sceptre.so.1.0.28 -#usr/lib/sane/libsane-sharp.la -usr/lib/sane/libsane-sharp.so -usr/lib/sane/libsane-sharp.so.1 -usr/lib/sane/libsane-sharp.so.1.0.28 -#usr/lib/sane/libsane-sm3600.la -usr/lib/sane/libsane-sm3600.so -usr/lib/sane/libsane-sm3600.so.1 -usr/lib/sane/libsane-sm3600.so.1.0.28 -#usr/lib/sane/libsane-sm3840.la -usr/lib/sane/libsane-sm3840.so -usr/lib/sane/libsane-sm3840.so.1 -usr/lib/sane/libsane-sm3840.so.1.0.28 -#usr/lib/sane/libsane-snapscan.la -usr/lib/sane/libsane-snapscan.so -usr/lib/sane/libsane-snapscan.so.1 -usr/lib/sane/libsane-snapscan.so.1.0.28 -#usr/lib/sane/libsane-sp15c.la -usr/lib/sane/libsane-sp15c.so -usr/lib/sane/libsane-sp15c.so.1 -usr/lib/sane/libsane-sp15c.so.1.0.28 -#usr/lib/sane/libsane-st400.la -usr/lib/sane/libsane-st400.so -usr/lib/sane/libsane-st400.so.1 -usr/lib/sane/libsane-st400.so.1.0.28 -#usr/lib/sane/libsane-stv680.la -usr/lib/sane/libsane-stv680.so -usr/lib/sane/libsane-stv680.so.1 -usr/lib/sane/libsane-stv680.so.1.0.28 -#usr/lib/sane/libsane-tamarack.la -usr/lib/sane/libsane-tamarack.so -usr/lib/sane/libsane-tamarack.so.1 -usr/lib/sane/libsane-tamarack.so.1.0.28 -#usr/lib/sane/libsane-teco1.la -usr/lib/sane/libsane-teco1.so -usr/lib/sane/libsane-teco1.so.1 -usr/lib/sane/libsane-teco1.so.1.0.28 -#usr/lib/sane/libsane-teco2.la -usr/lib/sane/libsane-teco2.so -usr/lib/sane/libsane-teco2.so.1 -usr/lib/sane/libsane-teco2.so.1.0.28 -#usr/lib/sane/libsane-teco3.la -usr/lib/sane/libsane-teco3.so -usr/lib/sane/libsane-teco3.so.1 -usr/lib/sane/libsane-teco3.so.1.0.28 -#usr/lib/sane/libsane-test.la -usr/lib/sane/libsane-test.so -usr/lib/sane/libsane-test.so.1 -usr/lib/sane/libsane-test.so.1.0.28 -#usr/lib/sane/libsane-u12.la -usr/lib/sane/libsane-u12.so -usr/lib/sane/libsane-u12.so.1 -usr/lib/sane/libsane-u12.so.1.0.28 -#usr/lib/sane/libsane-umax.la -usr/lib/sane/libsane-umax.so -usr/lib/sane/libsane-umax.so.1 -usr/lib/sane/libsane-umax.so.1.0.28 -#usr/lib/sane/libsane-umax1220u.la -usr/lib/sane/libsane-umax1220u.so -usr/lib/sane/libsane-umax1220u.so.1 -usr/lib/sane/libsane-umax1220u.so.1.0.28 -#usr/lib/sane/libsane-umax_pp.la -usr/lib/sane/libsane-umax_pp.so -usr/lib/sane/libsane-umax_pp.so.1 -usr/lib/sane/libsane-umax_pp.so.1.0.28 -#usr/lib/sane/libsane-xerox_mfp.la -usr/lib/sane/libsane-xerox_mfp.so -usr/lib/sane/libsane-xerox_mfp.so.1 -usr/lib/sane/libsane-xerox_mfp.so.1.0.28 -usr/sbin/saned -#usr/share/doc/sane-backends -#usr/share/doc/sane-backends/AUTHORS -#usr/share/doc/sane-backends/COPYING -#usr/share/doc/sane-backends/ChangeLog -#usr/share/doc/sane-backends/LICENSE -#usr/share/doc/sane-backends/NEWS -#usr/share/doc/sane-backends/PROBLEMS -#usr/share/doc/sane-backends/PROJECTS -#usr/share/doc/sane-backends/README -#usr/share/doc/sane-backends/README.aix -#usr/share/doc/sane-backends/README.beos -#usr/share/doc/sane-backends/README.darwin -#usr/share/doc/sane-backends/README.djpeg -#usr/share/doc/sane-backends/README.freebsd -#usr/share/doc/sane-backends/README.hp-ux -#usr/share/doc/sane-backends/README.linux -#usr/share/doc/sane-backends/README.netbsd -#usr/share/doc/sane-backends/README.openbsd -#usr/share/doc/sane-backends/README.os2 -#usr/share/doc/sane-backends/README.solaris -#usr/share/doc/sane-backends/README.unixware2 -#usr/share/doc/sane-backends/README.unixware7 -#usr/share/doc/sane-backends/README.windows -#usr/share/doc/sane-backends/README.zeta -#usr/share/doc/sane-backends/backend-writing.txt -#usr/share/doc/sane-backends/canon -#usr/share/doc/sane-backends/canon/canon.changes -#usr/share/doc/sane-backends/canon/canon.install2700F.txt -#usr/share/doc/sane-backends/gt68xx -#usr/share/doc/sane-backends/gt68xx/gt68xx.CHANGES -#usr/share/doc/sane-backends/gt68xx/gt68xx.TODO -#usr/share/doc/sane-backends/leo -#usr/share/doc/sane-backends/leo/leo.txt -#usr/share/doc/sane-backends/matsushita -#usr/share/doc/sane-backends/matsushita/matsushita.txt -#usr/share/doc/sane-backends/mustek -#usr/share/doc/sane-backends/mustek/mustek.CHANGES -#usr/share/doc/sane-backends/mustek_usb -#usr/share/doc/sane-backends/mustek_usb/mustek_usb.CHANGES -#usr/share/doc/sane-backends/mustek_usb/mustek_usb.TODO -#usr/share/doc/sane-backends/mustek_usb2 -#usr/share/doc/sane-backends/mustek_usb2/mustek_usb2.CHANGES -#usr/share/doc/sane-backends/mustek_usb2/mustek_usb2.TODO -#usr/share/doc/sane-backends/niash -#usr/share/doc/sane-backends/niash/niash.TODO -#usr/share/doc/sane-backends/plustek -#usr/share/doc/sane-backends/plustek/FAQ -#usr/share/doc/sane-backends/plustek/MakeModule.sh -#usr/share/doc/sane-backends/plustek/Makefile.kernel24 -#usr/share/doc/sane-backends/plustek/Makefile.kernel26 -#usr/share/doc/sane-backends/plustek/Plustek-PARPORT-TODO.txt -#usr/share/doc/sane-backends/plustek/Plustek-PARPORT.changes -#usr/share/doc/sane-backends/plustek/Plustek-PARPORT.txt -#usr/share/doc/sane-backends/plustek/Plustek-USB-TODO.txt -#usr/share/doc/sane-backends/plustek/Plustek-USB.changes -#usr/share/doc/sane-backends/plustek/Plustek-USB.txt -#usr/share/doc/sane-backends/sane-backends-external.html -#usr/share/doc/sane-backends/sane-backends.html -#usr/share/doc/sane-backends/sane-mfgs-external.html -#usr/share/doc/sane-backends/sane-mfgs.html -#usr/share/doc/sane-backends/sceptre -#usr/share/doc/sane-backends/sceptre/s1200.txt -#usr/share/doc/sane-backends/teco -#usr/share/doc/sane-backends/teco/teco1.txt -#usr/share/doc/sane-backends/teco/teco2.txt -#usr/share/doc/sane-backends/teco/teco3.txt -#usr/share/doc/sane-backends/u12 -#usr/share/doc/sane-backends/u12/U12.changes -#usr/share/doc/sane-backends/u12/U12.todo -#usr/share/doc/sane-backends/umax -#usr/share/doc/sane-backends/umax/negative-types.txt -#usr/share/doc/sane-backends/umax/sane-logo.jpg -#usr/share/doc/sane-backends/umax/sane-umax-advanced-options-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-advanced.jpg -#usr/share/doc/sane-backends/umax/sane-umax-astra-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-config-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-histogram.jpg -#usr/share/doc/sane-backends/umax/sane-umax-mirage-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-not-listed-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-others-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-parport-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-powerlook-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-scanner-clones-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-speed-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-standard-options-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-standard.jpg -#usr/share/doc/sane-backends/umax/sane-umax-text.jpg -#usr/share/doc/sane-backends/umax/sane-umax-text2.jpg -#usr/share/doc/sane-backends/umax/sane-umax-text4.jpg -#usr/share/doc/sane-backends/umax/sane-umax-uc-doc.html -#usr/share/doc/sane-backends/umax/sane-umax-vista-doc.html -#usr/share/doc/sane-backends/umax/sane-umax.jpg -#usr/share/doc/sane-backends/umax/umax.BUGS -#usr/share/doc/sane-backends/umax/umax.CHANGES -#usr/share/doc/sane-backends/umax/umax.FAQ -#usr/share/doc/sane-backends/umax/umax.TODO -#usr/share/locale/bg/LC_MESSAGES/sane-backends.mo -#usr/share/locale/ca/LC_MESSAGES/sane-backends.mo -#usr/share/locale/ca@valencia/LC_MESSAGES/sane-backends.mo -#usr/share/locale/cs/LC_MESSAGES/sane-backends.mo -#usr/share/locale/da/LC_MESSAGES/sane-backends.mo -#usr/share/locale/de/LC_MESSAGES/sane-backends.mo -#usr/share/locale/en@boldquot/LC_MESSAGES/sane-backends.mo -#usr/share/locale/en@quot/LC_MESSAGES/sane-backends.mo -#usr/share/locale/en_GB/LC_MESSAGES/sane-backends.mo -#usr/share/locale/eo/LC_MESSAGES/sane-backends.mo -#usr/share/locale/es/LC_MESSAGES/sane-backends.mo -#usr/share/locale/fi/LC_MESSAGES/sane-backends.mo -#usr/share/locale/fr/LC_MESSAGES/sane-backends.mo -#usr/share/locale/gl/LC_MESSAGES/sane-backends.mo -#usr/share/locale/he/LC_MESSAGES/sane-backends.mo -#usr/share/locale/hu/LC_MESSAGES/sane-backends.mo -#usr/share/locale/it/LC_MESSAGES/sane-backends.mo -#usr/share/locale/ja/LC_MESSAGES/sane-backends.mo -#usr/share/locale/nb/LC_MESSAGES/sane-backends.mo -#usr/share/locale/nl/LC_MESSAGES/sane-backends.mo -#usr/share/locale/pl/LC_MESSAGES/sane-backends.mo -#usr/share/locale/pt/LC_MESSAGES/sane-backends.mo -#usr/share/locale/ru/LC_MESSAGES/sane-backends.mo -#usr/share/locale/sv/LC_MESSAGES/sane-backends.mo -#usr/share/locale/uk/LC_MESSAGES/sane-backends.mo -#usr/share/man/man1/gamma4scanimage.1 -#usr/share/man/man1/sane-config.1 -#usr/share/man/man1/sane-find-scanner.1 -#usr/share/man/man1/scanimage.1 -#usr/share/man/man5/sane-abaton.5 -#usr/share/man/man5/sane-agfafocus.5 -#usr/share/man/man5/sane-apple.5 -#usr/share/man/man5/sane-artec.5 -#usr/share/man/man5/sane-artec_eplus48u.5 -#usr/share/man/man5/sane-as6e.5 -#usr/share/man/man5/sane-avision.5 -#usr/share/man/man5/sane-bh.5 -#usr/share/man/man5/sane-canon.5 -#usr/share/man/man5/sane-canon630u.5 -#usr/share/man/man5/sane-canon_dr.5 -#usr/share/man/man5/sane-cardscan.5 -#usr/share/man/man5/sane-coolscan.5 -#usr/share/man/man5/sane-coolscan2.5 -#usr/share/man/man5/sane-coolscan3.5 -#usr/share/man/man5/sane-dc210.5 -#usr/share/man/man5/sane-dc240.5 -#usr/share/man/man5/sane-dc25.5 -#usr/share/man/man5/sane-dll.5 -#usr/share/man/man5/sane-dmc.5 -#usr/share/man/man5/sane-epjitsu.5 -#usr/share/man/man5/sane-epson.5 -#usr/share/man/man5/sane-epson2.5 -#usr/share/man/man5/sane-epsonds.5 -#usr/share/man/man5/sane-fujitsu.5 -#usr/share/man/man5/sane-genesys.5 -#usr/share/man/man5/sane-gt68xx.5 -#usr/share/man/man5/sane-hp.5 -#usr/share/man/man5/sane-hp3500.5 -#usr/share/man/man5/sane-hp3900.5 -#usr/share/man/man5/sane-hp4200.5 -#usr/share/man/man5/sane-hp5400.5 -#usr/share/man/man5/sane-hp5590.5 -#usr/share/man/man5/sane-hpljm1005.5 -#usr/share/man/man5/sane-hs2p.5 -#usr/share/man/man5/sane-ibm.5 -#usr/share/man/man5/sane-kodak.5 -#usr/share/man/man5/sane-kodakaio.5 -#usr/share/man/man5/sane-kvs1025.5 -#usr/share/man/man5/sane-kvs20xx.5 -#usr/share/man/man5/sane-kvs40xx.5 -#usr/share/man/man5/sane-leo.5 -#usr/share/man/man5/sane-lexmark.5 -#usr/share/man/man5/sane-ma1509.5 -#usr/share/man/man5/sane-magicolor.5 -#usr/share/man/man5/sane-matsushita.5 -#usr/share/man/man5/sane-microtek.5 -#usr/share/man/man5/sane-microtek2.5 -#usr/share/man/man5/sane-mustek.5 -#usr/share/man/man5/sane-mustek_pp.5 -#usr/share/man/man5/sane-mustek_usb.5 -#usr/share/man/man5/sane-mustek_usb2.5 -#usr/share/man/man5/sane-nec.5 -#usr/share/man/man5/sane-net.5 -#usr/share/man/man5/sane-niash.5 -#usr/share/man/man5/sane-p5.5 -#usr/share/man/man5/sane-pie.5 -#usr/share/man/man5/sane-pieusb.5 -#usr/share/man/man5/sane-pixma.5 -#usr/share/man/man5/sane-plustek.5 -#usr/share/man/man5/sane-plustek_pp.5 -#usr/share/man/man5/sane-qcam.5 -#usr/share/man/man5/sane-ricoh.5 -#usr/share/man/man5/sane-rts8891.5 -#usr/share/man/man5/sane-s9036.5 -#usr/share/man/man5/sane-sceptre.5 -#usr/share/man/man5/sane-scsi.5 -#usr/share/man/man5/sane-sharp.5 -#usr/share/man/man5/sane-sm3600.5 -#usr/share/man/man5/sane-sm3840.5 -#usr/share/man/man5/sane-snapscan.5 -#usr/share/man/man5/sane-sp15c.5 -#usr/share/man/man5/sane-st400.5 -#usr/share/man/man5/sane-stv680.5 -#usr/share/man/man5/sane-tamarack.5 -#usr/share/man/man5/sane-teco1.5 -#usr/share/man/man5/sane-teco2.5 -#usr/share/man/man5/sane-teco3.5 -#usr/share/man/man5/sane-test.5 -#usr/share/man/man5/sane-u12.5 -#usr/share/man/man5/sane-umax.5 -#usr/share/man/man5/sane-umax1220u.5 -#usr/share/man/man5/sane-umax_pp.5 -#usr/share/man/man5/sane-usb.5 -#usr/share/man/man5/sane-xerox_mfp.5 -#usr/share/man/man7/sane.7 -#usr/share/man/man8/saned.8 -#usr/share/sane -usr/share/sane/artec_eplus48u -usr/share/sane/epjitsu -usr/share/sane/gt68xx -usr/share/sane/snapscan -#usr/var -#usr/var/lock -usr/var/lock/sane -var/ipfire/backup/addons/includes/sane diff --git a/config/rootfiles/packages/sendEmail b/config/rootfiles/packages/sendEmail deleted file mode 100644 index ee206e288..000000000 --- a/config/rootfiles/packages/sendEmail +++ /dev/null @@ -1 +0,0 @@ -usr/local/bin/sendEmail diff --git a/config/sane/saned.conf b/config/sane/saned.conf deleted file mode 100644 index 7e25244eb..000000000 --- a/config/sane/saned.conf +++ /dev/null @@ -1,24 +0,0 @@ -# -# saned.conf -# -# The contents of the saned.conf file is a list of host names, IP -# addresses or IP subnets (CIDR notation) that are permitted to use local -# SANE devices. IPv6 addresses must be enclosed in brackets, and should -# always be specified in their compressed form. -# -# The hostname matching is not case-sensitive. -# -#scan-client.somedomain.firm -#192.168.0.1 -#192.168.0.1/29 -#[2001:7a8:185e::42:12] -#[2001:7a8:185e::42:12]/64 -# -# NOTE: /etc/inetd.conf (or /etc/xinetd.conf) and -# /etc/services must also be properly configured to start -# the saned daemon as documented in saned(8), services(4) -# and inetd.conf(4) (or xinetd.conf(5)). -# -# a singe "+" allow all hosts to connect. -+ - diff --git a/config/upnp/gatedesc.xml b/config/upnp/gatedesc.xml deleted file mode 100755 index a0608bb53..000000000 --- a/config/upnp/gatedesc.xml +++ /dev/null @@ -1,81 +0,0 @@ -<?xml version="1.0"?> -<root xmlns="urn:schemas-upnp-org:device-1-0"> - <specVersion> - <major>1</major> - <minor>0</minor> - </specVersion> - <device> - <deviceType>urn:schemas-upnp-org:device:InternetGatewayDevice:1</deviceType> - <friendlyName>IPFire UPnP Device</friendlyName> - <manufacturer>IPFire Project</manufacturer> - <manufacturerURL>http://www.ipfire.org</manufacturerURL> - <modelName>IPFire 2.3</modelName> - <UDN>uuid:75802409-bccb-40e7-8e6c-fa095ecce13e</UDN> - <iconList> - <icon> - <mimetype>image/gif</mimetype> - <width>118</width> - <height>119</height> - <depth>8</depth> - <url>/ligd.gif</url> - </icon> - </iconList> - <serviceList> - <service> - <serviceType>urn:schemas-dummy-com:service:Dummy:1</serviceType> - <serviceId>urn:dummy-com:serviceId:dummy1</serviceId> - <controlURL>/dummy</controlURL> - <eventSubURL>/dummy</eventSubURL> - <SCPDURL>/dummy.xml</SCPDURL> - </service> - </serviceList> - <deviceList> - <device> - <deviceType>urn:schemas-upnp-org:device:WANDevice:1</deviceType> - <friendlyName>WANDevice</friendlyName> - <manufacturer>IPFire Project</manufacturer> - <manufacturerURL>http://www.ipfire.org</manufacturerURL> - <modelDescription>WAN Device on Linux IGD</modelDescription> - <modelName>IPFire</modelName> - <modelNumber>2.3</modelNumber> - <modelURL>http://linux-igd.sourceforge.net</modelURL> - <serialNumber>2.3</serialNumber> - <UDN>uuid:75802409-bccb-40e7-8e6c-fa095ecce13e</UDN> - <UPC>Linux IGD</UPC> - <serviceList> - <service> - <serviceType>urn:schemas-upnp-org:service:WANCommonInterfaceConfig:1</serviceType> - <serviceId>urn:upnp-org:serviceId:WANCommonIFC1</serviceId> - <controlURL>/upnp/control/WANCommonIFC1</controlURL> - <eventSubURL>/upnp/control/WANCommonIFC1</eventSubURL> - <SCPDURL>/gateicfgSCPD.xml</SCPDURL> - </service> - </serviceList> - <deviceList> - <device> - <deviceType>urn:schemas-upnp-org:device:WANConnectionDevice:1</deviceType> - <friendlyName>Internet Connection</friendlyName> - <manufacturer>IPFire Project</manufacturer> - <manufacturerURL>http://www.ipfire.org</manufacturerURL> - <modelDescription>Internet connection on Linux IPFire Firewall</modelDescription> - <modelName>IPFire</modelName> - <modelNumber>2.3</modelNumber> - <modelURL>http://www.ipfire.org</modelURL> - <serialNumber>2.3</serialNumber> - <UDN>uuid:75802409-bccb-40e7-8e6c-fa095ecce13e</UDN> - <UPC>Linux IGD</UPC> - <serviceList> - <service> - <serviceType>urn:schemas-upnp-org:service:WANIPConnection:1</serviceType> - <serviceId>urn:upnp-org:serviceId:WANIPConn1</serviceId> - <controlURL>/upnp/control/WANIPConn1</controlURL> - <eventSubURL>/upnp/control/WANIPConn1</eventSubURL> - <SCPDURL>/gateconnSCPD.xml</SCPDURL> - </service> - </serviceList> - </device> - </deviceList> - </device> - </deviceList> - </device> -</root> diff --git a/doc/language_issues.de b/doc/language_issues.de index 8500501fd..a091f2303 100644 --- a/doc/language_issues.de +++ b/doc/language_issues.de @@ -112,7 +112,6 @@ WARNING: translation string unused: alt information WARNING: translation string unused: alt ovpn WARNING: translation string unused: alt vpn WARNING: translation string unused: and -WARNING: translation string unused: application layer gateways WARNING: translation string unused: apply WARNING: translation string unused: archive not exist WARNING: translation string unused: attemps @@ -855,6 +854,7 @@ WARNING: translation string unused: zoneconf val vlan tag range error WARNING: translation string unused: zoneconf val zoneslave amount error WARNING: untranslated string: desired = Desired WARNING: untranslated string: disable = Disable +WARNING: untranslated string: download apple profile = Download Apple Configuration Profile WARNING: untranslated string: enable = Enable WARNING: untranslated string: error the to date has to be later than the from date = The to date has to be later than the from date! WARNING: untranslated string: fwhost cust locationgrp = unknown string @@ -888,6 +888,9 @@ WARNING: untranslated string: guardian logtarget_file = unknown string WARNING: untranslated string: guardian logtarget_syslog = unknown string WARNING: untranslated string: guardian no entries = unknown string WARNING: untranslated string: guardian service = unknown string +WARNING: untranslated string: ipsec dns server address is invalid = Invalid DNS server IP address(es) +WARNING: untranslated string: ipsec invalid ip address or fqdn for rw endpoint = Invalid IP address or FQDN for Host-to-Net Endpoint +WARNING: untranslated string: ipsec roadwarrior endpoint = Host-to-Net Endpoint WARNING: untranslated string: netbios nameserver daemon = NetBIOS Nameserver Daemon WARNING: untranslated string: no entries = No entries at the moment. WARNING: untranslated string: optional = Optional diff --git a/doc/language_issues.en b/doc/language_issues.en index 620f81738..63ac77fce 100644 --- a/doc/language_issues.en +++ b/doc/language_issues.en @@ -332,6 +332,7 @@ WARNING: untranslated string: august = August WARNING: untranslated string: authentication = Authentication: WARNING: untranslated string: automatic = Automatic WARNING: untranslated string: autonomous system = Autonomous System +WARNING: untranslated string: available = available WARNING: untranslated string: available updates = Available updates WARNING: untranslated string: average = Average WARNING: untranslated string: back = Back @@ -645,6 +646,7 @@ WARNING: untranslated string: downlink = Downlink WARNING: untranslated string: downlink speed = Downlink speed (kbit/sec) WARNING: untranslated string: downlink std class = downlink standard class WARNING: untranslated string: download = download +WARNING: untranslated string: download apple profile = Download Apple Configuration Profile WARNING: untranslated string: download ca certificate = Download CA certificate WARNING: untranslated string: download certificate = Download file WARNING: untranslated string: download host certificate = Download host certificate @@ -724,7 +726,6 @@ WARNING: untranslated string: error the to date has to be later than the from da WARNING: untranslated string: esp keylife should be between 1 and 24 hours = ESP keylife should be between 1 and 24 hours. WARNING: untranslated string: every = Every WARNING: untranslated string: exclude logfiles = Exclude logfiles -WARNING: untranslated string: excluding buffers and cache = -/+ buffers/cache WARNING: untranslated string: expires = Expires WARNING: untranslated string: export = Export WARNING: untranslated string: external aliases configuration = External aliases configuration @@ -1140,12 +1141,15 @@ WARNING: untranslated string: ipfires hostname = IPFire's Hostname WARNING: untranslated string: ipinfo = IP info WARNING: untranslated string: ipsec = IPsec WARNING: untranslated string: ipsec connection = IPsec Connection +WARNING: untranslated string: ipsec dns server address is invalid = Invalid DNS server IP address(es) WARNING: untranslated string: ipsec interface mode gre = GRE WARNING: untranslated string: ipsec interface mode none = - None (Default) - WARNING: untranslated string: ipsec interface mode vti = VTI +WARNING: untranslated string: ipsec invalid ip address or fqdn for rw endpoint = Invalid IP address or FQDN for Host-to-Net Endpoint WARNING: untranslated string: ipsec mode transport = Transport WARNING: untranslated string: ipsec mode tunnel = Tunnel WARNING: untranslated string: ipsec network = IPsec network +WARNING: untranslated string: ipsec roadwarrior endpoint = Host-to-Net Endpoint WARNING: untranslated string: ipsec routing table entries = IPsec Routing Table Entries WARNING: untranslated string: ipsec settings = IPsec Settings WARNING: untranslated string: iptmangles = IPTable Mangles diff --git a/doc/language_issues.es b/doc/language_issues.es index ee15abb84..626eec21a 100644 --- a/doc/language_issues.es +++ b/doc/language_issues.es @@ -822,6 +822,7 @@ WARNING: untranslated string: asn lookup failed = AS lookup failed WARNING: untranslated string: atm device = Device: WARNING: untranslated string: attention = ATTENTION WARNING: untranslated string: autonomous system = Autonomous System +WARNING: untranslated string: available = available WARNING: untranslated string: bit = bit WARNING: untranslated string: block = Block WARNING: untranslated string: broken = Broken @@ -923,6 +924,7 @@ WARNING: untranslated string: dnssec disabled warning = WARNING: DNSSEC has been WARNING: untranslated string: dnssec not supported = DNSSEC Not supported WARNING: untranslated string: dnssec validating = DNSSEC Validating WARNING: untranslated string: downlink = Downlink +WARNING: untranslated string: download apple profile = Download Apple Configuration Profile WARNING: untranslated string: download tls-auth key = Download tls-auth key WARNING: untranslated string: dpd delay = Delay WARNING: untranslated string: dpd timeout = Timeout @@ -1223,12 +1225,15 @@ WARNING: untranslated string: ip basic info = Basic IP information WARNING: untranslated string: ip info for = IP information for WARNING: untranslated string: ipsec = IPsec WARNING: untranslated string: ipsec connection = IPsec Connection +WARNING: untranslated string: ipsec dns server address is invalid = Invalid DNS server IP address(es) WARNING: untranslated string: ipsec interface mode gre = GRE WARNING: untranslated string: ipsec interface mode none = - None (Default) - WARNING: untranslated string: ipsec interface mode vti = VTI +WARNING: untranslated string: ipsec invalid ip address or fqdn for rw endpoint = Invalid IP address or FQDN for Host-to-Net Endpoint WARNING: untranslated string: ipsec mode transport = Transport WARNING: untranslated string: ipsec mode tunnel = Tunnel WARNING: untranslated string: ipsec network = IPsec network +WARNING: untranslated string: ipsec roadwarrior endpoint = Host-to-Net Endpoint WARNING: untranslated string: ipsec routing table entries = IPsec Routing Table Entries WARNING: untranslated string: ipsec settings = IPsec Settings WARNING: untranslated string: itlb multihit = iTLB MultiHit diff --git a/doc/language_issues.fr b/doc/language_issues.fr index e675c6f0c..95dd8fd3c 100644 --- a/doc/language_issues.fr +++ b/doc/language_issues.fr @@ -117,7 +117,6 @@ WARNING: translation string unused: alt information WARNING: translation string unused: alt ovpn WARNING: translation string unused: alt vpn WARNING: translation string unused: and -WARNING: translation string unused: application layer gateways WARNING: translation string unused: apply WARNING: translation string unused: archive not exist WARNING: translation string unused: attemps @@ -892,6 +891,8 @@ WARNING: translation string unused: zoneconf val stp zone mode error WARNING: translation string unused: zoneconf val vlan amount assignment error WARNING: translation string unused: zoneconf val vlan tag assignment error WARNING: translation string unused: zoneconf val zoneslave amount error +WARNING: untranslated string: available = available +WARNING: untranslated string: download apple profile = Download Apple Configuration Profile WARNING: untranslated string: fwhost cust locationgrp = unknown string WARNING: untranslated string: fwhost err hostip = unknown string WARNING: untranslated string: guardian block a host = unknown string @@ -923,6 +924,9 @@ WARNING: untranslated string: guardian logtarget_file = unknown string WARNING: untranslated string: guardian logtarget_syslog = unknown string WARNING: untranslated string: guardian no entries = unknown string WARNING: untranslated string: guardian service = unknown string +WARNING: untranslated string: ipsec dns server address is invalid = Invalid DNS server IP address(es) +WARNING: untranslated string: ipsec invalid ip address or fqdn for rw endpoint = Invalid IP address or FQDN for Host-to-Net Endpoint +WARNING: untranslated string: ipsec roadwarrior endpoint = Host-to-Net Endpoint WARNING: untranslated string: pakfire ago = ago. WARNING: untranslated string: route config changed = unknown string WARNING: untranslated string: routing config added = unknown string diff --git a/doc/language_issues.it b/doc/language_issues.it index 50c1dcd3f..9c0b62c15 100644 --- a/doc/language_issues.it +++ b/doc/language_issues.it @@ -908,6 +908,7 @@ WARNING: untranslated string: advproxy wpad title = Web Proxy Auto-Discovery Pro WARNING: untranslated string: advproxy wpad view pac = Open PAC File WARNING: untranslated string: asn lookup failed = AS lookup failed WARNING: untranslated string: autonomous system = Autonomous System +WARNING: untranslated string: available = available WARNING: untranslated string: block = Block WARNING: untranslated string: broken = Broken WARNING: untranslated string: bytes = unknown string @@ -946,6 +947,7 @@ WARNING: untranslated string: dns use protocol for dns queries = Protocol for DN WARNING: untranslated string: dnsforward dnssec disabled = DNSSEC Validation is disabled WARNING: untranslated string: dnsforward forward_servers = Nameservers WARNING: untranslated string: dnssec disabled warning = WARNING: DNSSEC has been disabled +WARNING: untranslated string: download apple profile = Download Apple Configuration Profile WARNING: untranslated string: duration = Duration WARNING: untranslated string: eight hours = 8 Hours WARNING: untranslated string: email config = Configuration @@ -1062,11 +1064,14 @@ WARNING: untranslated string: invalid logserver protocol = Invalid syslogd serve WARNING: untranslated string: ip basic info = Basic IP information WARNING: untranslated string: ip info for = IP information for WARNING: untranslated string: ipsec connection = IPsec Connection +WARNING: untranslated string: ipsec dns server address is invalid = Invalid DNS server IP address(es) WARNING: untranslated string: ipsec interface mode gre = GRE WARNING: untranslated string: ipsec interface mode none = - None (Default) - WARNING: untranslated string: ipsec interface mode vti = VTI +WARNING: untranslated string: ipsec invalid ip address or fqdn for rw endpoint = Invalid IP address or FQDN for Host-to-Net Endpoint WARNING: untranslated string: ipsec mode transport = Transport WARNING: untranslated string: ipsec mode tunnel = Tunnel +WARNING: untranslated string: ipsec roadwarrior endpoint = Host-to-Net Endpoint WARNING: untranslated string: ipsec routing table entries = IPsec Routing Table Entries WARNING: untranslated string: ipsec settings = IPsec Settings WARNING: untranslated string: itlb multihit = iTLB MultiHit diff --git a/doc/language_issues.nl b/doc/language_issues.nl index 6dbaea863..5db088b66 100644 --- a/doc/language_issues.nl +++ b/doc/language_issues.nl @@ -903,6 +903,7 @@ WARNING: untranslated string: advproxy wpad view pac = Open PAC File WARNING: untranslated string: asn lookup failed = AS lookup failed WARNING: untranslated string: atm device = Device: WARNING: untranslated string: autonomous system = Autonomous System +WARNING: untranslated string: available = available WARNING: untranslated string: block = Block WARNING: untranslated string: broken = Broken WARNING: untranslated string: bytes = unknown string @@ -949,6 +950,7 @@ WARNING: untranslated string: dnssec aware = DNSSEC Aware WARNING: untranslated string: dnssec disabled warning = WARNING: DNSSEC has been disabled WARNING: untranslated string: dnssec not supported = DNSSEC Not supported WARNING: untranslated string: dnssec validating = DNSSEC Validating +WARNING: untranslated string: download apple profile = Download Apple Configuration Profile WARNING: untranslated string: download tls-auth key = Download tls-auth key WARNING: untranslated string: drop outgoing = Log dropped outgoing packets WARNING: untranslated string: duration = Duration @@ -1071,11 +1073,14 @@ WARNING: untranslated string: invalid logserver protocol = Invalid syslogd serve WARNING: untranslated string: ip basic info = Basic IP information WARNING: untranslated string: ip info for = IP information for WARNING: untranslated string: ipsec connection = IPsec Connection +WARNING: untranslated string: ipsec dns server address is invalid = Invalid DNS server IP address(es) WARNING: untranslated string: ipsec interface mode gre = GRE WARNING: untranslated string: ipsec interface mode none = - None (Default) - WARNING: untranslated string: ipsec interface mode vti = VTI +WARNING: untranslated string: ipsec invalid ip address or fqdn for rw endpoint = Invalid IP address or FQDN for Host-to-Net Endpoint WARNING: untranslated string: ipsec mode transport = Transport WARNING: untranslated string: ipsec mode tunnel = Tunnel +WARNING: untranslated string: ipsec roadwarrior endpoint = Host-to-Net Endpoint WARNING: untranslated string: ipsec routing table entries = IPsec Routing Table Entries WARNING: untranslated string: ipsec settings = IPsec Settings WARNING: untranslated string: itlb multihit = iTLB MultiHit diff --git a/doc/language_issues.pl b/doc/language_issues.pl index e78b969eb..95e68faaf 100644 --- a/doc/language_issues.pl +++ b/doc/language_issues.pl @@ -837,6 +837,7 @@ WARNING: untranslated string: asn lookup failed = AS lookup failed WARNING: untranslated string: atm device = Device: WARNING: untranslated string: attention = ATTENTION WARNING: untranslated string: autonomous system = Autonomous System +WARNING: untranslated string: available = available WARNING: untranslated string: bit = bit WARNING: untranslated string: block = Block WARNING: untranslated string: broken = Broken @@ -938,6 +939,7 @@ WARNING: untranslated string: dnssec disabled warning = WARNING: DNSSEC has been WARNING: untranslated string: dnssec not supported = DNSSEC Not supported WARNING: untranslated string: dnssec validating = DNSSEC Validating WARNING: untranslated string: downlink = Downlink +WARNING: untranslated string: download apple profile = Download Apple Configuration Profile WARNING: untranslated string: download tls-auth key = Download tls-auth key WARNING: untranslated string: dpd delay = Delay WARNING: untranslated string: dpd timeout = Timeout @@ -1228,12 +1230,15 @@ WARNING: untranslated string: ip basic info = Basic IP information WARNING: untranslated string: ip info for = IP information for WARNING: untranslated string: ipsec = IPsec WARNING: untranslated string: ipsec connection = IPsec Connection +WARNING: untranslated string: ipsec dns server address is invalid = Invalid DNS server IP address(es) WARNING: untranslated string: ipsec interface mode gre = GRE WARNING: untranslated string: ipsec interface mode none = - None (Default) - WARNING: untranslated string: ipsec interface mode vti = VTI +WARNING: untranslated string: ipsec invalid ip address or fqdn for rw endpoint = Invalid IP address or FQDN for Host-to-Net Endpoint WARNING: untranslated string: ipsec mode transport = Transport WARNING: untranslated string: ipsec mode tunnel = Tunnel WARNING: untranslated string: ipsec network = IPsec network +WARNING: untranslated string: ipsec roadwarrior endpoint = Host-to-Net Endpoint WARNING: untranslated string: ipsec routing table entries = IPsec Routing Table Entries WARNING: untranslated string: ipsec settings = IPsec Settings WARNING: untranslated string: itlb multihit = iTLB MultiHit diff --git a/doc/language_issues.ru b/doc/language_issues.ru index d7f1083de..cfaeed5b5 100644 --- a/doc/language_issues.ru +++ b/doc/language_issues.ru @@ -833,6 +833,7 @@ WARNING: untranslated string: asn lookup failed = AS lookup failed WARNING: untranslated string: atm device = Device: WARNING: untranslated string: attention = ATTENTION WARNING: untranslated string: autonomous system = Autonomous System +WARNING: untranslated string: available = available WARNING: untranslated string: bit = bit WARNING: untranslated string: block = Block WARNING: untranslated string: broken = Broken @@ -935,6 +936,7 @@ WARNING: untranslated string: dnssec disabled warning = WARNING: DNSSEC has been WARNING: untranslated string: dnssec not supported = DNSSEC Not supported WARNING: untranslated string: dnssec validating = DNSSEC Validating WARNING: untranslated string: downlink = Downlink +WARNING: untranslated string: download apple profile = Download Apple Configuration Profile WARNING: untranslated string: download tls-auth key = Download tls-auth key WARNING: untranslated string: dpd delay = Delay WARNING: untranslated string: dpd timeout = Timeout @@ -1226,12 +1228,15 @@ WARNING: untranslated string: ip basic info = Basic IP information WARNING: untranslated string: ip info for = IP information for WARNING: untranslated string: ipsec = IPsec WARNING: untranslated string: ipsec connection = IPsec Connection +WARNING: untranslated string: ipsec dns server address is invalid = Invalid DNS server IP address(es) WARNING: untranslated string: ipsec interface mode gre = GRE WARNING: untranslated string: ipsec interface mode none = - None (Default) - WARNING: untranslated string: ipsec interface mode vti = VTI +WARNING: untranslated string: ipsec invalid ip address or fqdn for rw endpoint = Invalid IP address or FQDN for Host-to-Net Endpoint WARNING: untranslated string: ipsec mode transport = Transport WARNING: untranslated string: ipsec mode tunnel = Tunnel WARNING: untranslated string: ipsec network = IPsec network +WARNING: untranslated string: ipsec roadwarrior endpoint = Host-to-Net Endpoint WARNING: untranslated string: ipsec routing table entries = IPsec Routing Table Entries WARNING: untranslated string: ipsec settings = IPsec Settings WARNING: untranslated string: itlb multihit = iTLB MultiHit diff --git a/doc/language_issues.tr b/doc/language_issues.tr index 14a95d847..e89ce0601 100644 --- a/doc/language_issues.tr +++ b/doc/language_issues.tr @@ -114,7 +114,6 @@ WARNING: translation string unused: alt ovpn WARNING: translation string unused: alt vpn WARNING: translation string unused: and WARNING: translation string unused: ansi t1.483 -WARNING: translation string unused: application layer gateways WARNING: translation string unused: apply WARNING: translation string unused: archive not exist WARNING: translation string unused: attemps @@ -896,6 +895,7 @@ WARNING: untranslated string: advproxy wpad title = Web Proxy Auto-Discovery Pro WARNING: untranslated string: advproxy wpad view pac = Open PAC File WARNING: untranslated string: asn lookup failed = AS lookup failed WARNING: untranslated string: autonomous system = Autonomous System +WARNING: untranslated string: available = available WARNING: untranslated string: broken = Broken WARNING: untranslated string: bytes = unknown string WARNING: untranslated string: cpu frequency = CPU frequency @@ -925,6 +925,7 @@ WARNING: untranslated string: dns use isp assigned nameservers = Use ISP-assigne WARNING: untranslated string: dns use protocol for dns queries = Protocol for DNS queries WARNING: untranslated string: dnsforward dnssec disabled = DNSSEC Validation is disabled WARNING: untranslated string: dnsforward forward_servers = Nameservers +WARNING: untranslated string: download apple profile = Download Apple Configuration Profile WARNING: untranslated string: duration = Duration WARNING: untranslated string: email tls explicit = explicit (STARTTLS) WARNING: untranslated string: email tls implicit = implicit (TLS) @@ -998,11 +999,14 @@ WARNING: untranslated string: invalid ip or hostname = Invalid IP Address or Hos WARNING: untranslated string: ip basic info = Basic IP information WARNING: untranslated string: ip info for = IP information for WARNING: untranslated string: ipsec connection = IPsec Connection +WARNING: untranslated string: ipsec dns server address is invalid = Invalid DNS server IP address(es) WARNING: untranslated string: ipsec interface mode gre = GRE WARNING: untranslated string: ipsec interface mode none = - None (Default) - WARNING: untranslated string: ipsec interface mode vti = VTI +WARNING: untranslated string: ipsec invalid ip address or fqdn for rw endpoint = Invalid IP address or FQDN for Host-to-Net Endpoint WARNING: untranslated string: ipsec mode transport = Transport WARNING: untranslated string: ipsec mode tunnel = Tunnel +WARNING: untranslated string: ipsec roadwarrior endpoint = Host-to-Net Endpoint WARNING: untranslated string: ipsec routing table entries = IPsec Routing Table Entries WARNING: untranslated string: ipsec settings = IPsec Settings WARNING: untranslated string: itlb multihit = iTLB MultiHit diff --git a/doc/language_missings b/doc/language_missings index a390d1b00..9cfa3d1c9 100644 --- a/doc/language_missings +++ b/doc/language_missings @@ -34,11 +34,15 @@ < disable < dns could not add server < done +< download apple profile < enable < error the to date has to be later than the from date < g.dtm < g.lite < insert removable device +< ipsec dns server address is invalid +< ipsec invalid ip address or fqdn for rw endpoint +< ipsec roadwarrior endpoint < netbios nameserver daemon < no entries < notes @@ -98,12 +102,12 @@ < age shour < age sminute < age ssecond -< application layer gateways < asn lookup failed < Async logging enabled < atm device < attention < autonomous system +< available < bit < block < broken @@ -218,6 +222,7 @@ < dns use isp assigned nameservers < dns use protocol for dns queries < downlink +< download apple profile < download dh parameter < download tls-auth key < dpd delay @@ -536,13 +541,16 @@ < ip info for < ipsec < ipsec connection +< ipsec dns server address is invalid < ipsec interface mode gre < ipsec interface mode none < ipsec interface mode vti +< ipsec invalid ip address or fqdn for rw endpoint < ipsec mode transport < ipsec mode tunnel < ipsec network < ipsec no connections +< ipsec roadwarrior endpoint < ipsec routing table entries < ipsec settings < itlb multihit @@ -918,10 +926,15 @@ # Checking cgi-bin translations for language: fr # ############################################################################ < ansi t1.483 +< available < bewan adsl pci st < bewan adsl usb +< download apple profile < g.dtm < g.lite +< ipsec dns server address is invalid +< ipsec invalid ip address or fqdn for rw endpoint +< ipsec roadwarrior endpoint < upload fcdsl.o < zoneconf val vlan tag range error ############################################################################ @@ -944,9 +957,9 @@ < advproxy wpad notice < advproxy wpad title < advproxy wpad view pac -< application layer gateways < asn lookup failed < autonomous system +< available < block < broken < Captive @@ -1042,6 +1055,7 @@ < dns tls hostname < dns use isp assigned nameservers < dns use protocol for dns queries +< download apple profile < duration < eight hours < email config @@ -1132,11 +1146,14 @@ < ip basic info < ip info for < ipsec connection +< ipsec dns server address is invalid < ipsec interface mode gre < ipsec interface mode none < ipsec interface mode vti +< ipsec invalid ip address or fqdn for rw endpoint < ipsec mode transport < ipsec mode tunnel +< ipsec roadwarrior endpoint < ipsec routing table entries < ipsec settings < itlb multihit @@ -1336,10 +1353,10 @@ < advproxy wpad notice < advproxy wpad title < advproxy wpad view pac -< application layer gateways < asn lookup failed < atm device < autonomous system +< available < block < broken < capabilities @@ -1445,6 +1462,7 @@ < dns tls hostname < dns use isp assigned nameservers < dns use protocol for dns queries +< download apple profile < download dh parameter < download tls-auth key < drop outgoing @@ -1542,11 +1560,14 @@ < ip basic info < ip info for < ipsec connection +< ipsec dns server address is invalid < ipsec interface mode gre < ipsec interface mode none < ipsec interface mode vti +< ipsec invalid ip address or fqdn for rw endpoint < ipsec mode transport < ipsec mode tunnel +< ipsec roadwarrior endpoint < ipsec routing table entries < ipsec settings < itlb multihit @@ -1792,11 +1813,11 @@ < age shour < age sminute < age ssecond -< application layer gateways < asn lookup failed < atm device < attention < autonomous system +< available < bit < block < broken @@ -1965,6 +1986,7 @@ < dns use isp assigned nameservers < dns use protocol for dns queries < downlink +< download apple profile < download dh parameter < download tls-auth key < dpd delay @@ -2275,13 +2297,16 @@ < ip info for < ipsec < ipsec connection +< ipsec dns server address is invalid < ipsec interface mode gre < ipsec interface mode none < ipsec interface mode vti +< ipsec invalid ip address or fqdn for rw endpoint < ipsec mode transport < ipsec mode tunnel < ipsec network < ipsec no connections +< ipsec roadwarrior endpoint < ipsec routing table entries < ipsec settings < itlb multihit @@ -2680,11 +2705,11 @@ < age shour < age sminute < age ssecond -< application layer gateways < asn lookup failed < atm device < attention < autonomous system +< available < bit < block < broken @@ -2855,6 +2880,7 @@ < dns use isp assigned nameservers < dns use protocol for dns queries < downlink +< download apple profile < download dh parameter < download tls-auth key < dpd delay @@ -3169,13 +3195,16 @@ < ip info for < ipsec < ipsec connection +< ipsec dns server address is invalid < ipsec interface mode gre < ipsec interface mode none < ipsec interface mode vti +< ipsec invalid ip address or fqdn for rw endpoint < ipsec mode transport < ipsec mode tunnel < ipsec network < ipsec no connections +< ipsec roadwarrior endpoint < ipsec routing table entries < ipsec settings < itlb multihit @@ -3555,6 +3584,7 @@ < advproxy wpad view pac < asn lookup failed < autonomous system +< available < broken < Captive delete logo < cpu frequency @@ -3588,6 +3618,7 @@ < dns tls hostname < dns use isp assigned nameservers < dns use protocol for dns queries +< download apple profile < duration < email tls explicit < email tls implicit @@ -3630,11 +3661,14 @@ < ip basic info < ip info for < ipsec connection +< ipsec dns server address is invalid < ipsec interface mode gre < ipsec interface mode none < ipsec interface mode vti +< ipsec invalid ip address or fqdn for rw endpoint < ipsec mode transport < ipsec mode tunnel +< ipsec roadwarrior endpoint < ipsec routing table entries < ipsec settings < itlb multihit diff --git a/html/cgi-bin/aliases.cgi b/html/cgi-bin/aliases.cgi index 4e61eb65e..85ed27204 100644 --- a/html/cgi-bin/aliases.cgi +++ b/html/cgi-bin/aliases.cgi @@ -567,7 +567,7 @@ sub SortDataFile # sub BuildConfiguration { # Restart service associated with this - system '/usr/local/bin/setaliases'; + &General::system('/usr/local/bin/setaliases'); }
# diff --git a/html/cgi-bin/backup.cgi b/html/cgi-bin/backup.cgi index 683f8add4..84c015314 100644 --- a/html/cgi-bin/backup.cgi +++ b/html/cgi-bin/backup.cgi @@ -54,7 +54,7 @@ $cgiparams{'BACKUPLOGS'} = ''; ############################################################################################################################ ################################################ Workaround for Directories ################################################
-system("/usr/local/bin/backupctrl makedirs >/dev/null 2>&1 ") unless ( -e '/var/ipfire/backup/addons/backup') ; +&General::system("/usr/local/bin/backupctrl", "makedirs") unless ( -e '/var/ipfire/backup/addons/backup') ;
############################################################################################################################ ############################################## System calls ohne Http Header ############################################### @@ -85,7 +85,7 @@ if ($cgiparams{'ACTION'} eq "download") { print UPLOADFILE; } close UPLOADFILE; - system("/usr/local/bin/backupctrl restore >/dev/null 2>&1"); + &General::system("/usr/local/bin/backupctrl", "restore"); } elsif ( $cgiparams{'ACTION'} eq "restoreaddon" ) { @@ -99,7 +99,7 @@ elsif ( $cgiparams{'ACTION'} eq "restoreaddon" ) print UPLOADFILE; } close UPLOADFILE; - system("/usr/local/bin/backupctrl restoreaddon ".$temp[$#temp]." >/dev/null 2>&1"); + &General::system("/usr/local/bin/backupctrl", "restoreaddon", $temp[$#temp]); }
&Header::showhttpheaders(); @@ -115,11 +115,11 @@ sub refreshpage{&Header::openbox( 'Waiting', 1, "<meta http-equiv='refresh' cont if ( $cgiparams{'ACTION'} eq "backup" ) { if ( $cgiparams{'BACKUPLOGS'} eq "include" ) { - system("/usr/local/bin/backupctrl include >/dev/null 2>&1"); + &General::system("/usr/local/bin/backupctrl", "include"); } elsif ( $cgiparams{'BACKUPLOGS'} eq "exclude" ) { - system("/usr/local/bin/backupctrl exclude >/dev/null 2>&1"); + &General::system("/usr/local/bin/backupctrl", "exclude"); } elsif ( $cgiparams{'BACKUPLOGS'} eq "iso" ) { - system("/usr/local/bin/backupctrl iso >/dev/null 2>&1"); + &General::system("/usr/local/bin/backupctrl", "iso"); } } if ( $cgiparams{'ACTION'} eq "addonbackup" ) @@ -130,14 +130,14 @@ if ( $cgiparams{'ACTION'} eq "addonbackup" ) # Check if the addon exists exit(1) unless (-e "/var/ipfire/backup/addons/includes/$cgiparams{'ADDON'}");
- system("/usr/local/bin/backupctrl addonbackup $cgiparams{'ADDON'} >/dev/null 2>&1"); + &General::system("/usr/local/bin/backupctrl", "addonbackup", "$cgiparams{'ADDON'}"); } elsif ( $cgiparams{'ACTION'} eq "delete" ) { my $file = &sanitise_file($cgiparams{'FILE'}); exit(1) unless defined($file);
- system("/usr/local/bin/backupctrl $file >/dev/null 2>&1"); + &General::system("/usr/local/bin/backupctrl", "$file"); }
############################################################################################################################ diff --git a/html/cgi-bin/captive.cgi b/html/cgi-bin/captive.cgi index 51c5d45f2..ce666381c 100755 --- a/html/cgi-bin/captive.cgi +++ b/html/cgi-bin/captive.cgi @@ -64,7 +64,7 @@ my $errormessage=''; my $clients="${General::swroot}/captive/clients"; my %clientshash=(); my $settingsfile="${General::swroot}/captive/settings"; -unless (-e $settingsfile) { system("touch $settingsfile"); } +unless (-e $settingsfile) { &General::system("touch $settingsfile"); }
&Header::getcgihash(%cgiparams);
diff --git a/html/cgi-bin/connections.cgi b/html/cgi-bin/connections.cgi index 8613b9d9b..00038f1a0 100644 --- a/html/cgi-bin/connections.cgi +++ b/html/cgi-bin/connections.cgi @@ -146,6 +146,9 @@ if ($netsettings{'RED_DEV'}) { } }
+# Call safe system_output function to get all available routes. +my @all_routes = &General::system_output("/sbin/route", "-n"); + # Add Green Firewall Interface push(@network, $netsettings{'GREEN_ADDRESS'}); push(@masklen, "255.255.255.255" ); @@ -157,7 +160,7 @@ push(@masklen, $netsettings{'GREEN_NETMASK'} ); push(@colour, ${Header::colourgreen} );
# Add Green Routes to Array -my @routes = `/sbin/route -n | /bin/grep $netsettings{'GREEN_DEV'}`; +my @routes = grep (/$netsettings{'GREEN_DEV'}/, @all_routes); foreach my $route (@routes) { chomp($route); my @temp = split(/[\t ]+/, $route); @@ -178,7 +181,7 @@ if ($netsettings{'BLUE_DEV'}) { push(@colour, ${Header::colourblue} );
# Add Blue Routes to Array - @routes = `/sbin/route -n | /bin/grep $netsettings{'BLUE_DEV'}`; + @routes = grep(/$netsettings{'BLUE_DEV'}/, @all_routes); foreach my $route (@routes) { chomp($route); my @temp = split(/[\t ]+/, $route); @@ -199,7 +202,7 @@ if ($netsettings{'ORANGE_DEV'}) { push(@masklen, $netsettings{'ORANGE_NETMASK'} ); push(@colour, ${Header::colourorange} ); # Add Orange Routes to Array - @routes = `/sbin/route -n | /bin/grep $netsettings{'ORANGE_DEV'}`; + @routes = grep(/$netsettings{'ORANGE_DEV'}/, @all_routes); foreach my $route (@routes) { chomp($route); my @temp = split(/[\t ]+/, $route); diff --git a/html/cgi-bin/ddns.cgi b/html/cgi-bin/ddns.cgi index 7e4ddb5b7..e30aa3d4f 100644 --- a/html/cgi-bin/ddns.cgi +++ b/html/cgi-bin/ddns.cgi @@ -342,7 +342,7 @@ if ($settings{'ACTION'} eq $Lang::tr{'edit'}) { # Handle forced updates. # if ($settings{'ACTION'} eq $Lang::tr{'instant update'}) { - system(@ddnsprog) == 0 or die "@ddnsprog failed: $?\n"; + &General::system(@ddnsprog) == 0 or die "@ddnsprog failed: $?\n"; }
# diff --git a/html/cgi-bin/dhcp.cgi b/html/cgi-bin/dhcp.cgi index dd379dc47..f1fbfd235 100644 --- a/html/cgi-bin/dhcp.cgi +++ b/html/cgi-bin/dhcp.cgi @@ -130,6 +130,15 @@ open(FILE, "$filename2") or die 'Unable to open fixed leases file.'; our @current2 = <FILE>; close(FILE);
+# Open and read-in file which contains the list of allowed advanced options. +open(FILE, $filename3) or die "Could not open $filename3. $!\n"; + +# Grab file content. +my @advoptions_list = <FILE>; + +# Close file handle. +close(FILE); + # Check Settings1 first because they are needed by &buildconf if ($dhcpsettings{'ACTION'} eq $Lang::tr{'save'}) { foreach my $itf (@ITFs) { @@ -338,7 +347,7 @@ if ($dhcpsettings{'ACTION'} eq $Lang::tr{'add'}.'1' && map ($dhcpsettings{"ADVOPT_SCOPE_$_"} = 'off', @ITFs); # force global } elsif (ValidNewOption ($dhcpsettings{'ADVOPT_NAME'} . ' ' . $dhcpsettings{'ADVOPT_DATA'})) { #was a new option - } elsif (! `grep "$option $dhcpsettings{'ADVOPT_NAME'} " $filename3`) { + } elsif (! grep(/option $dhcpsettings{'ADVOPT_NAME'}/, @advoptions_list)) { $errormessage=$Lang::tr{'dhcp advopt unknown'}.': '.$dhcpsettings{'ADVOPT_NAME'}; }
@@ -535,7 +544,8 @@ if ($dhcpsettings{'ACTION'} eq '' ) { # First launch from GUI } } $dhcpsettings{'FIX_ENABLED'} = 'on'; -} + $dhcpsettings{'ADVOPT_ENABLED'} = 'on'; + }
&Header::openpage($Lang::tr{'dhcp configuration'}, 1, ''); &Header::openbigbox('100%', 'left', '', $errormessage); @@ -713,7 +723,20 @@ if ($dhcpsettings{'KEY1'} ne '') { }
#search if the 'option' is in the list and print the syntax model -my $opt = `grep "$option $dhcpsettings{'ADVOPT_NAME'} " $filename3`; +my $opt; + +# Check if a advanced option name is set. +if ($dhcpsettings{'ADVOPT_NAME'}) { + # Check if the name is part of the list and grab syntax. + my @opt = grep(/option $dhcpsettings{'ADVOPT_NAME'}/, @advoptions_list); + + # Assign array element to variable. + $opt = @opt[0]; + + # Remove newlines. + chomp($opt); +} + if ($opt ne '') { $opt =~ s/option $dhcpsettings{'ADVOPT_NAME'}/Syntax:/; # "option xyz abc" => "syntax: abc" $opt =~ s/;//; @@ -1329,7 +1352,7 @@ sub buildconf { print FILE "}\n\n"; }
- system ('/usr/bin/touch', "${General::swroot}/dhcp/enable_${lc_itf}"); + &General::system('/usr/bin/touch', "${General::swroot}/dhcp/enable_${lc_itf}"); &General::log("DHCP on ${itf}: " . $Lang::tr{'dhcp server enabled'}) } else { unlink "${General::swroot}/dhcp/enable_${lc_itf}"; @@ -1356,9 +1379,9 @@ sub buildconf { } print FILE "include "${General::swroot}/dhcp/dhcpd.conf.local";\n"; close FILE; - if ( $dhcpsettings{"ENABLE_GREEN"} eq 'on' || $dhcpsettings{"ENABLE_BLUE"} eq 'on' ) {system '/usr/local/bin/dhcpctrl enable >/dev/null 2>&1';} - else {system '/usr/local/bin/dhcpctrl disable >/dev/null 2>&1';} - system '/usr/local/bin/dhcpctrl restart >/dev/null 2>&1 &'; + if ( $dhcpsettings{"ENABLE_GREEN"} eq 'on' || $dhcpsettings{"ENABLE_BLUE"} eq 'on' ) {&General::system('/usr/local/bin/dhcpctrl', 'enable');} + else {&General::system('/usr/local/bin/dhcpctrl', 'disable');} + &General::system_background('/usr/local/bin/dhcpctrl', 'restart'); }
# diff --git a/html/cgi-bin/dns.cgi b/html/cgi-bin/dns.cgi index 7dc113582..0a34d3fd6 100755 --- a/html/cgi-bin/dns.cgi +++ b/html/cgi-bin/dns.cgi @@ -48,8 +48,8 @@ my $settings_file = "${General::swroot}/dns/settings"; my $servers_file = "${General::swroot}/dns/servers";
# Create files if the does not exist. -unless (-f $settings_file) { system("touch $settings_file") }; -unless (-f $servers_file) { system("touch $servers_file") }; +unless (-f $settings_file) { &General::system("touch", "$settings_file") }; +unless (-f $servers_file) { &General::system("touch", "$servers_file") };
# File which stores the ISP assigned DNS servers. my @ISP_nameserver_files = ( "/var/run/dns1", "/var/run/dns2" ); @@ -844,7 +844,7 @@ sub _handle_unbound_and_more () { &IDS::call_suricatactrl("restart"); } # Restart unbound - system('/usr/local/bin/unboundctrl reload >/dev/null'); + &General::system('/usr/local/bin/unboundctrl', 'reload'); }
# Check if the system is online (RED is connected). diff --git a/html/cgi-bin/dnsforward.cgi b/html/cgi-bin/dnsforward.cgi index 749d1216a..e2843a81f 100644 --- a/html/cgi-bin/dnsforward.cgi +++ b/html/cgi-bin/dnsforward.cgi @@ -124,7 +124,7 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'add'}) } } # Restart unbound - system('/usr/local/bin/unboundctrl reload >/dev/null'); + &General::system('/usr/local/bin/unboundctrl', 'reload'); }
### @@ -142,7 +142,7 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'remove'}) } close(FILE); # Restart unbound. - system('/usr/local/bin/unboundctrl reload >/dev/null'); + &General::system('/usr/local/bin/unboundctrl', 'reload'); }
### @@ -169,7 +169,7 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'toggle enable disable'}) } close(FILE); # Restart unbound. - system('/usr/local/bin/unboundctrl reload >/dev/null'); + &General::system('/usr/local/bin/unboundctrl', 'reload'); }
### diff --git a/html/cgi-bin/extrahd.cgi b/html/cgi-bin/extrahd.cgi index aaf42baff..154efd7b2 100644 --- a/html/cgi-bin/extrahd.cgi +++ b/html/cgi-bin/extrahd.cgi @@ -53,8 +53,8 @@ my $partitionsfile = "/var/ipfire/extrahd/partitions"; my @dummy = ( ${Header::colourgreen}, ${Header::colourred} ); undef (@dummy);
-system("/usr/local/bin/extrahdctrl scanhd ide >/dev/null"); -system("/usr/local/bin/extrahdctrl scanhd partitions >/dev/null"); +&General::system("/usr/local/bin/extrahdctrl", "scanhd", "ide"); +&General::system("/usr/local/bin/extrahdctrl", "scanhd", "partitions");
&Header::showhttpheaders();
@@ -98,12 +98,12 @@ if ($extrahdsettings{'ACTION'} eq $Lang::tr{'add'}) UUID=$extrahdsettings{'UUID'};$extrahdsettings{'FS'};$extrahdsettings{'PATH'}; END ; - system("/usr/local/bin/extrahdctrl mount $extrahdsettings{'PATH'}"); + &General::system("/usr/local/bin/extrahdctrl", "mount", "$extrahdsettings{'PATH'}"); } } elsif ($extrahdsettings{'ACTION'} eq $Lang::tr{'delete'}) { - if ( `/usr/local/bin/extrahdctrl umount $extrahdsettings{'PATH'}` ) { + if ( &General::system("/usr/local/bin/extrahdctrl", "umount", "$extrahdsettings{'PATH'}")) { open( FILE, "< $devicefile" ) or die "Unable to read $devicefile"; @tmp = <FILE>; close FILE; @@ -143,7 +143,11 @@ END { @deviceline = split( /;/, $deviceentry ); my $color="$Header::colourred"; - if ( ! `/bin/mountpoint $deviceline[2] | grep " not "` ) { + + # Use safe system_output to get mountpoint details. + my @mountpoint = &General::system_output("/bin/mountpoint", "$deviceline[2]"); + + if ( ! grep(/not/, @mountpoint)) { $color=$Header::colourgreen; } print <<END diff --git a/html/cgi-bin/fireinfo.cgi b/html/cgi-bin/fireinfo.cgi index dfc741fde..e0221c5be 100644 --- a/html/cgi-bin/fireinfo.cgi +++ b/html/cgi-bin/fireinfo.cgi @@ -49,14 +49,18 @@ if ( -e "$configfile" ) { if ("$fireinfosettings{'ACTION'}" eq "trigger") { if ($fireinfosettings{'ENABLE_FIREINFO'} eq 'off') { &General::log($Lang::tr{'fireinfo is enabled'}); - system ('/usr/bin/touch', $configfile); + + # Write empty configfile. + open(FILE, ">$configfile"); + close(FILE); + $fireinfosettings{'ENABLE_FIREINFO'} = 'on'; } else { &General::log($Lang::tr{'fireinfo is disabled'}); unlink "$configfile"; $fireinfosettings{'ENABLE_FIREINFO'} = 'off'; } - system("/usr/local/bin/fireinfoctrl &"); + &General::system_background("/usr/local/bin/fireinfoctrl"); }
&Header::openpage('Fireinfo', 1, ''); @@ -84,9 +88,13 @@ if ($errormessage) { &Header::closebox(); }
-my $ipfire_version = `cat /etc/system-release`; +# Get IPFire version string. +open(FILE, "/etc/system-release"); +my $ipfire_version = <FILE>; +close(FILE); + my $pakfire_version = &Pakfire::make_version(); -my $kernel_version = `uname -a`; +my $kernel_version = &General::system_output("uname", "-a");
&Header::openbox('100%', 'left', $Lang::tr{'fireinfo system version'}); print <<END; @@ -108,12 +116,16 @@ END &Header::closebox();
# Read pregenerated profile data -my $profile = `cat /var/ipfire/fireinfo/profile`; +open(FILE, "/var/ipfire/fireinfo/profile"); +my @profile = <FILE>; +close(FILE);
print "<form method='post' action='$ENV{'SCRIPT_NAME'}'>\n";
# Read profile ID from file -my $profile_id = `cat /var/ipfire/fireinfo/public_id`; +open(FILE, "/var/ipfire/fireinfo/public_id"); +my $profile_id = <FILE>; +close(FILE); chomp($profile_id);
&Header::openbox('100%', 'left', $Lang::tr{'fireinfo settings'}); @@ -157,7 +169,7 @@ print <<END; </tr> <tr> <td colspan='2'> - <textarea rows="25" cols="75" readonly="readonly">$profile</textarea> + <textarea rows="25" cols="75" readonly="readonly">@profile</textarea> </td> </tr> </table> diff --git a/html/cgi-bin/firewall.cgi b/html/cgi-bin/firewall.cgi index 4f4d63cc8..70dee8d3c 100644 --- a/html/cgi-bin/firewall.cgi +++ b/html/cgi-bin/firewall.cgi @@ -38,11 +38,11 @@ require "${General::swroot}/header.pl"; require "${General::swroot}/location-functions.pl"; require "/usr/lib/firewall/firewall-lib.pl";
-unless (-d "${General::swroot}/firewall") { system("mkdir ${General::swroot}/firewall"); } -unless (-e "${General::swroot}/firewall/settings") { system("touch ${General::swroot}/firewall/settings"); } -unless (-e "${General::swroot}/firewall/config") { system("touch ${General::swroot}/firewall/config"); } -unless (-e "${General::swroot}/firewall/input") { system("touch ${General::swroot}/firewall/input"); } -unless (-e "${General::swroot}/firewall/outgoing") { system("touch ${General::swroot}/firewall/outgoing"); } +unless (-d "${General::swroot}/firewall") { &General::system("mkdir", "${General::swroot}/firewall"); } +unless (-e "${General::swroot}/firewall/settings") { &General::system("touch", "${General::swroot}/firewall/settings"); } +unless (-e "${General::swroot}/firewall/config") { &General::system("touch", "${General::swroot}/firewall/config"); } +unless (-e "${General::swroot}/firewall/input") { &General::system("touch", "${General::swroot}/firewall/input"); } +unless (-e "${General::swroot}/firewall/outgoing") { &General::system("touch", "${General::swroot}/firewall/outgoing"); }
my %fwdfwsettings=(); my %selected=() ; diff --git a/html/cgi-bin/fwhosts.cgi b/html/cgi-bin/fwhosts.cgi index 84b018459..35611ac08 100644 --- a/html/cgi-bin/fwhosts.cgi +++ b/html/cgi-bin/fwhosts.cgi @@ -75,12 +75,12 @@ my $fwoptions = "${General::swroot}/optionsfw/settings"; my $configovpn = "${General::swroot}/ovpn/settings"; my $configipsecrw = "${General::swroot}/vpn/settings";
-unless (-e $confignet) { system("touch $confignet"); } -unless (-e $confighost) { system("touch $confighost"); } -unless (-e $configgrp) { system("touch $configgrp"); } -unless (-e $configsrv) { system("touch $configsrv"); } -unless (-e $configsrvgrp) { system("touch $configsrvgrp"); } -unless (-e $configlocationgrp) { system("touch $configlocationgrp"); } +unless (-e $confignet) { &General::system("touch", "$confignet"); } +unless (-e $confighost) { &General::system("touch", "$confighost"); } +unless (-e $configgrp) { &General::system("touch", "$configgrp"); } +unless (-e $configsrv) { &General::system("touch", "$configsrv"); } +unless (-e $configsrvgrp) { &General::system("touch", "$configsrvgrp"); } +unless (-e $configlocationgrp) { &General::system("touch $configlocationgrp"); }
&General::readhash("${General::swroot}/main/settings", %mainsettings); &General::readhash("/srv/web/ipfire/html/themes/ipfire/include/colors.txt", %color); diff --git a/html/cgi-bin/gpl.cgi b/html/cgi-bin/gpl.cgi index be1ea2639..140fd2178 100644 --- a/html/cgi-bin/gpl.cgi +++ b/html/cgi-bin/gpl.cgi @@ -60,7 +60,19 @@ END ; if ( -e "/usr/share/doc/licenses/GPLv3" ) { print '<textarea rows='25' cols='75' readonly='readonly'>'; - print `cat /usr/share/doc/licenses/GPLv3`; + + # Open and read-in GPL file content. + open(FILE, "/usr/share/doc/licenses/GPLv3"); + + # Grab license. + my @license = <FILE>; + + # Close filehandle. + close(FILE); + + # Print license to textarea. + print "@license"; + print '</textarea>'; } else { diff --git a/html/cgi-bin/guardian.cgi b/html/cgi-bin/guardian.cgi index 552c67211..8ffe57f11 100644 --- a/html/cgi-bin/guardian.cgi +++ b/html/cgi-bin/guardian.cgi @@ -67,8 +67,8 @@ my $settingsfile = "${General::swroot}/guardian/settings"; my $ignoredfile = "${General::swroot}/guardian/ignored";
# Create empty settings and ignoredfile if they do not exist yet. -unless (-e "$settingsfile") { system("touch $settingsfile"); } -unless (-e "$ignoredfile") { system("touch $ignoredfile"); } +unless (-e "$settingsfile") { &General::system("touch", "$settingsfile"); } +unless (-e "$ignoredfile") { &General::system("touch", "$ignoredfile"); }
our %settings = (); our %ignored = (); @@ -878,7 +878,7 @@ sub BuildConfiguration() { my $configfile = "${General::swroot}/guardian/guardian.conf";
# Create the configfile if none exists yet. - unless (-e "$configfile") { system("touch $configfile"); } + unless (-e "$configfile") { &General::system("touch", "$configfile"); }
# Open configfile for writing. open(FILE, ">$configfile"); @@ -940,11 +940,11 @@ sub BuildConfiguration() { &Guardian::Socket::Client("reload"); } else { # Launch guardian. - system("/usr/local/bin/addonctrl guardian start &>/dev/null"); + &General::system("/usr/local/bin/addonctrl", "guardian", "start"); } } else { # Stop the daemon. - system("/usr/local/bin/addonctrl guardian stop &>/dev/null"); + &General::system("/usr/local/bin/addonctrl", "guardian", "stop"); } }
@@ -955,7 +955,7 @@ sub GenerateIgnoreFile() { &General::readhasharray($ignoredfile, %ignored);
# Create the guardian.ignore file if not exist yet. - unless (-e "$ignorefile") { system("touch $ignorefile"); } + unless (-e "$ignorefile") { &General::system("touch", "$ignorefile"); }
# Open ignorefile for writing. open(FILE, ">$ignorefile"); diff --git a/html/cgi-bin/gui.cgi b/html/cgi-bin/gui.cgi index 1b316a2a2..820296fe2 100644 --- a/html/cgi-bin/gui.cgi +++ b/html/cgi-bin/gui.cgi @@ -70,7 +70,7 @@ if ($cgiparams{'ACTION'} eq "$Lang::tr{'save'}") # Set flag if index page is to refresh whilst ppp is up. # Default is NO refresh. if ($cgiparams{'REFRESHINDEX'} ne 'off') { - system ('/usr/bin/touch', "${General::swroot}/main/refreshindex"); + &General::system('/usr/bin/touch', "${General::swroot}/main/refreshindex"); } else { unlink "${General::swroot}/main/refreshindex"; } @@ -78,7 +78,7 @@ if ($cgiparams{'ACTION'} eq "$Lang::tr{'save'}") # Beep on ip-up or ip-down. Default is ON. if ($cgiparams{'PPPUPDOWNBEEP'} ne 'on') { $cgiparams{'PPPUPDOWNBEEP'} = 'off'; - system ('/usr/bin/touch', "${General::swroot}/red/nobeeps"); + &General::system('/usr/bin/touch', "${General::swroot}/red/nobeeps"); } else { unlink "${General::swroot}/red/nobeeps"; } diff --git a/html/cgi-bin/hardwaregraphs.cgi b/html/cgi-bin/hardwaregraphs.cgi index 813d32f7b..e8f0fa362 100644 --- a/html/cgi-bin/hardwaregraphs.cgi +++ b/html/cgi-bin/hardwaregraphs.cgi @@ -38,12 +38,55 @@ my %mainsettings = (); my %sensorsettings = ();
my @sensorsgraphs = (); -my @sensorsdir = `ls -dA $mainsettings{'RRDLOG'}/collectd/localhost/sensors-*/`; -foreach (@sensorsdir){ - chomp($_);chop($_); - foreach (`ls $_/*`){ - chomp($_); - push(@sensorsgraphs,$_); + +# Main directory where rrdlog puts the sensor data. +my $sensorsdir = "$mainsettings{'RRDLOG'}/collectd/localhost"; + +# Open sensors directory. +opendir(SENSORS, "$sensorsdir") or die "Could not opendir $sensorsdir: $!\n"; + +# Read-in all sensors. +my @sensor_dirs = readdir(SENSORS); + +# Close directory handle. +closedir(SENSORS); + +# Loop through the grabbed sensors. +foreach my $sensor_dir (@sensor_dirs) { + # Skip everything which does not start with "sensors-". + next unless $sensor_dir =~ /^sensors-/; + + # Check if the omitet element is a directory. + next unless (-d "$sensorsdir/$sensor_dir"); + + # Open sensor directory and lookup for sensors. + opendir(SENSOR_DIR, "$sensorsdir/$sensor_dir") or die "Could not opendir $sensorsdir/$sensor_dir: $!\n"; + + # Grab single sensors from the directory. + my @sensors = readdir(SENSOR_DIR); + + # Close directory handle. + closedir(SENSOR_DIR); + + # Loop through the omited sensors. + foreach my $sensor (@sensors) { + # Skip everything which is not a regular file. + next unless (-f "$sensorsdir/$sensor_dir/$sensor"); + + # Add sensor to the array of sensorsgrapghs. + push(@sensorsgraphs, "$sensorsdir/$sensor_dir/$sensor"); + } +} + +# Look for ACPI Thermal Zone sensors. +my @thermal_zone_sensors = grep(/thermal-thermal_zone/, @sensor_dirs); + +# If a thermal zone sensor has been found add it to the sensorsgraphs array. +if (@thermal_zone_sensors) { + # Loop through the array of thermal zone sensors. + foreach my $thermal_zone_sensor (@thermal_zone_sensors) { + # Add the sensor to the array. + push(@sensorsgraphs, "$sensorsdir/$thermal_zone_sensor"); } }
@@ -97,7 +140,9 @@ if ( $querry[0] =~ "hwtemp"){ &General::writehash("${General::swroot}/sensors/settings", %sensorsettings); }
- my @disks = `ls -1 /sys/block | grep -E '^sd|^nvme' | sort | uniq`; + # This should be save, because no user given content will be processed. + #my @disks = `ls -1 /sys/block | grep -E '^sd|^nvme' | sort | uniq`; + my @disks = &get_disks();
foreach (@disks){ my $disk = $_; @@ -109,31 +154,31 @@ if ( $querry[0] =~ "hwtemp"){ &Header::closebox(); }
- if ( `ls $mainsettings{'RRDLOG'}/collectd/localhost/thermal-thermal_zone* 2>/dev/null` ) { + if ( grep(/thermal-thermal_zone/, @sensorsgraphs) ) { &Header::openbox('100%', 'center', "ACPI Thermal-Zone Temp $Lang::tr{'graph'}"); &Graphs::makegraphbox("hardwaregraphs.cgi","thermaltemp","day"); &Header::closebox(); }
- if ( `ls $mainsettings{'RRDLOG'}/collectd/localhost/sensors-*/temperature-* 2>/dev/null` ) { + if ( grep(/temperature-/, @sensorsgraphs) ) { &Header::openbox('100%', 'center', "hwtemp $Lang::tr{'graph'}"); &Graphs::makegraphbox("hardwaregraphs.cgi","hwtemp","day"); Header::closebox(); }
- if ( `ls $mainsettings{'RRDLOG'}/collectd/localhost/sensors-*/fanspeed-* 2>/dev/null` ) { + if ( grep(/fanspeed-/, @sensorsgraphs) ) { &Header::openbox('100%', 'center', "hwfan $Lang::tr{'graph'}"); &Graphs::makegraphbox("hardwaregraphs.cgi","hwfan","day"); &Header::closebox(); }
- if ( `ls $mainsettings{'RRDLOG'}/collectd/localhost/sensors-*/voltage-* 2>/dev/null` ) { + if ( grep(/voltage-/, @sensorsgraphs) ) { &Header::openbox('100%', 'center', "hwvolt $Lang::tr{'graph'}"); &Graphs::makegraphbox("hardwaregraphs.cgi","hwvolt","day"); &Header::closebox(); }
- if ( `ls $mainsettings{'RRDLOG'}/collectd/localhost/sensors-* 2>/dev/null` ) { + if ( @sensorsgraphs ) { sensorsbox(); } &Header::closebigbox(); @@ -175,3 +220,40 @@ END ; &Header::closebox(); } + +sub get_disks () { + my @disks; + + # Open virtal sys FS and grab block devices. + opendir(SYS, "/sys/block") or die "Could not opendir /sys/block/: $!\n"; + + # Grab all available block devices. + my @blockdevs = readdir(SYS); + + # Close directory handle. + closedir(SYS); + + # Loop through the array of blockdevs. + foreach my $dev (@blockdevs) { + # Skip all devices which does not start with "sd" or "nvme". + next unless (( $dev =~ /^sd/) || ($dev =~ /^nvme/)); + + # Add the device to the array of disks. + push(@disks, $dev); + } + + # Remove duplicates. + my @disks = &uniq(@disks); + + # Sort the array. + my @disks = sort(@disks); + + # Return the array. + return @disks; +} + +# Tiny code snipped to get a uniq() like function. +sub uniq { + my %seen; + return grep { !$seen{$_}++ } @_; +} diff --git a/html/cgi-bin/hosts.cgi b/html/cgi-bin/hosts.cgi index d9e9cb0af..a99d1364a 100644 --- a/html/cgi-bin/hosts.cgi +++ b/html/cgi-bin/hosts.cgi @@ -487,6 +487,6 @@ sub SortDataFile # Build the configuration file # sub BuildConfiguration { - system '/usr/local/bin/rebuildhosts'; - system '/usr/local/bin/unboundctrl reload &>/dev/null'; + &General::system('/usr/local/bin/rebuildhosts'); + &General::system('/usr/local/bin/unboundctrl', 'reload'); } diff --git a/html/cgi-bin/index.cgi b/html/cgi-bin/index.cgi index 4ac237d0f..fafbe0aa1 100644 --- a/html/cgi-bin/index.cgi +++ b/html/cgi-bin/index.cgi @@ -118,10 +118,10 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'dial profile'}) }
if ($cgiparams{'ACTION'} eq $Lang::tr{'dial'}) { - system('/usr/local/bin/redctrl start > /dev/null') == 0 + &General::system('/usr/local/bin/redctrl', 'start') == 0 or &General::log("Dial failed: $?"); sleep 1; }elsif ($cgiparams{'ACTION'} eq $Lang::tr{'hangup'}) { - system('/usr/local/bin/redctrl stop > /dev/null') == 0 + &General::system('/usr/local/bin/redctrl', 'stop') == 0 or &General::log("Hangup failed: $?"); sleep 1; }
diff --git a/html/cgi-bin/mac.cgi b/html/cgi-bin/mac.cgi index 161be3421..f4c5aa2d4 100644 --- a/html/cgi-bin/mac.cgi +++ b/html/cgi-bin/mac.cgi @@ -94,7 +94,7 @@ if ($macsettings{'ACTION'} eq $Lang::tr{'save'}) { } } if ($macsettings{'ACTION'} eq $Lang::tr{'reconnect'}) { - system("/usr/local/bin/redctrl restart >/dev/null 2>&1 &"); + &General::system_background("/usr/local/bin/redctrl", "restart"); &Header::openbox('100%', 'left', $Lang::tr{'mac address recon'} ); print "<font class='base'>$Lang::tr{'mac address done'}</font>\n"; &Header::closebox(); @@ -107,7 +107,7 @@ if ($macsettings{'ACTION'} eq $Lang::tr{'delete'} ) { } if ($macsettings{'ACTION'} eq $Lang::tr{'reboot'}) { &General::log($Lang::tr{'rebooting ipfire'}); - system("/usr/local/bin/ipfirereboot boot"); + &General::system("/usr/local/bin/ipfirereboot", "boot"); &Header::openbox('100%', 'left', $Lang::tr{'rebooting ipfire'} ); print " <img src='/images/indicator.gif' /><br /><br />"; print "<meta http-equiv='refresh' content='120;'>"; diff --git a/html/cgi-bin/mdstat.cgi b/html/cgi-bin/mdstat.cgi index d476e074d..9ee2b15a1 100644 --- a/html/cgi-bin/mdstat.cgi +++ b/html/cgi-bin/mdstat.cgi @@ -42,7 +42,13 @@ my %mainsettings = (); &Header::openbox('100%', 'left',"MD Raid State");
print '<textarea rows="25" cols="80" readonly="readonly">'; -print `cat "/proc/mdstat"`; + +# Grab mdstat status. +open(MDSTAT, "/proc/mdstat"); +my @mdstat = <MDSTAT>; +close(MDSTAT); +print "@mdstat"; + print '</textarea>';
&Header::closebox(); diff --git a/html/cgi-bin/memory.cgi b/html/cgi-bin/memory.cgi index 204365294..441b1d4e7 100644 --- a/html/cgi-bin/memory.cgi +++ b/html/cgi-bin/memory.cgi @@ -56,7 +56,7 @@ if ( $querry[0] =~ "memory"){ &Graphs::makegraphbox("memory.cgi","memory","day"); &Header::closebox();
- if ( `ls $mainsettings{'RRDLOG'}/collectd/localhost/swap 2>/dev/null` ) { + if (-f "$mainsettings{'RRDLOG'}/collectd/localhost/swap") { &Header::openbox('100%', 'center', "Swap $Lang::tr{'graph'}"); &Graphs::makegraphbox("memory.cgi","swap","day"); &Header::closebox(); @@ -64,7 +64,6 @@ if ( $querry[0] =~ "memory"){ &Header::openbox('100%', 'center', $Lang::tr{'memory'}); print "<table width='95%' cellspacing='5'>"; - my $ram=0; my $size=0; my $used=0; my $free=0; @@ -72,10 +71,12 @@ if ( $querry[0] =~ "memory"){ my $shared=0; my $buffers=0; my $cached=0; + my $available=0;
- open(FREE,'/usr/bin/free |'); - while(<FREE>){ - if ($_ =~ m/^\s+total\s+used\s+free\s+shared\s+buffers\s+cached$/ ){ + # output format: kibibytes, wide mode (buffers and cache in two columns) + open(my $cmd_fh, "-|", '/usr/bin/free -k -w') or die $!; + while(<$cmd_fh>){ + if ($_ =~ m/^\s+total\s+used\s+free\s+shared\s+buffers\s+cache\s+available$/ ){ print <<END <tr> <td align='center'> </td> @@ -87,13 +88,12 @@ if ( $querry[0] =~ "memory"){ END ; }else{ - if ($_ =~ m/^Mem:\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)$/){ - ($ram,$size,$used,$free,$shared,$buffers,$cached) = ($1,$1,$2,$3,$4,$5,$6); + if ($_ =~ m/^Mem:\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\s+(\d+)$/){ + ($size,$used,$free,$shared,$buffers,$cached,$available) = ($1,$2,$3,$4,$5,$6,$7); ($percent = ($used/$size)*100) =~ s/^(\d+)(.\d+)?$/$1%/; print <<END <tr> <td class='boldbase'><b>$Lang::tr{'ram'}</b></td> -<td align='center'>$size KB</td> END ; }elsif($_ =~ m/^Swap:\s+(\d+)\s+(\d+)\s+(\d+)$/){ @@ -106,17 +106,13 @@ END print <<END <tr> <td class='boldbase'><b>$Lang::tr{'swap'}</b></td> -<td align='center'>$size KB</td> END ; - }elsif($ram and $_ =~ m/^-/+ buffers/cache:\s+(\d+)\s+(\d+)$/ ){ - ($used,$free) = ($1,$2); - ($percent = ($used/$ram)*100) =~ s/^(\d+)(.\d+)?$/$1%/; - print "<tr><td colspan='2' class='boldbase'><b>$Lang::tr{'excluding buffers and cache'}</b></td>"; } print <<END -<td align='center'>$used KB</td> -<td align='center'>$free KB</td> +<td align='center'>$size KiB</td> +<td align='center'>$used KiB</td> +<td align='center'>$free KiB</td> <td> END ; @@ -129,12 +125,13 @@ END ; } } - close FREE; + close($cmd_fh); print <<END -<tr><td class='boldbase' colspan='2'><br /></td></tr> -<tr><td class='boldbase'><b>$Lang::tr{'shared'}</b></td><td align='center'>$shared KB</td></tr> -<tr><td class='boldbase'><b>$Lang::tr{'buffers'}</b></td><td align='center'>$buffers KB</td></tr> -<tr><td class='boldbase'><b>$Lang::tr{'cached'}</b></td><td align='center'>$cached KB</td></tr> +<tr><td colspan='6'><br /></td></tr> +<tr><td class='boldbase'><b>$Lang::tr{'shared'}</b></td><td align='center'>$shared KiB</td></tr> +<tr><td class='boldbase'><b>$Lang::tr{'buffers'}</b></td><td align='center'>$buffers KiB</td></tr> +<tr><td class='boldbase'><b>$Lang::tr{'cached'}</b></td><td align='center'>$cached KiB</td></tr> +<tr><td class='boldbase'><b>$Lang::tr{'available'}</b></td><td align='center'>$available KiB</td></tr> </table> END ; diff --git a/html/cgi-bin/modem.cgi b/html/cgi-bin/modem.cgi index a13f8b265..bf5080d01 100644 --- a/html/cgi-bin/modem.cgi +++ b/html/cgi-bin/modem.cgi @@ -57,7 +57,7 @@ ERROR:
if ($modemsettings{'ACTION'} eq $Lang::tr{'restore defaults'}) { - system('/bin/cp', "${General::swroot}/modem/defaults", "${General::swroot}/modem/settings", '-f'); + &General::system("cp", "-f", "${General::swroot}/modem/defaults", "${General::swroot}/modem/settings"); }
&General::readhash("${General::swroot}/modem/settings", %modemsettings); diff --git a/html/cgi-bin/mpfire.cgi b/html/cgi-bin/mpfire.cgi index c8cfc4b11..ea83d1db1 100644 --- a/html/cgi-bin/mpfire.cgi +++ b/html/cgi-bin/mpfire.cgi @@ -231,7 +231,7 @@ if ( $mpfiresettings{'ACTION'} eq "scan" ){ $mpd->updatedb(); refreshpage(); }elsif ( $mpfiresettings{'ACTION'} eq "playweb" ){ - $message=system("/usr/local/bin/mpfirectrl","playweb",""$mpfiresettings{'FILE'}"","2>/dev/null"); + $message= &General::system_output("/usr/local/bin/mpfirectrl","playweb",""$mpfiresettings{'FILE'}""); }elsif ( $mpfiresettings{'ACTION'} eq "playlist" ){ $mpd->play(); }elsif ( $mpfiresettings{'ACTION'} eq "emptyplaylist" ){ diff --git a/html/cgi-bin/netexternal.cgi b/html/cgi-bin/netexternal.cgi index a31502dd0..1e3760c2b 100644 --- a/html/cgi-bin/netexternal.cgi +++ b/html/cgi-bin/netexternal.cgi @@ -86,8 +86,7 @@ if ( $querry[0] ne~ ""){
&General::readhash("${General::swroot}/dhcpc/dhcpcd-$netsettings{'RED_DEV'}.info", %dhcpinfo);
- my $DNS1=`echo $dhcpinfo{'domain_name_servers'} | cut -f 1 -d " "`; - my $DNS2=`echo $dhcpinfo{'domain_name_servers'} | cut -f 2 -d " "`; + my ($DNS1, $DNS2) = split(/ /, $dhcpinfo{'domain_name_servers'});
my $lsetme=0; my $leasetime=""; diff --git a/html/cgi-bin/optionsfw.cgi b/html/cgi-bin/optionsfw.cgi index 321642e82..1ecf4f180 100644 --- a/html/cgi-bin/optionsfw.cgi +++ b/html/cgi-bin/optionsfw.cgi @@ -49,7 +49,7 @@ if ($settings{'ACTION'} eq $Lang::tr{'save'}) { if ($settings{'defpol'} ne '1'){ $errormessage .= $Lang::tr{'new optionsfw later'}; &General::writehash($filename, %settings); # Save good settings - system("/usr/local/bin/firewallctrl"); + &General::system("/usr/local/bin/firewallctrl"); }else{ if ($settings{'POLICY'} ne ''){ $fwdfwsettings{'POLICY'} = $settings{'POLICY'}; @@ -64,7 +64,7 @@ if ($settings{'ACTION'} eq $Lang::tr{'save'}) { $fwdfwsettings{'POLICY1'} = "$MODE1"; &General::writehash("${General::swroot}/firewall/settings", %fwdfwsettings); &General::readhash("${General::swroot}/firewall/settings", %fwdfwsettings); - system("/usr/local/bin/firewallctrl"); + &General::system("/usr/local/bin/firewallctrl"); } &General::readhash($filename, %settings); # Load good settings } diff --git a/html/cgi-bin/ovpnmain.cgi b/html/cgi-bin/ovpnmain.cgi index b98d88529..077f5ab6c 100644 --- a/html/cgi-bin/ovpnmain.cgi +++ b/html/cgi-bin/ovpnmain.cgi @@ -192,10 +192,10 @@ sub newcleanssldatabase close FILE; } if (! -s ">${General::swroot}/ovpn/certs/index.txt") { - system ("touch ${General::swroot}/ovpn/certs/index.txt"); + &General::system("touch", "${General::swroot}/ovpn/certs/index.txt"); } if (! -s ">${General::swroot}/ovpn/certs/index.txt.attr") { - system ("touch ${General::swroot}/ovpn/certs/index.txt.attr"); + &General::system("touch", "${General::swroot}/ovpn/certs/index.txt.attr"); } unlink ("${General::swroot}/ovpn/certs/index.txt.old"); unlink ("${General::swroot}/ovpn/certs/index.txt.attr.old"); @@ -220,18 +220,21 @@ sub pkiconfigcheck { # Warning if DH parameter is 1024 bit if (-f "${General::swroot}/ovpn/ca/$cgiparams{'DH_NAME'}") { - my $dhparameter = `/usr/bin/openssl dhparam -text -in ${General::swroot}/ovpn/ca/$cgiparams{'DH_NAME'}`; - my @dhbit = ($dhparameter =~ /(\d+)/); - if ($1 < 2048) { - $cryptoerror = "$Lang::tr{'ovpn error dh'}"; - goto CRYPTO_ERROR; + my @dhparameter = &General::system_output("/usr/bin/openssl", "dhparam", "-text", "-in", "${General::swroot}/ovpn/ca/$cgiparams{'DH_NAME'}"); + + foreach my $line (@dhparameter) { + my @dhbit = ($line =~ /(\d+)/); + if ($1 < 2048) { + $cryptoerror = "$Lang::tr{'ovpn error dh'}"; + goto CRYPTO_ERROR; + } } }
# Warning if md5 is in usage if (-f "${General::swroot}/ovpn/certs/servercert.pem") { - my $signature = `/usr/bin/openssl x509 -noout -text -in ${General::swroot}/ovpn/certs/servercert.pem`; - if ($signature =~ /md5WithRSAEncryption/) { + my @signature = &General::system_output("/usr/bin/openssl", "x509", "-noout", "-text", "-in", "${General::swroot}/ovpn/certs/servercert.pem"); + if (grep(/md5WithRSAEncryption/, @signature) ) { $cryptoerror = "$Lang::tr{'ovpn error md5'}"; goto CRYPTO_ERROR; } @@ -241,8 +244,8 @@ sub pkiconfigcheck
# Warning if certificate is not compliant to RFC3280 TLS rules if (-f "${General::swroot}/ovpn/certs/servercert.pem") { - my $extendkeyusage = `/usr/bin/openssl x509 -noout -text -in ${General::swroot}/ovpn/certs/servercert.pem`; - if ($extendkeyusage !~ /TLS Web Server Authentication/) { + my @extendkeyusage = &General::system_output("/usr/bin/openssl", "x509", "-noout", "-text", "-in", "${General::swroot}/ovpn/certs/servercert.pem"); + if ( ! grep(/TLS Web Server Authentication/, @extendkeyusage)) { $cryptowarning = "$Lang::tr{'ovpn warning rfc3280'}"; goto CRYPTO_WARNING; } @@ -734,7 +737,7 @@ sub writecollectdconf { close(COLLECTDVPN);
# Reload collectd afterwards - system("/usr/local/bin/collectdctrl restart &>/dev/null"); + &General::system("/usr/local/bin/collectdctrl", "restart"); }
#hier die refresh page @@ -764,11 +767,11 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'start ovpn server'} || #start openvpn server if ($cgiparams{'ACTION'} eq $Lang::tr{'start ovpn server'}){ &emptyserverlog(); - system('/usr/local/bin/openvpnctrl', '-s'); + &General::system("/usr/local/bin/openvpnctrl", "-s"); } #stop openvpn server if ($cgiparams{'ACTION'} eq $Lang::tr{'stop ovpn server'}){ - system('/usr/local/bin/openvpnctrl', '-k'); + &General::system("/usr/local/bin/openvpnctrl", "-k"); &emptyserverlog(); } # #restart openvpn server @@ -1075,8 +1078,8 @@ unless(-d "${General::swroot}/ovpn/n2nconf/$cgiparams{'NAME'}"){mkdir "${General # Check host certificate if X509 is RFC3280 compliant. # If not, old --ns-cert-type directive will be used. # If appropriate key usage extension exists, new --remote-cert-tls directive will be used. - my $hostcert = `/usr/bin/openssl x509 -text -in ${General::swroot}/ovpn/certs/servercert.pem`; - if ($hostcert !~ /TLS Web Server Authentication/) { + my @hostcert = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "${General::swroot}/ovpn/certs/servercert.pem"); + if ( ! grep(/TLS Web Server Authentication/, @hostcert)) { print CLIENTCONF "ns-cert-type server\n"; } else { print CLIENTCONF "remote-cert-tls server\n"; @@ -1196,7 +1199,8 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'save'} && $cgiparams{'TYPE'} eq '' && $cg # Create ta.key for tls-auth if not presant if ($cgiparams{'TLSAUTH'} eq 'on') { if ( ! -e "${General::swroot}/ovpn/certs/ta.key") { - system('/usr/sbin/openvpn', '--genkey', '--secret', "${General::swroot}/ovpn/certs/ta.key"); + # This system call is safe, because all arguements are passed as an array. + system("/usr/sbin/openvpn", "--genkey", "--secret", "${General::swroot}/ovpn/certs/ta.key"); if ($?) { $errormessage = "$Lang::tr{'openssl produced an error'}: $?"; goto SETTINGS_ERROR; @@ -1219,9 +1223,24 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'save'} && $cgiparams{'TYPE'} eq '' && $cg $vpnsettings{'TLSAUTH'} = $cgiparams{'TLSAUTH'}; #wrtie enable
- if ( $vpnsettings{'ENABLED_BLUE'} eq 'on' ) {system("touch ${General::swroot}/ovpn/enable_blue 2>/dev/null");}else{system("unlink ${General::swroot}/ovpn/enable_blue 2>/dev/null");} - if ( $vpnsettings{'ENABLED_ORANGE'} eq 'on' ) {system("touch ${General::swroot}/ovpn/enable_orange 2>/dev/null");}else{system("unlink ${General::swroot}/ovpn/enable_orange 2>/dev/null");} - if ( $vpnsettings{'ENABLED'} eq 'on' ) {system("touch ${General::swroot}/ovpn/enable 2>/dev/null");}else{system("unlink ${General::swroot}/ovpn/enable 2>/dev/null");} + if ( $vpnsettings{'ENABLED_BLUE'} eq 'on' ) { + &General::system("touch", "${General::swroot}/ovpn/enable_blue"); + } else { + unlink(${General::swroot}/ovpn/enable_blue); + } + + if ( $vpnsettings{'ENABLED_ORANGE'} eq 'on' ) { + &General::system("touch", "${General::swroot}/ovpn/enable_orange"); + } else { + unlink("${General::swroot}/ovpn/enable_orange"); + } + + if ( $vpnsettings{'ENABLED'} eq 'on' ) { + &General::system("touch", "${General::swroot}/ovpn/enable"); + } else { + unlink("${General::swroot}/ovpn/enable"); + } + #new settings for daemon &General::writehash("${General::swroot}/ovpn/settings", %vpnsettings); &writeserverconf();#hier ok @@ -1234,7 +1253,7 @@ SETTINGS_ERROR: &General::readhasharray("${General::swroot}/ovpn/ovpnconfig", %confighash);
# Kill all N2N connections - system("/usr/local/bin/openvpnctrl -kn2n &>/dev/null"); + &General::system("/usr/local/bin/openvpnctrl", "-kn2n");
foreach my $key (keys %confighash) { my $name = $confighash{$cgiparams{'$key'}}[1]; @@ -1243,7 +1262,7 @@ SETTINGS_ERROR: delete $confighash{$cgiparams{'$key'}}; }
- system ("/usr/local/bin/openvpnctrl -drrd $name &>/dev/null"); + &General::system("/usr/local/bin/openvpnctrl", "-drrd", "$name"); } while ($file = glob("${General::swroot}/ovpn/ca/*")) { unlink $file; @@ -1282,7 +1301,7 @@ SETTINGS_ERROR: close FILE; } while ($file = glob("${General::swroot}/ovpn/n2nconf/*")) { - system ("rm -rf $file"); + unlink($file); }
# Remove everything from the collectd configuration @@ -1328,7 +1347,8 @@ END unlink "${General::swroot}/ovpn/ca/$cgiparams{'DH_NAME'}"; } # Create Diffie Hellmann Parameter - system('/usr/bin/openssl', 'dhparam', '-out', "${General::swroot}/ovpn/ca/dh1024.pem", "$cgiparams{'DHLENGHT'}"); + # The system call is safe, because all arguments are passed as an array. + system("/usr/bin/openssl", "dhparam", "-out", "${General::swroot}/ovpn/ca/dh1024.pem", "$cgiparams{'DHLENGHT'}"); if ($?) { $errormessage = "$Lang::tr{'openssl produced an error'}: $?"; unlink ("${General::swroot}/ovpn/ca/dh1024.pem"); @@ -1397,8 +1417,8 @@ END $errormessage = $!; goto UPLOADCA_ERROR; } - my $temp = `/usr/bin/openssl dhparam -text -in $filename`; - if ($temp !~ /DH Parameters: ((2048|3072|4096) bit)/) { + my @temp = &General::system_output("/usr/bin/openssl", "dhparam", "-text", "-in", "$filename"); + if ( ! grep(/DH Parameters: ((2048|3072|4096) bit)/, @temp)) { $errormessage = $Lang::tr{'not a valid dh key'}; unlink ($filename); goto UPLOADCA_ERROR; @@ -1454,8 +1474,8 @@ END $errormessage = $!; goto UPLOADCA_ERROR; } - my $temp = `/usr/bin/openssl x509 -text -in $filename`; - if ($temp !~ /CA:TRUE/i) { + my @temp = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "$filename"); + if ( ! grep(/CA:TRUE/i, @temp )) { $errormessage = $Lang::tr{'not a valid ca certificate'}; unlink ($filename); goto UPLOADCA_ERROR; @@ -1468,11 +1488,19 @@ END } }
- my $casubject = `/usr/bin/openssl x509 -text -in ${General::swroot}/ovpn/ca/$cgiparams{'CA_NAME'}cert.pem`; - $casubject =~ /Subject: (.*)[\n]/; - $casubject = $1; - $casubject =~ s+/Email+, E+; - $casubject =~ s/ ST=/ S=/; + @casubject = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "${General::swroot}/ovpn/ca/$cgiparams{'CA_NAME'}cert.pem"); + my $casubject; + + foreach my $line (@casubject) { + if ($line =~ /Subject: (.*)[\n]/) { + $casubject = $1; + $casubject =~ s+/Email+, E+; + $casubject =~ s/ ST=/ S=/; + + last; + } + } + $casubject = &Header::cleanhtml($casubject);
my $key = &General::findhasharraykey (%cahash); @@ -1494,9 +1522,9 @@ END &Header::openpage($Lang::tr{'ovpn'}, 1, ''); &Header::openbigbox('100%', 'LEFT', '', $errormessage); &Header::openbox('100%', 'LEFT', "$Lang::tr{'ca certificate'}:"); - my $output = `/usr/bin/openssl x509 -text -in ${General::swroot}/ovpn/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem`; - $output = &Header::cleanhtml($output,"y"); - print "<pre>$output</pre>\n"; + my @output = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "${General::swroot}/ovpn/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem"); + @output = &Header::cleanhtml(@output,"y"); + print "<pre>@output</pre>\n"; &Header::closebox(); print "<div align='center'><a href='/cgi-bin/ovpnmain.cgi'>$Lang::tr{'back'}</a></div>"; &Header::closebigbox(); @@ -1515,7 +1543,10 @@ END if ( -f "${General::swroot}/ovpn/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem" ) { print "Content-Type: application/octet-stream\r\n"; print "Content-Disposition: filename=$cahash{$cgiparams{'KEY'}}[0]cert.pem\r\n\r\n"; - print `/usr/bin/openssl x509 -in ${General::swroot}/ovpn/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem`; + + my @tmp = &General::system_output("/usr/bin/openssl", "x509", "-in", "${General::swroot}/ovpn/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem"); + print "@tmp"; + exit(0); } else { $errormessage = $Lang::tr{'invalid key'}; @@ -1530,8 +1561,8 @@ END
if ( -f "${General::swroot}/ovpn/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem" ) { foreach my $key (keys %confighash) { - my $test = `/usr/bin/openssl verify -CAfile ${General::swroot}/ovpn/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem ${General::swroot}/ovpn/certs/$confighash{$key}[1]cert.pem`; - if ($test =~ /: OK/) { + my @test = &General::system_output("/usr/bin/openssl", "verify", "-CAfile", "${General::swroot}/ovpn/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem", "${General::swroot}/ovpn/certs/$confighash{$key}[1]cert.pem"); + if (grep(/: OK/, @test)) { # Delete connection # if ($vpnsettings{'ENABLED'} eq 'on' || # $vpnsettings{'ENABLED_BLUE'} eq 'on') { @@ -1561,8 +1592,8 @@ END my $assignedcerts = 0; if ( -f "${General::swroot}/ovpn/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem" ) { foreach my $key (keys %confighash) { - my $test = `/usr/bin/openssl verify -CAfile ${General::swroot}/ovpn/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem ${General::swroot}/ovpn/certs/$confighash{$key}[1]cert.pem`; - if ($test =~ /: OK/) { + my @test = &General::system_output("/usr/bin/openssl", "verify", "-CAfile", "${General::swroot}/ovpn/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem", "${General::swroot}/ovpn/certs/$confighash{$key}[1]cert.pem"); + if (grep(/: OK/, @test)) { $assignedcerts++; } } @@ -1601,19 +1632,19 @@ END ### }elsif ($cgiparams{'ACTION'} eq $Lang::tr{'show root certificate'} || $cgiparams{'ACTION'} eq $Lang::tr{'show host certificate'}) { - my $output; + my @output; &Header::showhttpheaders(); &Header::openpage($Lang::tr{'ovpn'}, 1, ''); &Header::openbigbox('100%', 'LEFT', '', ''); if ($cgiparams{'ACTION'} eq $Lang::tr{'show root certificate'}) { &Header::openbox('100%', 'LEFT', "$Lang::tr{'root certificate'}:"); - $output = `/usr/bin/openssl x509 -text -in ${General::swroot}/ovpn/ca/cacert.pem`; + @output = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "${General::swroot}/ovpn/ca/cacert.pem"); } else { &Header::openbox('100%', 'LEFT', "$Lang::tr{'host certificate'}:"); - $output = `/usr/bin/openssl x509 -text -in ${General::swroot}/ovpn/certs/servercert.pem`; + @output = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "${General::swroot}/ovpn/certs/servercert.pem"); } - $output = &Header::cleanhtml($output,"y"); - print "<pre>$output</pre>\n"; + @output = &Header::cleanhtml(@output,"y"); + print "<pre>@output</pre>\n"; &Header::closebox(); print "<div align='center'><a href='/cgi-bin/ovpnmain.cgi'>$Lang::tr{'back'}</a></div>"; &Header::closebigbox(); @@ -1627,7 +1658,10 @@ END if ( -f "${General::swroot}/ovpn/ca/cacert.pem" ) { print "Content-Type: application/octet-stream\r\n"; print "Content-Disposition: filename=cacert.pem\r\n\r\n"; - print `/usr/bin/openssl x509 -in ${General::swroot}/ovpn/ca/cacert.pem`; + + my @tmp = &General::system_output("/usr/bin/openssl", "x509", "-in", "${General::swroot}/ovpn/ca/cacert.pem"); + print "@tmp"; + exit(0); }
@@ -1638,7 +1672,10 @@ END if ( -f "${General::swroot}/ovpn/certs/servercert.pem" ) { print "Content-Type: application/octet-stream\r\n"; print "Content-Disposition: filename=servercert.pem\r\n\r\n"; - print `/usr/bin/openssl x509 -in ${General::swroot}/ovpn/certs/servercert.pem`; + + my @tmp = &General::system_output("/usr/bin/openssl", "x509", "-in", "${General::swroot}/ovpn/certs/servercert.pem"); + print "@tmp"; + exit(0); }
@@ -1649,7 +1686,13 @@ END if ( -f "${General::swroot}/ovpn/certs/ta.key" ) { print "Content-Type: application/octet-stream\r\n"; print "Content-Disposition: filename=ta.key\r\n\r\n"; - print `/bin/cat ${General::swroot}/ovpn/certs/ta.key`; + + open(FILE, "${General::swroot}/ovpn/certs/ta.key"); + my @tmp = <FILE>; + close(FILE); + + print "@tmp"; + exit(0); }
@@ -1926,6 +1969,7 @@ END } # Sign the host certificate request + # This system call is safe, because all argeuments are passed as an array. system('/usr/bin/openssl', 'ca', '-days', '999999', '-batch', '-notext', '-in', "${General::swroot}/ovpn/certs/serverreq.pem", @@ -1947,6 +1991,7 @@ END }
# Create an empty CRL + # System call is safe, because all arguments are passed as array. system('/usr/bin/openssl', 'ca', '-gencrl', '-out', "${General::swroot}/ovpn/crls/cacrl.pem", '-config', "${General::swroot}/ovpn/openssl/ovpn.cnf" ); @@ -1962,6 +2007,7 @@ END # &cleanssldatabase(); } # Create ta.key for tls-auth + # This system call is safe, because all arguments are passed as an array. system('/usr/sbin/openvpn', '--genkey', '--secret', "${General::swroot}/ovpn/certs/ta.key"); if ($?) { $errormessage = "$Lang::tr{'openssl produced an error'}: $?"; @@ -1969,6 +2015,7 @@ END goto ROOTCERT_ERROR; } # Create Diffie Hellmann Parameter + # The system call is safe, because all arguments are passed as an array. system('/usr/bin/openssl', 'dhparam', '-out', "${General::swroot}/ovpn/ca/dh1024.pem", "$cgiparams{'DHLENGHT'}"); if ($?) { $errormessage = "$Lang::tr{'openssl produced an error'}: $?"; @@ -2083,7 +2130,7 @@ END }
ROOTCERT_SUCCESS: - system ("chmod 600 ${General::swroot}/ovpn/certs/serverkey.pem"); + &General::system("chmod", "600", "${General::swroot}/ovpn/certs/serverkey.pem"); # if ($vpnsettings{'ENABLED'} eq 'on' || # $vpnsettings{'ENABLE_BLUE'} eq 'on') { # system('/usr/local/bin/ipsecctrl', 'S'); @@ -2101,8 +2148,12 @@ END
&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}'`; + my $n2nactive = ''; + my @ps = &General::system_output("/bin/ps", "ax"); + + if(grep(/$confighash{$cgiparams{'KEY'}}[1]/, @ps)) { + $n2nactive = "1"; + }
if ($confighash{$cgiparams{'KEY'}}) { if ($confighash{$cgiparams{'KEY'}}[0] eq 'off') { @@ -2110,7 +2161,7 @@ END &General::writehasharray("${General::swroot}/ovpn/ovpnconfig", %confighash);
if ($confighash{$cgiparams{'KEY'}}[3] eq 'net'){ - system('/usr/local/bin/openvpnctrl', '-sn2n', $confighash{$cgiparams{'KEY'}}[1]); + &General::system("/usr/local/bin/openvpnctrl", "-sn2n", "$confighash{$cgiparams{'KEY'}}[1]"); &writecollectdconf(); } } else { @@ -2120,7 +2171,7 @@ END
if ($confighash{$cgiparams{'KEY'}}[3] eq 'net'){ if ($n2nactive ne '') { - system('/usr/local/bin/openvpnctrl', '-kn2n', $confighash{$cgiparams{'KEY'}}[1]); + &General::system("/usr/local/bin/openvpnctrl", "-kn2n", "$confighash{$cgiparams{'KEY'}}[1]"); &writecollectdconf(); }
@@ -2204,8 +2255,8 @@ if ($confighash{$cgiparams{'KEY'}}[3] eq 'net'){ # Check host certificate if X509 is RFC3280 compliant. # If not, old --ns-cert-type directive will be used. # If appropriate key usage extension exists, new --remote-cert-tls directive will be used. - my $hostcert = `/usr/bin/openssl x509 -text -in ${General::swroot}/ovpn/certs/servercert.pem`; - if ($hostcert !~ /TLS Web Server Authentication/) { + my @hostcert = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "${General::swroot}/ovpn/certs/servercert.pem"); + if (! grep(/TLS Web Server Authentication/, @hostcert)) { print CLIENTCONF "ns-cert-type server\n"; } else { print CLIENTCONF "remote-cert-tls server\n"; @@ -2315,6 +2366,7 @@ else $zip->addFile("${General::swroot}/ovpn/ca/cacert.pem", "cacert.pem") or die "Can't add file cacert.pem\n";
# Extract the certificate + # This system call is safe, because all arguments are passed as an array. system('/usr/bin/openssl', 'pkcs12', '-in', "${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1].p12", '-clcerts', '-nokeys', '-nodes', '-out', "$file_crt" , '-passin', 'pass:'); if ($?) { @@ -2325,6 +2377,7 @@ else print CLIENTCONF ";cert $confighash{$cgiparams{'KEY'}}[1].pem\r\n";
# Extract the key + # This system call is safe, because all arguments are passed as an array. system('/usr/bin/openssl', 'pkcs12', '-in', "${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1].p12", '-nocerts', '-nodes', '-out', "$file_key", '-passin', 'pass:'); if ($?) { @@ -2361,8 +2414,8 @@ else # Check host certificate if X509 is RFC3280 compliant. # If not, old --ns-cert-type directive will be used. # If appropriate key usage extension exists, new --remote-cert-tls directive will be used. - my $hostcert = `/usr/bin/openssl x509 -text -in ${General::swroot}/ovpn/certs/servercert.pem`; - if ($hostcert !~ /TLS Web Server Authentication/) { + my @hostcert = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "${General::swroot}/ovpn/certs/servercert.pem"); + if (! grep(/TLS Web Server Authentication/, @hostcert)) { print CLIENTCONF "ns-cert-type server\r\n"; } else { print CLIENTCONF "remote-cert-tls server\r\n"; @@ -2464,8 +2517,8 @@ else
if ($confighash{$cgiparams{'KEY'}}) { # Revoke certificate if certificate was deleted and rewrite the CRL - my $temp = `/usr/bin/openssl ca -revoke ${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem -config ${General::swroot}/ovpn/openssl/ovpn.cnf`; - my $tempA = `/usr/bin/openssl ca -gencrl -out ${General::swroot}/ovpn/crls/cacrl.pem -config ${General::swroot}/ovpn/openssl/ovpn.cnf`; + &General::system("/usr/bin/openssl", "ca", "-revoke", "${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem", "-config", "${General::swroot}/ovpn/openssl/ovpn.cnf)"; + &General::system("/usr/bin/openssl", "ca", "-gencrl", "-out", "${General::swroot}/ovpn/crls/cacrl.pem", "-config", "${General::swroot}/ovpn/openssl/ovpn.cnf");
### # m.a.d net2net @@ -2473,7 +2526,7 @@ else
if ($confighash{$cgiparams{'KEY'}}[3] eq 'net') { # Stop the N2N connection before it is removed - system('/usr/local/bin/openvpnctrl', '-kn2n', $confighash{$cgiparams{'KEY'}}[1]); + &General::system("/usr/local/bin/openvpnctrl", "-kn2n", "$confighash{$cgiparams{'KEY'}}[1]");
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"); @@ -2515,10 +2568,10 @@ else # CCD end # Update collectd configuration and delete all RRD files of the removed connection &writecollectdconf(); - system ('/usr/local/bin/openvpnctrl', '-drrd', $confighash{$cgiparams{'KEY'}}[1]); + &General::system("/usr/local/bin/openvpnctrl", "-drrd", "$confighash{$cgiparams{'KEY'}}[1]");
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`; + &General::system("/usr/bin/openssl", "ca", "-gencrl", "-out", "${General::swroot}/ovpn/crls/cacrl.pem", "-config", "${General::swroot}/ovpn/openssl/ovpn.cnf"); &General::writehasharray("${General::swroot}/ovpn/ovpnconfig", %confighash);
} else { @@ -2534,7 +2587,12 @@ else
print "Content-Disposition: filename=" . $confighash{$cgiparams{'KEY'}}[1] . ".p12\r\n"; print "Content-Type: application/octet-stream\r\n\r\n"; - print `/bin/cat ${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1].p12`; + + open(FILE, "${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1].p12"); + my @tmp = <FILE>; + close(FILE); + + print "@tmp"; exit (0);
### @@ -2548,9 +2606,9 @@ else &Header::openpage($Lang::tr{'ovpn'}, 1, ''); &Header::openbigbox('100%', 'LEFT', '', ''); &Header::openbox('100%', 'LEFT', "$Lang::tr{'certificate'}:"); - my $output = `/usr/bin/openssl x509 -text -in ${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem`; - $output = &Header::cleanhtml($output,"y"); - print "<pre>$output</pre>\n"; + my @output = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem"); + @output = &Header::cleanhtml(@output,"y"); + print "<pre>@output</pre>\n"; &Header::closebox(); print "<div align='center'><a href='/cgi-bin/ovpnmain.cgi'>$Lang::tr{'back'}</a></div>"; &Header::closebigbox(); @@ -2570,9 +2628,9 @@ else &Header::openpage($Lang::tr{'ovpn'}, 1, ''); &Header::openbigbox('100%', 'LEFT', '', ''); &Header::openbox('100%', 'LEFT', "$Lang::tr{'dh'}:"); - my $output = `/usr/bin/openssl dhparam -text -in ${General::swroot}/ovpn/ca/dh1024.pem`; - $output = &Header::cleanhtml($output,"y"); - print "<pre>$output</pre>\n"; + my @output = &General::system_output("/usr/bin/openssl", "dhparam", "-text", "-in", "${General::swroot}/ovpn/ca/dh1024.pem"); + @output = &Header::cleanhtml(@output,"y"); + print "<pre>@output</pre>\n"; &Header::closebox(); print "<div align='center'><a href='/cgi-bin/ovpnmain.cgi'>$Lang::tr{'back'}</a></div>"; &Header::closebigbox(); @@ -2592,9 +2650,13 @@ else &Header::openpage($Lang::tr{'ovpn'}, 1, ''); &Header::openbigbox('100%', 'LEFT', '', ''); &Header::openbox('100%', 'LEFT', "$Lang::tr{'ta key'}:"); - my $output = `/bin/cat ${General::swroot}/ovpn/certs/ta.key`; - $output = &Header::cleanhtml($output,"y"); - print "<pre>$output</pre>\n"; + + open(FILE, "${General::swroot}/ovpn/certs/ta.key"); + my @output = <FILE>; + close(FILE); + + @output = &Header::cleanhtml(@output,"y"); + print "<pre>@output</pre>\n"; &Header::closebox(); print "<div align='center'><a href='/cgi-bin/ovpnmain.cgi'>$Lang::tr{'back'}</a></div>"; &Header::closebigbox(); @@ -2615,9 +2677,9 @@ else &Header::openpage($Lang::tr{'ovpn'}, 1, ''); &Header::openbigbox('100%', 'LEFT', '', ''); &Header::openbox('100%', 'LEFT', "$Lang::tr{'crl'}:"); - my $output = `/usr/bin/openssl crl -text -noout -in ${General::swroot}/ovpn/crls/cacrl.pem`; - $output = &Header::cleanhtml($output,"y"); - print "<pre>$output</pre>\n"; + my @output = &General::system_output("/usr/bin/openssl", "crl", "-text", "-noout", "-in", "${General::swroot}/ovpn/crls/cacrl.pem"); + @output = &Header::cleanhtml(@output,"y"); + print "<pre>@output</pre>\n"; &Header::closebox(); print "<div align='center'><a href='/cgi-bin/ovpnmain.cgi'>$Lang::tr{'back'}</a></div>"; &Header::closebigbox(); @@ -3105,7 +3167,12 @@ END if ( -f "${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem") { print "Content-Disposition: filename=" . $confighash{$cgiparams{'KEY'}}[1] . "cert.pem\r\n"; print "Content-Type: application/octet-stream\r\n\r\n"; - print `/bin/cat ${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem`; + + open(FILE, "${General::swroot}/ovpn/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem"); + my @tmp = <FILE>; + close(FILE); + + print "@tmp"; exit (0); }
@@ -4031,6 +4098,7 @@ if ($cgiparams{'TYPE'} eq 'net') {
# Sign the certificate request and move it # Sign the host certificate request + # The system call is safe, because all arguments are passed as an array. system('/usr/bin/openssl', 'ca', '-days', "$cgiparams{'DAYS_VALID'}", '-batch', '-notext', '-in', $filename, @@ -4047,11 +4115,19 @@ if ($cgiparams{'TYPE'} eq 'net') { &deletebackupcert(); }
- my $temp = `/usr/bin/openssl x509 -text -in ${General::swroot}/ovpn/certs/$cgiparams{'NAME'}cert.pem`; - $temp =~ /Subject:.*CN\s?=\s?(.*)[\n]/; - $temp = $1; - $temp =~ s+/Email+, E+; - $temp =~ s/ ST=/ S=/; + my @temp = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "${General::swroot}/ovpn/certs/$cgiparams{'NAME'}cert.pem"); + my $temp; + + foreach my $line (@temp) { + if ($line =~ /Subject:.*CN\s?=\s?(.*)[\n]/) { + $temp = $1; + $temp =~ s+/Email+, E+; + $temp =~ s/ ST=/ S=/; + + last; + } + } + $cgiparams{'CERT_NAME'} = $temp; $cgiparams{'CERT_NAME'} =~ s/,//g; $cgiparams{'CERT_NAME'} =~ s/'//g; @@ -4077,13 +4153,13 @@ if ($cgiparams{'TYPE'} eq 'net') {
# Verify the certificate has a valid CA and move it my $validca = 0; - my $test = `/usr/bin/openssl verify -CAfile ${General::swroot}/ovpn/ca/cacert.pem $filename`; - if ($test =~ /: OK/) { + my @test = &General::system_output("/usr/bin/openssl", "verify", "-CAfile", "${General::swroot}/ovpn/ca/cacert.pem", "$filename"); + if (grep(/: OK/, @test)) { $validca = 1; } else { foreach my $key (keys %cahash) { - $test = `/usr/bin/openssl verify -CAfile ${General::swroot}/ovpn/ca/$cahash{$key}[0]cert.pem $filename`; - if ($test =~ /: OK/) { + @test = &General::system_output("/usr/bin/openssl", "verify", "-CAfile", "${General::swroot}/ovpn/ca/$cahash{$key}[0]cert.pem", "$filename"); + if (grep(/: OK/, @test)) { $validca = 1; } } @@ -4101,11 +4177,19 @@ if ($cgiparams{'TYPE'} eq 'net') { } }
- my $temp = `/usr/bin/openssl x509 -text -in ${General::swroot}/ovpn/certs/$cgiparams{'NAME'}cert.pem`; - $temp =~ /Subject:.*CN\s?=\s?(.*)[\n]/; - $temp = $1; - $temp =~ s+/Email+, E+; - $temp =~ s/ ST=/ S=/; + my @temp = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "${General::swroot}/ovpn/certs/$cgiparams{'NAME'}cert.pem"); + my $temp; + + foreach my $line (@temp) { + if ($line =~ /Subject:.*CN\s?=\s?(.*)[\n]/) { + $temp = $1; + $temp =~ s+/Email+, E+; + $temp =~ s/ ST=/ S=/; + + last; + } + } + $cgiparams{'CERT_NAME'} = $temp; $cgiparams{'CERT_NAME'} =~ s/,//g; $cgiparams{'CERT_NAME'} =~ s/'//g; @@ -4232,6 +4316,7 @@ if ($cgiparams{'TYPE'} eq 'net') { } # Sign the host certificate request + # The system call is safe, because all arguments are passed as an array. system('/usr/bin/openssl', 'ca', '-days', "$cgiparams{'DAYS_VALID'}", '-batch', '-notext', '-in', "${General::swroot}/ovpn/certs/$cgiparams{'NAME'}req.pem", @@ -4250,6 +4335,7 @@ if ($cgiparams{'TYPE'} eq 'net') { }
# Create the pkcs12 file + # The system call is safe, because all arguments are passed as an array. system('/usr/bin/openssl', 'pkcs12', '-export', '-inkey', "${General::swroot}/ovpn/certs/$cgiparams{'NAME'}key.pem", '-in', "${General::swroot}/ovpn/certs/$cgiparams{'NAME'}cert.pem", @@ -4415,21 +4501,24 @@ if ($cgiparams{'TYPE'} eq 'net') { if ($cgiparams{'TYPE'} eq 'net') { - if (-e "/var/run/$confighash{$key}[1]n2n.pid") { - system('/usr/local/bin/openvpnctrl', '-kn2n', $confighash{$cgiparams{'KEY'}}[1]); + if (-e "/var/run/$confighash{$key}[1]n2n.pid") { + &General::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); + &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]); - } - } + &General::system("/usr/local/bin/openvpnctrl", "-sn2n", "$confighash{$cgiparams{'KEY'}}[1]"); + } + }
### # m.a.d n2n end @@ -5046,7 +5135,9 @@ END &General::readhasharray("${General::swroot}/ovpn/caconfig", %cahash); &General::readhasharray("${General::swroot}/ovpn/ovpnconfig", %confighash);
- my @status = `/bin/cat /var/run/ovpnserver.log`; + open(FILE, "/var/run/ovpnserver.log"); + my @status = <FILE>; + close(FILE);
if ($cgiparams{'VPN_IP'} eq '' && -e "${General::swroot}/red/active") { if (open(IPADDR, "${General::swroot}/red/local-ipaddress")) { @@ -5358,9 +5449,17 @@ END #} else { #print "<td align='left'> </td>"; #} - my $cavalid = `/usr/bin/openssl x509 -text -in ${General::swroot}/ovpn/certs/$confighash{$key}[1]cert.pem`; - $cavalid =~ /Not After : (.*)[\n]/; - $cavalid = $1; + my @cavalid = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "${General::swroot}/ovpn/certs/$confighash{$key}[1]cert.pem"); + my $cavalid; + + foreach my $line (@cavalid) { + if ($line =~ /Not After : (.*)[\n]/) { + $cavalid = $1; + + last; + } + } + print "<td align='center' $col>$confighash{$key}[25]</td>"; $col1="bgcolor='${Header::colourred}'"; my $active = "<b><font color='#FFFFFF'>$Lang::tr{'capsclosed'}</font></b>"; @@ -5571,11 +5670,19 @@ END my $col4="bgcolor='$color{'color20'}'";
if (-f "${General::swroot}/ovpn/ca/cacert.pem") { - my $casubject = `/usr/bin/openssl x509 -text -in ${General::swroot}/ovpn/ca/cacert.pem`; - $casubject =~ /Subject: (.*)[\n]/; - $casubject = $1; - $casubject =~ s+/Email+, E+; - $casubject =~ s/ ST=/ S=/; + my @casubject = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "${General::swroot}/ovpn/ca/cacert.pem"); + my $casubject; + + foreach my $line (@casubject) { + if ($line =~ /Subject: (.*)[\n]/) { + $casubject = $1; + $casubject =~ s+/Email+, E+; + $casubject =~ s/ ST=/ S=/; + + last; + } + } + print <<END; <tr> <td class='base' $col1>$Lang::tr{'root certificate'}</td> @@ -5605,11 +5712,18 @@ END }
if (-f "${General::swroot}/ovpn/certs/servercert.pem") { - my $hostsubject = `/usr/bin/openssl x509 -text -in ${General::swroot}/ovpn/certs/servercert.pem`; - $hostsubject =~ /Subject: (.*)[\n]/; - $hostsubject = $1; - $hostsubject =~ s+/Email+, E+; - $hostsubject =~ s/ ST=/ S=/; + my @hostsubject = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "${General::swroot}/ovpn/certs/servercert.pem"); + my $hostsubject; + + foreach my $line (@hostsubject) { + if ($line =~ /Subject: (.*)[\n]/) { + $hostsubject = $1; + $hostsubject =~ s+/Email+, E+; + $hostsubject =~ s/ ST=/ S=/; + + last; + } + }
print <<END; <tr> @@ -5641,10 +5755,16 @@ END
# Adding DH parameter to chart if (-f "${General::swroot}/ovpn/ca/dh1024.pem") { - my $dhsubject = `/usr/bin/openssl dhparam -text -in ${General::swroot}/ovpn/ca/dh1024.pem`; - $dhsubject =~ / (.*)[\n]/; - $dhsubject = $1; + my @dhsubject = &System_output("/usr/bin/openssl", "dhparam", "-text", "-in", "${General::swroot}/ovpn/ca/dh1024.pem"); + my $dhsubject;
+ foreach my $line (@dhsubject) { + if ($line =~ / (.*)[\n]/) { + $dhsubject = $1; + + last; + } + }
print <<END; <tr> @@ -5674,9 +5794,19 @@ END
# Adding ta.key to chart if (-f "${General::swroot}/ovpn/certs/ta.key") { - my $tasubject = `/bin/cat ${General::swroot}/ovpn/certs/ta.key`; - $tasubject =~ /# (.*)[\n]/; - $tasubject = $1; + open(FILE, "${General::swroot}/ovpn/certs/ta.key"); + my @tasubject = <FILE>; + close(FILE); + + my $tasubject; + foreach my $line (@tasubject) { + if($line =~ /# (.*)[\n]/) { + $tasubject = $1; + + last; + } + } + print <<END;
<tr> diff --git a/html/cgi-bin/pakfire.cgi b/html/cgi-bin/pakfire.cgi index a9e12d23c..631587ce2 100644 --- a/html/cgi-bin/pakfire.cgi +++ b/html/cgi-bin/pakfire.cgi @@ -54,15 +54,13 @@ sub refreshpage{&Header::openbox( 'Waiting', 1, "<meta http-equiv='refresh' cont &Header::openpage($Lang::tr{'pakfire configuration'}, 1); &Header::openbigbox('100%', 'left', '', $errormessage);
-if ($cgiparams{'ACTION'} eq 'install'){ +if (($cgiparams{'ACTION'} eq 'install') && (! -e $Pakfire::lockfile)) { $cgiparams{'INSPAKS'} =~ s/|/\ /g; if ("$cgiparams{'FORCE'}" eq "on") { - my $command = "/usr/local/bin/pakfire install --non-interactive --no-colors $cgiparams{'INSPAKS'} &>/dev/null &"; - system("$command"); - system("/bin/sleep 1"); + &General::system_background("/usr/local/bin/pakfire", "install", "--non-interactive", "--no-colors", $cgiparams{'INSPAKS'}); } else { &Header::openbox("100%", "center", $Lang::tr{'request'}); - my @output = `/usr/local/bin/pakfire resolvedeps --no-colors $cgiparams{'INSPAKS'}`; + my @output = &General::system_output("/usr/local/bin/pakfire", "resolvedeps", "--no-colors", $cgiparams{'INSPAKS'}); print <<END; <table><tr><td colspan='2'>$Lang::tr{'pakfire install package'}.$cgiparams{'INSPAKS'}.$Lang::tr{'pakfire possible dependency'} <pre> @@ -93,16 +91,14 @@ END &Header::closepage(); exit; } -} elsif ($cgiparams{'ACTION'} eq 'remove') { +} elsif (($cgiparams{'ACTION'} eq 'remove') && (! -e $Pakfire::lockfile)) {
$cgiparams{'DELPAKS'} =~ s/|/\ /g; if ("$cgiparams{'FORCE'}" eq "on") { - my $command = "/usr/local/bin/pakfire remove --non-interactive --no-colors $cgiparams{'DELPAKS'} &>/dev/null &"; - system("$command"); - system("/bin/sleep 1"); + &General::system_background("/usr/local/bin/pakfire", "remove", "--non-interactive", "--no-colors", $cgiparams{'DELPAKS'}); } else { &Header::openbox("100%", "center", $Lang::tr{'request'}); - my @output = `/usr/local/bin/pakfire resolvedeps --no-colors $cgiparams{'DELPAKS'}`; + my @output = &General::system_output("/usr/local/bin/pakfire", "resolvedeps", "--no-colors", $cgiparams{'DELPAKS'}); print <<END; <table><tr><td colspan='2'>$Lang::tr{'pakfire uninstall package'}.$cgiparams{'DELPAKS'}.$Lang::tr{'pakfire possible dependency'} <pre> @@ -134,14 +130,10 @@ END exit; }
-} elsif ($cgiparams{'ACTION'} eq 'update') { - - system("/usr/local/bin/pakfire update --force --no-colors &>/dev/null &"); - system("/bin/sleep 1"); -} elsif ($cgiparams{'ACTION'} eq 'upgrade') { - my $command = "/usr/local/bin/pakfire upgrade -y --no-colors &>/dev/null &"; - system("$command"); - system("/bin/sleep 1"); +} elsif (($cgiparams{'ACTION'} eq 'update') && (! -e $Pakfire::lockfile)) { + &General::system_background("/usr/local/bin/pakfire", "update", "--force", "--no-colors"); +} elsif (($cgiparams{'ACTION'} eq 'upgrade') && (!-e $Pakfire::lockfile)) { + &General::system_background("/usr/local/bin/pakfire", "upgrade", "-y", "--no-colors"); } elsif ($cgiparams{'ACTION'} eq "$Lang::tr{'save'}") { $pakfiresettings{"TREE"} = $cgiparams{"TREE"};
@@ -154,7 +146,7 @@ END &General::writehash("${General::swroot}/pakfire/settings", %pakfiresettings);
# Update lists - system("/usr/local/bin/pakfire update --force --no-colors &>/dev/null &"); + &General::system_background("/usr/local/bin/pakfire", "update", "--force", "--no-colors"); } }
@@ -176,9 +168,7 @@ if ($errormessage) { &Header::closebox(); }
-my $return = `pidof pakfire`; -chomp($return); -if ($return) { +if (-e $Pakfire::lockfile) { &Header::openbox( 'Waiting', 1, "<meta http-equiv='refresh' content='10;'>" ); print <<END; <table> diff --git a/html/cgi-bin/pppsetup.cgi b/html/cgi-bin/pppsetup.cgi index 7597bfbc7..519a062bc 100644 --- a/html/cgi-bin/pppsetup.cgi +++ b/html/cgi-bin/pppsetup.cgi @@ -39,6 +39,8 @@ my %checked=(); my @profilenames=(); my $errormessage = ''; my $maxprofiles = 5; + +# This call is safe, because no user input will be processed. my $kernel=`/bin/uname -r | /usr/bin/tr -d '\012'`;
my %color = (); @@ -177,7 +179,12 @@ elsif ($pppsettings{'ACTION'} eq $Lang::tr{'save'}) $errormessage = $Lang::tr{'invalid input'}; goto ERROR; }
- if( $pppsettings{'RECONNECTION'} eq 'dialondemand' && `/bin/cat ${General::swroot}/ddns/config` =~ /,on$/m ) { + # Read-in ddns config file, to check if at least one provider is enabled. + open(FILE, "${General::swroot}/ddns/config)"; + my @ddns_config = <FILE> + close(FILE); + + if( $pppsettings{'RECONNECTION'} eq 'dialondemand' && grep(/on/, @ddns_config) ) { $errormessage = $Lang::tr{'dod not compatible with ddns'}; goto ERROR; }
@@ -520,7 +527,12 @@ print <<END END ;
-my $atmdev=`cat /proc/net/atm/devices 2>/dev/null | grep 0`; +# Read-in atm devices from proc. +open(PROC, "/proc/net/atm/devices"); +my @patm_devices = <PROC>; +close(PROC); + +my $atmdev = grep(/0/, @atm_devices); chomp ($atmdev); if ($atmdev ne '') { print <<END @@ -962,7 +974,10 @@ sub updatesettings unlink("${General::swroot}/ppp/settings"); link("${General::swroot}/ppp/settings-$pppsettings{'PROFILE'}", "${General::swroot}/ppp/settings"); - system ("/usr/bin/touch", "${General::swroot}/ppp/updatesettings"); + + # Write updatesettings file. + open(FILE, ">/${General::swroot}/ppp/updatesettings"); + close(FILE); }
sub writesecrets diff --git a/html/cgi-bin/proxy.cgi b/html/cgi-bin/proxy.cgi index b6d71db84..1b949d5b6 100644 --- a/html/cgi-bin/proxy.cgi +++ b/html/cgi-bin/proxy.cgi @@ -2,7 +2,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2020 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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 # @@ -32,7 +32,7 @@ require "${General::swroot}/header.pl";
require "${General::swroot}/ids-functions.pl";
-my @squidversion = `/usr/sbin/squid -v`; +my @squidversion = &General::system_output("/usr/sbin/squid", "-v"); my $http_port='81'; my $https_port='444';
@@ -131,35 +131,35 @@ unless (-d "$raddir") { mkdir("$raddir"); } unless (-d "$identdir") { mkdir("$identdir"); } unless (-d "$credir") { mkdir("$credir"); }
-unless (-e $cre_groups) { system("touch $cre_groups"); } -unless (-e $cre_svhosts) { system("touch $cre_svhosts"); } - -unless (-e $userdb) { system("touch $userdb"); } -unless (-e $stdgrp) { system("touch $stdgrp"); } -unless (-e $extgrp) { system("touch $extgrp"); } -unless (-e $disgrp) { system("touch $disgrp"); } - -unless (-e $acl_src_subnets) { system("touch $acl_src_subnets"); } -unless (-e $acl_src_banned_ip) { system("touch $acl_src_banned_ip"); } -unless (-e $acl_src_banned_mac) { system("touch $acl_src_banned_mac"); } -unless (-e $acl_src_unrestricted_ip) { system("touch $acl_src_unrestricted_ip"); } -unless (-e $acl_src_unrestricted_mac) { system("touch $acl_src_unrestricted_mac"); } -unless (-e $acl_src_noaccess_ip) { system("touch $acl_src_noaccess_ip"); } -unless (-e $acl_src_noaccess_mac) { system("touch $acl_src_noaccess_mac"); } -unless (-e $acl_dst_noauth) { system("touch $acl_dst_noauth"); } -unless (-e $acl_dst_noauth_dom) { system("touch $acl_dst_noauth_dom"); } -unless (-e $acl_dst_noauth_net) { system("touch $acl_dst_noauth_net"); } -unless (-e $acl_dst_noauth_url) { system("touch $acl_dst_noauth_url"); } -unless (-e $acl_dst_nocache) { system("touch $acl_dst_nocache"); } -unless (-e $acl_dst_nocache_dom) { system("touch $acl_dst_nocache_dom"); } -unless (-e $acl_dst_nocache_net) { system("touch $acl_dst_nocache_net"); } -unless (-e $acl_dst_nocache_url) { system("touch $acl_dst_nocache_url"); } -unless (-e $acl_dst_throttle) { system("touch $acl_dst_throttle"); } -unless (-e $acl_ports_safe) { system("touch $acl_ports_safe"); } -unless (-e $acl_ports_ssl) { system("touch $acl_ports_ssl"); } -unless (-e $acl_include) { system("touch $acl_include"); } - -unless (-e $mimetypes) { system("touch $mimetypes"); } +unless (-e $cre_groups) { &General::system("touch", "$cre_groups"); } +unless (-e $cre_svhosts) { &General::system("touch $cre_svhosts"); } + +unless (-e $userdb) { &General::system("touch", "$userdb"); } +unless (-e $stdgrp) { &General::system("touch", "$stdgrp"); } +unless (-e $extgrp) { &General::system("touch", "$extgrp"); } +unless (-e $disgrp) { &General::system("touch", "$disgrp"); } + +unless (-e $acl_src_subnets) { &General::system("touch", "$acl_src_subnets"); } +unless (-e $acl_src_banned_ip) { &General::system("touch", "$acl_src_banned_ip"); } +unless (-e $acl_src_banned_mac) { &General::system("touch", "$acl_src_banned_mac"); } +unless (-e $acl_src_unrestricted_ip) { &General::system("touch", "$acl_src_unrestricted_ip"); } +unless (-e $acl_src_unrestricted_mac) { &General::system("touch", "$acl_src_unrestricted_mac"); } +unless (-e $acl_src_noaccess_ip) { &General::system("touch", "$acl_src_noaccess_ip"); } +unless (-e $acl_src_noaccess_mac) { &General::system("touch", "$acl_src_noaccess_mac"); } +unless (-e $acl_dst_noauth) { &General::system("touch", "$acl_dst_noauth"); } +unless (-e $acl_dst_noauth_dom) { &General::system("touch", "$acl_dst_noauth_dom"); } +unless (-e $acl_dst_noauth_net) { &General::system("touch", "$acl_dst_noauth_net"); } +unless (-e $acl_dst_noauth_url) { &General::system("touch", "$acl_dst_noauth_url"); } +unless (-e $acl_dst_nocache) { &General::system("touch", "$acl_dst_nocache"); } +unless (-e $acl_dst_nocache_dom) { &General::system("touch", "$acl_dst_nocache_dom"); } +unless (-e $acl_dst_nocache_net) { &General::system("touch", "$acl_dst_nocache_net"); } +unless (-e $acl_dst_nocache_url) { &General::system("touch", "$acl_dst_nocache_url"); } +unless (-e $acl_dst_throttle) { &General::system("touch", "$acl_dst_throttle"); } +unless (-e $acl_ports_safe) { &General::system("touch", "$acl_ports_safe"); } +unless (-e $acl_ports_ssl) { &General::system("touch", "$acl_ports_ssl"); } +unless (-e $acl_include) { &General::system("touch", "$acl_include"); } + +unless (-e $mimetypes) { &General::system("touch", "$mimetypes"); }
my $HAVE_NTLM_AUTH = (-e "/usr/bin/ntlm_auth");
@@ -188,7 +188,7 @@ $proxysettings{'ADMIN_MAIL_ADDRESS'} = ''; $proxysettings{'ADMIN_PASSWORD'} = ''; $proxysettings{'ERR_LANGUAGE'} = 'en'; $proxysettings{'ERR_DESIGN'} = 'ipfire'; -$proxysettings{'SUPPRESS_VERSION'} = 'off'; +$proxysettings{'SUPPRESS_VERSION'} = 'on'; $proxysettings{'FORWARD_VIA'} = 'off'; $proxysettings{'FORWARD_IPADDRESS'} = 'off'; $proxysettings{'FORWARD_USERNAME'} = 'off'; @@ -226,8 +226,6 @@ $proxysettings{'THROTTLING_GREEN_HOST'} = 'unlimited'; $proxysettings{'THROTTLING_BLUE_TOTAL'} = 'unlimited'; $proxysettings{'THROTTLING_BLUE_HOST'} = 'unlimited'; $proxysettings{'ENABLE_MIME_FILTER'} = 'off'; -$proxysettings{'FAKE_USERAGENT'} = ''; -$proxysettings{'FAKE_REFERER'} = ''; $proxysettings{'AUTH_METHOD'} = 'none'; $proxysettings{'AUTH_REALM'} = ''; $proxysettings{'AUTH_MAX_USERIP'} = ''; @@ -385,7 +383,7 @@ if (($proxysettings{'ACTION'} eq $Lang::tr{'save'}) || ($proxysettings{'ACTION'} $errormessage = $Lang::tr{'advproxy errmsg mem cache size'}; goto ERROR; } - my @free = `/usr/bin/free`; + my @free = &General::system_output("/usr/bin/free"); $free[1] =~ m/(\d+)/; $cachemem = int $1 / 2048; if ($proxysettings{'CACHE_MEM'} > $cachemem) { @@ -632,25 +630,25 @@ ERROR:
if ($proxysettings{'CACHEMGR'} eq 'on'){&writecachemgr;}
- system ('/usr/local/bin/squidctrl', 'disable'); + &General::system ('/usr/local/bin/squidctrl', 'disable'); unlink "${General::swroot}/proxy/enable"; unlink "${General::swroot}/proxy/transparent"; unlink "${General::swroot}/proxy/enable_blue"; unlink "${General::swroot}/proxy/transparent_blue";
if ($proxysettings{'ENABLE'} eq 'on') { - system ('/usr/bin/touch', "${General::swroot}/proxy/enable"); - system ('/usr/local/bin/squidctrl', 'enable'); } + &General::system('/usr/bin/touch', "${General::swroot}/proxy/enable"); + &General::system('/usr/local/bin/squidctrl', 'enable'); } if ($proxysettings{'TRANSPARENT'} eq 'on' && $proxysettings{'ENABLE'} eq 'on') { - system ('/usr/bin/touch', "${General::swroot}/proxy/transparent"); } + &General::system('/usr/bin/touch', "${General::swroot}/proxy/transparent"); } if ($proxysettings{'ENABLE_BLUE'} eq 'on') { - system ('/usr/bin/touch', "${General::swroot}/proxy/enable_blue"); - system ('/usr/local/bin/squidctrl', 'enable'); } + &General::system('/usr/bin/touch', "${General::swroot}/proxy/enable_blue"); + &General::system('/usr/local/bin/squidctrl', 'enable'); } if ($proxysettings{'TRANSPARENT_BLUE'} eq 'on' && $proxysettings{'ENABLE_BLUE'} eq 'on') { - system ('/usr/bin/touch', "${General::swroot}/proxy/transparent_blue"); } + &General::system('/usr/bin/touch', "${General::swroot}/proxy/transparent_blue"); }
- if ($proxysettings{'ACTION'} eq $Lang::tr{'advproxy save and restart'}) { system('/usr/local/bin/squidctrl restart >/dev/null 2>&1'); } - if ($proxysettings{'ACTION'} eq $Lang::tr{'proxy reconfigure'}) { system('/usr/local/bin/squidctrl reconfigure >/dev/null 2>&1'); } + if ($proxysettings{'ACTION'} eq $Lang::tr{'advproxy save and restart'}) { &General::system('/usr/local/bin/squidctrl', 'restart'); } + if ($proxysettings{'ACTION'} eq $Lang::tr{'proxy reconfigure'}) { &General::system('/usr/local/bin/squidctrl', 'reconfigure'); }
# Check if the suricata_proxy_ports_changed flag has been set. if ($suricata_proxy_ports_changed) { @@ -665,7 +663,7 @@ ERROR:
if ($proxysettings{'ACTION'} eq $Lang::tr{'advproxy clear cache'}) { - system('/usr/local/bin/squidctrl flush >/dev/null 2>&1'); + &General::system('/usr/local/bin/squidctrl', 'flush'); }
if (!$errormessage) @@ -1629,21 +1627,6 @@ END print <<END </table>
-<hr size='1'> - -<table width='100%'> -<tr> - <td><b>$Lang::tr{'advproxy privacy'}</b></td> -</tr> -<tr> - <td class='base'>$Lang::tr{'advproxy fake useragent'}:</td> - <td class='base'>$Lang::tr{'advproxy fake referer'}:</td> -</tr> -<tr> - <td><input type='text' name='FAKE_USERAGENT' value='$proxysettings{'FAKE_USERAGENT'}' size='40%' /></td> - <td><input type='text' name='FAKE_REFERER' value='$proxysettings{'FAKE_REFERER'}' size='40%' /></td> -</tr> -</table> <hr size='1'> END ; @@ -3846,8 +3829,7 @@ END
print FILE "http_access deny all\n\n";
- if (($proxysettings{'FORWARD_IPADDRESS'} eq 'off') || ($proxysettings{'FORWARD_VIA'} eq 'off') || - (!($proxysettings{'FAKE_USERAGENT'} eq '')) || (!($proxysettings{'FAKE_REFERER'} eq ''))) + if (($proxysettings{'FORWARD_IPADDRESS'} eq 'off') || ($proxysettings{'FORWARD_VIA'} eq 'off')) { print FILE "#Strip HTTP Header\n";
@@ -3861,31 +3843,9 @@ END print FILE "request_header_access Via deny all\n"; print FILE "reply_header_access Via deny all\n"; } - if (!($proxysettings{'FAKE_USERAGENT'} eq '')) - { - print FILE "request_header_access User-Agent deny all\n"; - print FILE "reply_header_access User-Agent deny all\n"; - } - if (!($proxysettings{'FAKE_REFERER'} eq '')) - { - print FILE "request_header_access Referer deny all\n"; - print FILE "reply_header_access Referer deny all\n"; - }
print FILE "\n";
- if ((!($proxysettings{'FAKE_USERAGENT'} eq '')) || (!($proxysettings{'FAKE_REFERER'} eq ''))) - { - if (!($proxysettings{'FAKE_USERAGENT'} eq '')) - { - print FILE "header_replace User-Agent $proxysettings{'FAKE_USERAGENT'}\n"; - } - if (!($proxysettings{'FAKE_REFERER'} eq '')) - { - print FILE "header_replace Referer $proxysettings{'FAKE_REFERER'}\n"; - } - print FILE "\n"; - } }
if ($proxysettings{'SUPPRESS_VERSION'} eq 'on') { print FILE "httpd_suppress_version_string on\n\n" } diff --git a/html/cgi-bin/qos.cgi b/html/cgi-bin/qos.cgi index 1825aca11..fa566b523 100644 --- a/html/cgi-bin/qos.cgi +++ b/html/cgi-bin/qos.cgi @@ -104,7 +104,7 @@ $qossettings{'TOS'} = ''; &General::readhash("${General::swroot}/qos/settings", %qossettings); &Header::getcgihash(%qossettings);
-$qossettings{'RED_DEV'} = `cat /var/ipfire/red/iface`; +$qossettings{'RED_DEV'} = &General::get_red_interface();
my %color = (); my %mainsettings = (); @@ -232,7 +232,7 @@ END open( FILE, "< $level7file" ) or die "Unable to read $level7file"; @l7rules = <FILE>; close FILE; - system("rm $level7file"); + &General::system("rm", "$level7file"); foreach $l7ruleentry (sort @l7rules) { @l7ruleline = split( /;/, $l7ruleentry ); @@ -244,13 +244,13 @@ END close FILE; } } - open( FILE, "< $level7file" ) or system("touch $level7file");close FILE; + open( FILE, "< $level7file" ) or &General::system("touch", "$level7file");close FILE; } elsif ($qossettings{'DOLEVEL7'} eq $Lang::tr{'edit'}) { open( FILE, "< $level7file" ) or die "Unable to read $level7file"; @l7rules = <FILE>; close FILE; - system("rm $level7file"); + &General::system("rm", "$level7file"); foreach $l7ruleentry (sort @l7rules) { @l7ruleline = split( /;/, $l7ruleentry ); @@ -263,7 +263,7 @@ END } } &level7rule; - open( FILE, "< $level7file" ) or system("touch $level7file");close FILE; + open( FILE, "< $level7file" ) or &General::system("touch", "$level7file");close FILE; }
############################################################################################################################ @@ -323,7 +323,7 @@ END open( FILE, "< $portfile" ) or die "Unable to read $portfile"; @portrules = <FILE>; close FILE; - system("rm $portfile"); + &General::system("rm", "$portfile"); foreach $portruleentry (sort @portrules) { @portruleline = split( /;/, $portruleentry ); @@ -336,7 +336,7 @@ END } } &portrule; - open( FILE, "< $portfile" ) or system("touch $portfile");close FILE; + open( FILE, "< $portfile" ) or &General::system("touch", "$portfile");close FILE; }
############################################################################################################################ @@ -408,25 +408,25 @@ if ($qossettings{'ACTION'} eq $Lang::tr{'start'}) { $qossettings{'ENABLED'} = 'on'; &General::writehash("${General::swroot}/qos/settings", %qossettings); - system("/usr/local/bin/qosctrl generate >/dev/null 2>&1"); - system("/usr/local/bin/qosctrl start >/dev/null 2>&1"); - system("logger -t ipfire 'QoS started'"); + &General::system("/usr/local/bin/qosctrl", "generate"); + &General::system("/usr/local/bin/qosctrl", "start"); + &General::system("logger", "-t", "ipfire", "QoS started"); } elsif ($qossettings{'ACTION'} eq $Lang::tr{'stop'}) { $qossettings{'ENABLED'} = 'off'; &General::writehash("${General::swroot}/qos/settings", %qossettings); - system("/usr/local/bin/qosctrl stop >/dev/null 2>&1"); - system("/usr/local/bin/qosctrl generate >/dev/null 2>&1"); - system("logger -t ipfire 'QoS stopped'"); + &General::system("/usr/local/bin/qosctrl", "stop"); + &General::system("/usr/local/bin/qosctrl", "generate"); + &General::system("logger", "-t", "ipfire", "QoS stopped"); } elsif ($qossettings{'ACTION'} eq $Lang::tr{'restart'}) { if ($qossettings{'ENABLED'} eq 'on'){ - system("/usr/local/bin/qosctrl stop >/dev/null 2>&1"); - system("/usr/local/bin/qosctrl generate >/dev/null 2>&1"); - system("/usr/local/bin/qosctrl start >/dev/null 2>&1"); - system("logger -t ipfire 'QoS restarted'"); + &General::system("/usr/local/bin/qosctrl", "stop"); + &General::system("/usr/local/bin/qosctrl", "generate"); + &General::system("/usr/local/bin/qosctrl", "start"); + &General::system("logger", "-t", "ipfire", "QoS restarted"); } } elsif ($qossettings{'ACTION'} eq $Lang::tr{'save'}) @@ -530,9 +530,9 @@ END $qossettings{'ACK'} ="101"; $qossettings{'ENABLED'} = 'on'; &General::writehash("${General::swroot}/qos/settings", %qossettings); - system("/usr/local/bin/qosctrl generate >/dev/null 2>&1"); - system("/usr/local/bin/qosctrl start >/dev/null 2>&1"); - system("logger -t ipfire 'QoS started'"); + &General::system("/usr/local/bin/qosctrl", "generate"); + &General::system("/usr/local/bin/qosctrl", "start"); + &General::system("logger", "-t", "ipfire", "QoS started"); } else { $message = $Lang::tr{'qos enter bandwidths'}; } @@ -542,8 +542,8 @@ elsif ($qossettings{'ACTION'} eq $Lang::tr{'status'} ) &Header::openbox('100%', 'left', 'QoS Status'); if ($qossettings{'ENABLED'} eq 'on'){ my $output = ""; - $output = `/usr/local/bin/qosctrl status`; - $output = &Header::cleanhtml($output,"y"); + my @output = &General::system_output("/usr/local/bin/qosctrl", "status"); + $output = &Header::cleanhtml(@output[0],"y"); print "<pre>$output</pre>\n"; } else { print "$Lang::tr{'QoS not enabled'}"; } &Header::closebox(); diff --git a/html/cgi-bin/remote.cgi b/html/cgi-bin/remote.cgi index c76f5129e..2bb85851d 100644 --- a/html/cgi-bin/remote.cgi +++ b/html/cgi-bin/remote.cgi @@ -65,7 +65,7 @@ if ( (($remotesettings{'ACTION'} eq $Lang::tr{'save'}) || ($remotesettings{'ACTI { $errormessage = $Lang::tr{'ssh no auth'}; } - system ('/usr/bin/touch', "${General::swroot}/remote/enablessh"); + &General::system('/usr/bin/touch', "${General::swroot}/remote/enablessh"); } else { @@ -85,8 +85,8 @@ if ( (($remotesettings{'ACTION'} eq $Lang::tr{'save'}) || ($remotesettings{'ACTI if ( $remotesettings{'ACTION'} eq $Lang::tr{'ssh tempstart15'} || $remotesettings{'ACTION'} eq $Lang::tr{'ssh tempstart30'} ){ if ($remotesettings{'ENABLE_SSH'} eq 'off') { - system ('/usr/bin/touch', "${General::swroot}/remote/enablessh"); - system('/usr/local/bin/sshctrl'); + &General::system('/usr/bin/touch', "${General::swroot}/remote/enablessh"); + &General::system('/usr/local/bin/sshctrl'); } if ( $remotesettings{'ACTION'} eq $Lang::tr{'ssh tempstart15'} ) { $counter = 900;} elsif ( $remotesettings{'ACTION'} eq $Lang::tr{'ssh tempstart30'} ) { $counter = 1800;} @@ -254,7 +254,10 @@ sub viewkey
if ( -e $key ) { - my @temp = split(/ /,`/usr/bin/ssh-keygen -l -f $key`); + # Use safe system_output function to call ssh-keygen and get the output from the tool. + my @ssh_keygen = &General::system_output("/usr/bin/ssh-keygen", "-l", "-f", "$key"); + + my @temp = split(/ /, $ssh_keygen[0]); my $keysize = &Header::cleanhtml($temp[0],"y"); my $fingerprint = &Header::cleanhtml($temp[1],"y"); print "<tr><td><code>$key</code></td><td align='center'>$name</td><td><code>$fingerprint</code></td><td align='center'>$keysize</td></tr>\n"; @@ -264,8 +267,7 @@ sub viewkey sub printactivelogins() { # print active SSH logins (grep outpout of "who -s") - my $command = "who -s"; - my @output = `$command`; + my @output = &General::system_output("who", "-s"); chomp(@output);
my $id = 0; diff --git a/html/cgi-bin/routing.cgi b/html/cgi-bin/routing.cgi index d2d3bdd26..e69dc425a 100644 --- a/html/cgi-bin/routing.cgi +++ b/html/cgi-bin/routing.cgi @@ -474,5 +474,5 @@ sub SortDataFile # Build the configuration file # sub BuildConfiguration { - system '/usr/local/bin/rebuildroutes'; + &General::system('/usr/local/bin/rebuildroutes'); } diff --git a/html/cgi-bin/samba.cgi b/html/cgi-bin/samba.cgi index 72e8ac63e..9289b4519 100644 --- a/html/cgi-bin/samba.cgi +++ b/html/cgi-bin/samba.cgi @@ -85,14 +85,14 @@ delete $sambasettings{'__CGI__'};delete $sambasettings{'x'};delete $sambasetting ############################################################################################################################ ############################################# Samba Rootskript aufrufe fr SU-Actions #######################################
-if ($sambasettings{'ACTION'} eq 'smbuserdisable'){system("/usr/local/bin/sambactrl smbuserdisable $sambasettings{'NAME'}");} -if ($sambasettings{'ACTION'} eq 'smbuserenable'){system("/usr/local/bin/sambactrl smbuserenable $sambasettings{'NAME'}");} -if ($sambasettings{'ACTION'} eq 'smbuseradd'){system("/usr/local/bin/sambactrl smbuseradd $sambasettings{'USERNAME'} $sambasettings{'PASSWORD'}");} -if ($sambasettings{'ACTION'} eq 'smbchangepw'){system("/usr/local/bin/sambactrl smbchangepw $sambasettings{'USERNAME'} $sambasettings{'PASSWORD'}");} -if ($sambasettings{'ACTION'} eq 'smbrestart'){system("/usr/local/bin/sambactrl smbrestart");} -if ($sambasettings{'ACTION'} eq 'smbstart'){system("/usr/local/bin/sambactrl smbstart");} -if ($sambasettings{'ACTION'} eq 'smbstop'){system("/usr/local/bin/sambactrl smbstop");} -if ($sambasettings{'ACTION'} eq 'smbreload'){system("/usr/local/bin/sambactrl smbreload");} +if ($sambasettings{'ACTION'} eq 'smbuserdisable'){&General::system("/usr/local/bin/sambactrl", "smbuserdisable", "$sambasettings{'NAME'}");} +if ($sambasettings{'ACTION'} eq 'smbuserenable'){&General::system("/usr/local/bin/sambactrl", "smbuserenable", "$sambasettings{'NAME'}");} +if ($sambasettings{'ACTION'} eq 'smbuseradd'){&General::system("/usr/local/bin/sambactrl", "smbuseradd", "$sambasettings{'USERNAME'}", "$sambasettings{'PASSWORD'}");} +if ($sambasettings{'ACTION'} eq 'smbchangepw'){&General::system("/usr/local/bin/sambactrl", "smbchangepw", "$sambasettings{'USERNAME'}", "$sambasettings{'PASSWORD'}");} +if ($sambasettings{'ACTION'} eq 'smbrestart'){&General::system("/usr/local/bin/sambactrl", "smbrestart");} +if ($sambasettings{'ACTION'} eq 'smbstart'){&General::system("/usr/local/bin/sambactrl", "smbstart");} +if ($sambasettings{'ACTION'} eq 'smbstop'){&General::system("/usr/local/bin/sambactrl", "smbstop");} +if ($sambasettings{'ACTION'} eq 'smbreload'){&General::system("/usr/local/bin/sambactrl", "smbreload");} if ($sambasettings{'ACTION'} eq 'join') { $message .= &joindomain($sambasettings{'USERNAME'}, $sambasettings{'PASSWORD'}); } @@ -124,7 +124,7 @@ if ($sambasettings{'ACTION'} eq 'smbsharechange') { ############################################################################################################################ ########################################### Samba Benutzer oder PC l�chen #################################################
-if ($sambasettings{'ACTION'} eq 'userdelete'){system("/usr/local/bin/sambactrl smbuserdelete $sambasettings{'NAME'}");} +if ($sambasettings{'ACTION'} eq 'userdelete'){&General::system("/usr/local/bin/sambactrl", "smbuserdelete", "$sambasettings{'NAME'}");}
############################################################################################################################ ##################################### Umsetzen der Werte von Checkboxen und Dropdowns ###################################### @@ -138,7 +138,7 @@ if ($sambasettings{'ACTION'} eq $Lang::tr{'save'}) { # Write configuration to file &writeconfiguration();
- system("/usr/local/bin/sambactrl smbreload"); + &General::system("/usr/local/bin/sambactrl", "smbreload"); }
&General::readhash("${General::swroot}/samba/settings", %sambasettings); @@ -334,11 +334,11 @@ if ($sambasettings{'ROLE'} eq 'standalone') { </tr> END
- system('/usr/local/bin/sambactrl readsmbpasswd'); + &General::system("/usr/local/bin/sambactrl", "readsmbpasswd"); open(FILE, "<${General::swroot}/samba/private/smbpasswd") or die "Can't read user file: $!"; my @users = <FILE>; close(FILE); - system('/usr/local/bin/sambactrl locksmbpasswd'); + &General::system("/usr/local/bin/sambactrl", "locksmbpasswd");
my $lines = 0; foreach $userentry (sort @users) { @@ -734,8 +734,8 @@ if ( $smb eq 'shares')
close FILE;
-system("/usr/local/bin/sambactrl smbsafeconf"); -system("/usr/local/bin/sambactrl smbreload"); +&General::system("/usr/local/bin/sambactrl", "smbsafeconf"); +&General::system("/usr/local/bin/sambactrl", "smbreload"); }
sub isrunning @@ -844,7 +844,7 @@ printable = yes END close FILE;
- system("/usr/local/bin/sambactrl smbsafeconf"); + &General::system("/usr/local/bin/sambactrl", "smbsafeconf"); }
sub joindomain { diff --git a/html/cgi-bin/services.cgi b/html/cgi-bin/services.cgi index 38b89ef1e..237475735 100644 --- a/html/cgi-bin/services.cgi +++ b/html/cgi-bin/services.cgi @@ -2,7 +2,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2005-2010 IPFire Team # +# Copyright (C) 2005-2021 IPFire Team # # # # 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 # @@ -141,7 +141,7 @@ END my $paramstr=$ENV{QUERY_STRING}; my @param=split(/!/, $paramstr); if ($param[1] ne ''){ - system("/usr/local/bin/addonctrl @param[0] @param[1] > /dev/null 2>&1"); + &General::system("/usr/local/bin/addonctrl", "$param[0]", "$param[1]"); }
print <<END @@ -163,6 +163,8 @@ END # Generate list of installed addon pak's opendir (DIR, "/opt/pakfire/db/installed") || die "Cannot opendir /opt/pakfire/db/installed/: $!"; my @pak = sort readdir DIR; + closedir(DIR); + foreach (@pak){ chomp($_); next unless (m/^meta-/); @@ -187,6 +189,7 @@ END print "<tr>"; $col="bgcolor='$color{'color20'}'"; } + print "<td align='left' $col width='31%'>$_</td> "; my $status = isautorun($_,$col); print "$status "; @@ -217,27 +220,54 @@ END &Header::closepage(); }
-sub isautorun{ - my $cmd = $_[0]; - my $col = $_[1]; +sub isautorun (@) { + my ($cmd, $col) = @_; + + # Init directory. + my $initdir = "/etc/rc.d/rc3.d/"; + my $status = "<td align='center' $col></td>"; - my $init = `find /etc/rc.d/rc3.d/S??${cmd} 2>/dev/null`; - chomp ($init); - if ($init ne ''){ + + # Check if autorun for the given cmd is enabled. + if ( &find_init("$cmd", "$initdir") ) { + # Adjust status. $status = "<td align='center' $col><a href='services.cgi?$_!disable'><img alt='$Lang::tr{'deactivate'}' title='$Lang::tr{'deactivate'}' src='/images/on.gif' border='0' width='16' height='16' /></a></td>"; - } - $init = `find /etc/rc.d/rc3.d/off/S??${cmd} 2>/dev/null`; - chomp ($init); - if ($init ne ''){ + } else { + # Adjust status. $status = "<td align='center' $col><a href='services.cgi?$_!enable'><img alt='$Lang::tr{'activate'}' title='$Lang::tr{'activate'}' src='/images/off.gif' border='0' width='16' height='16' /></a></td>"; }
+ # Return the status. return $status; }
-sub isrunning{ - my $cmd = $_[0]; - my $col = $_[1]; +sub find_init (@) { + my ($cmd, $dir) = @_; + + # Open given init directory. + opendir (INITDIR, "$dir") || die "Cannot opendir $dir: $!"; + + # Read-in init files from directory. + my @inits = readdir(INITDIR); + + # Close directory handle. + closedir(INITDIR); + + # Loop through the directory. + foreach my $init (@inits) { + # Check if the current processed file belongs to the given command. + if ($init =~ /S\d+\d+$cmd\z/) { + # Found, return "1" - True. + return "1"; + } + } + + # Nothing found, return nothing. + return; +} + +sub isrunning (@) { + my ($cmd, $col) = @_; my $status = "<td align='center' bgcolor='${Header::colourred}'><font color='white'><b>$Lang::tr{'stopped'}</b></font></td><td colspan='2' $col></td>"; my $pid = ''; my $testcmd = ''; @@ -288,16 +318,17 @@ sub isrunning{ return $status; }
-sub isrunningaddon{ - my $cmd = $_[0]; - my $col = $_[1]; +sub isrunningaddon (@) { + my ($cmd, $col) = @_; + my $status = "<td align='center' bgcolor='${Header::colourred}'><font color='white'><b>$Lang::tr{'stopped'}</b></font></td><td colspan='2' $col></td>"; my $pid = ''; my $testcmd = ''; my $exename; my @memory;
- my $testcmd = `/usr/local/bin/addonctrl $_ status 2>/dev/null`; + my @testcmd = &General::system_output("/usr/local/bin/addonctrl", "$cmd", "status"); + my $testcmd = @testcmd[0];
if ( $testcmd =~ /is\ running/ && $testcmd !~ /is\ not\ running/){ $status = "<td align='center' bgcolor='${Header::colourgreen}'><font color='white'><b>$Lang::tr{'running'}</b></font></td>"; diff --git a/html/cgi-bin/shutdown.cgi b/html/cgi-bin/shutdown.cgi index 998f9f8f4..e0a2c9da0 100644 --- a/html/cgi-bin/shutdown.cgi +++ b/html/cgi-bin/shutdown.cgi @@ -29,11 +29,11 @@ $cgiparams{'ACTION'} = ''; if ($cgiparams{'ACTION'} eq $Lang::tr{'shutdown'}) { $death = 1; &General::log($Lang::tr{'shutting down ipfire'}); - system '/usr/local/bin/ipfirereboot down'; + &General::system('/usr/local/bin/ipfirereboot', 'down'); } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'reboot'}) { $rebirth = 1; &General::log($Lang::tr{'rebooting ipfire'}); - system '/usr/local/bin/ipfirereboot boot'; + &General::system('/usr/local/bin/ipfirereboot', 'boot'); } if ($death == 0 && $rebirth == 0) {
diff --git a/html/cgi-bin/speed.cgi b/html/cgi-bin/speed.cgi index 4468abd90..b550fda52 100644 --- a/html/cgi-bin/speed.cgi +++ b/html/cgi-bin/speed.cgi @@ -19,6 +19,8 @@ # # ###############################################################################
+require '/var/ipfire/general-functions.pl'; + my $data_last = $ENV{'QUERY_STRING'}; my $rxb_last = 0; my $txb_last = 0; @@ -36,8 +38,8 @@ foreach $field (@fields) { } }
-my $interface = `cat /var/ipfire/red/iface 2>/dev/null`; -my @data_now = `ip -s link show $interface 2>/dev/null`; +my $interface = &General::get_red_interface(); +my @data_now = &General::system_output("ip", "-s", "link", "show", "$interface");
my $lastline; my $rxb_now = 0; diff --git a/html/cgi-bin/time.cgi b/html/cgi-bin/time.cgi index 8363b9951..6bf3dcc84 100644 --- a/html/cgi-bin/time.cgi +++ b/html/cgi-bin/time.cgi @@ -20,6 +20,7 @@ ###############################################################################
use strict; +use POSIX qw(strftime);
# enable only the following on debugging purpose #use warnings; @@ -125,8 +126,8 @@ ERROR:
if ($timesettings{'ENABLENTP'} eq 'on' && $timesettings{'VALID'} eq 'yes') { - system ('/usr/bin/touch', "${General::swroot}/time/enable"); - system ('/usr/local/bin/timectrl enable >/dev/null 2>&1'); + &General::system('/usr/bin/touch', "${General::swroot}/time/enable"); + &General::system('/usr/local/bin/timectrl', 'enable'); &General::log($Lang::tr{'ntp syncro enabled'}); unlink "/var/lock/time/counter"; if ($timesettings{'UPDATE_METHOD'} eq 'periodically') @@ -138,7 +139,7 @@ ERROR: } if ($timesettings{'ENABLECLNTP'} eq 'on') # DPC added to 1.3.1 { - system ('/usr/bin/touch', "${General::swroot}/time/allowclients"); # DPC added to 1.3.1 + &General::system('/usr/bin/touch', "${General::swroot}/time/allowclients"); # DPC added to 1.3.1 &General::log($Lang::tr{'ntpd restarted'}); # DPC added to 1.3.1 } else { unlink "${General::swroot}/time/allowclients"; @@ -150,11 +151,11 @@ ERROR: unlink "${General::swroot}/time/enable"; unlink "/var/lock/time/settimenow"; unlink "${General::swroot}/time/allowclients"; # DPC added to 1.3.1 - system ('/usr/local/bin/timectrl disable >/dev/null 2>&1'); + &General::system('/usr/local/bin/timectrl', 'disable'); &General::log($Lang::tr{'ntp syncro disabled'}) } if (! $errormessage) { - system ('/usr/local/bin/timectrl restart >/dev/null 2>&1'); # DPC added to 1.3.1 + &General::system('/usr/local/bin/timectrl', 'restart'); # DPC added to 1.3.1 } }
@@ -163,7 +164,7 @@ ERROR: $timesettings{'ACTION'} = &Header::cleanhtml ($timesettings{'ACTION'}); if ($timesettings{'ACTION'} eq $Lang::tr{'set time now'} && $timesettings{'ENABLENTP'} eq 'on') { - system ('/usr/bin/touch', "/var/lock/time/settimenow"); + &General::system('/usr/bin/touch', "/var/lock/time/settimenow"); }
&General::readhash("${General::swroot}/time/settings", %timesettings); @@ -180,11 +181,18 @@ if ($timesettings{'VALID'} eq '') }
unless ($errormessage) { - $timesettings{'SETMONTH'} = `date +'%m %e %Y %H %M'|cut -c 1-2`; - $timesettings{'SETDAY'} = `date +'%m %e %Y %H %M'|cut -c 4-5`; - $timesettings{'SETYEAR'} = `date +'%m %e %Y %H %M'|cut -c 7-10`; - $timesettings{'SETHOUR'} = `date +'%m %e %Y %H %M'|cut -c 12-13`; - $timesettings{'SETMINUTES'} = `date +'%m %e %Y %H %M'|cut -c 15-16`; + # Get date and time. + my $date = strftime("%m %e %Y %H %M", localtime); + + # Split date string into single values. + my ($month, $day, $year, $hour, $minute) = split(/ /, $date); + + # Assign values to the hash. + $timesettings{'SETMONTH'} = $month; + $timesettings{'SETDAY'} = $day; + $timesettings{'SETYEAR'} = $year; + $timesettings{'SETHOUR'} = $hour; + $timesettings{'SETMINUTES'} = $minute; $_=$timesettings{'SETDAY'}; $timesettings{'SETDAY'}=~ tr/ /0/; } diff --git a/html/cgi-bin/tor.cgi b/html/cgi-bin/tor.cgi index f39c0d8da..3349336ae 100644 --- a/html/cgi-bin/tor.cgi +++ b/html/cgi-bin/tor.cgi @@ -873,9 +873,9 @@ sub BuildConfiguration() {
# Restart the service. if (($settings{'TOR_ENABLED'} eq 'on') || ($settings{'TOR_RELAY_ENABLED'} eq 'on')) { - system("/usr/local/bin/torctrl restart &>/dev/null"); + &General::system("/usr/local/bin/torctrl", "restart"); } else { - system("/usr/local/bin/torctrl stop &>/dev/null"); + &General::system("/usr/local/bin/torctrl", "stop"); } # Update pid and memory daemonstats(); diff --git a/html/cgi-bin/traffic.cgi b/html/cgi-bin/traffic.cgi index cafccf73f..2f28537d0 100644 --- a/html/cgi-bin/traffic.cgi +++ b/html/cgi-bin/traffic.cgi @@ -86,20 +86,24 @@ sub display_vnstat if ( $testdata =~ 'enough') { print"No data for $device !<br>"; } else { - system("/usr/bin/vnstati -c 1 -s -i $device -o /srv/web/ipfire/html/graphs/vnstat-s-$device.png"); + # Summary + &General::system("/usr/bin/vnstati", "-c", "1", "-s", "-i", "$device", "-o", "/srv/web/ipfire/html/graphs/vnstat-s-$device.png"); + # 5-minute graphs + &General::system("/usr/bin/vnstati", "-c", "1", "-5", "-i", "$device", "-o", "/srv/web/ipfire/html/graphs/vnstat-5-$device.png"); # Hour graph - system("/usr/bin/vnstati -c 1 -h -i $device -o /srv/web/ipfire/html/graphs/vnstat-h-$device.png"); + &General::system("/usr/bin/vnstati", "-c", "1", "-h", "-i", "$device", "-o", "/srv/web/ipfire/html/graphs/vnstat-h-$device.png"); # Day graph - system("/usr/bin/vnstati -c 1 -d -i $device -o /srv/web/ipfire/html/graphs/vnstat-d-$device.png"); + &General::system("/usr/bin/vnstati", "-c", "1", "-d", "-i", "$device", "-o", "/srv/web/ipfire/html/graphs/vnstat-d-$device.png"); # Month graph - system("/usr/bin/vnstati -c 1 -m -i $device -o /srv/web/ipfire/html/graphs/vnstat-m-$device.png"); + &General::system("/usr/bin/vnstati", "-c", "1", "-m", "-i", "$device", "-o", "/srv/web/ipfire/html/graphs/vnstat-m-$device.png"); # Top10 graph - system("/usr/bin/vnstati -c 1 -t -i $device -o /srv/web/ipfire/html/graphs/vnstat-t-$device.png"); + &General::system("/usr/bin/vnstati", "-c", "1", "-t", "-i", "$device", "-o", "/srv/web/ipfire/html/graphs/vnstat-t-$device.png");
# Generate HTML-Table with the graphs print <<END <table> <tr><td><img src="/graphs/vnstat-s-$device.png"></td></tr> +<tr><td><img src="/graphs/vnstat-5-$device.png"></td></tr> <tr><td><img src="/graphs/vnstat-h-$device.png"></td></tr> <tr><td><img src="/graphs/vnstat-d-$device.png"></td></tr> <tr><td><img src="/graphs/vnstat-m-$device.png"></td></tr> diff --git a/html/cgi-bin/updatexlrator.cgi b/html/cgi-bin/updatexlrator.cgi index ec7b75228..9cfe08f4e 100644 --- a/html/cgi-bin/updatexlrator.cgi +++ b/html/cgi-bin/updatexlrator.cgi @@ -192,33 +192,33 @@ if ($xlratorsettings{'ACTION'} eq $Lang::tr{'updxlrtr purge'})
if (($xlratorsettings{'REMOVE_NOSOURCE'} eq 'on') && ($status == $sfNoSource)) { - if (-e "$repository/$vendorid/$uuid/$updatefile") { system("rm -r $repository/$vendorid/$uuid"); } + if (-e "$repository/$vendorid/$uuid/$updatefile") { &General::system("rm", "-r", "$repository/$vendorid/$uuid"); } } if (($xlratorsettings{'REMOVE_OUTDATED'} eq 'on') && ($status == $sfOutdated)) { - if (-e "$repository/$vendorid/$uuid/$updatefile") { system("rm -r $repository/$vendorid/$uuid"); } + if (-e "$repository/$vendorid/$uuid/$updatefile") { &General::system("rm", "-r", "$repository/$vendorid/$uuid"); } } if ($xlratorsettings{'REMOVE_OBSOLETE'} eq 'on') { if (($xlratorsettings{'NOT_ACCESSED_LAST'} eq 'week') && ($lastaccess < (time - 604800))) { - if (-e "$repository/$vendorid/$uuid/$updatefile") { system("rm -r $repository/$vendorid/$uuid"); } + if (-e "$repository/$vendorid/$uuid/$updatefile") { &General::system("rm", "-r", "$repository/$vendorid/$uuid"); } } if (($xlratorsettings{'NOT_ACCESSED_LAST'} eq 'month1') && ($lastaccess < (time - 2505600))) { - if (-e "$repository/$vendorid/$uuid/$updatefile") { system("rm -r $repository/$vendorid/$uuid"); } + if (-e "$repository/$vendorid/$uuid/$updatefile") { &General::system("rm", "-r", "$repository/$vendorid/$uuid"); } } if (($xlratorsettings{'NOT_ACCESSED_LAST'} eq 'month3') && ($lastaccess < (time - 7516800))) { - if (-e "$repository/$vendorid/$uuid/$updatefile") { system("rm -r $repository/$vendorid/$uuid"); } + if (-e "$repository/$vendorid/$uuid/$updatefile") { &General::system("rm", "-r", "$repository/$vendorid/$uuid"); } } if (($xlratorsettings{'NOT_ACCESSED_LAST'} eq 'month6') && ($lastaccess < (time - 15033600))) { - if (-e "$repository/$vendorid/$uuid/$updatefile") { system("rm -r $repository/$vendorid/$uuid"); } + if (-e "$repository/$vendorid/$uuid/$updatefile") { &General::system("rm", "-r", "$repository/$vendorid/$uuid"); } } if (($xlratorsettings{'NOT_ACCESSED_LAST'} eq 'year') && ($lastaccess < (time - 31536000))) { - if (-e "$repository/$vendorid/$uuid/$updatefile") { system("rm -r $repository/$vendorid/$uuid"); } + if (-e "$repository/$vendorid/$uuid/$updatefile") { &General::system("rm", "-r", "$repository/$vendorid/$uuid"); } } } } @@ -266,7 +266,7 @@ if ($xlratorsettings{'ACTION'} eq $Lang::tr{'updxlrtr save and restart'})
&savesettings;
- system('/usr/local/bin/squidctrl restart >/dev/null 2>&1'); + &General::system('/usr/local/bin/squidctrl', 'restart'); }
if ($xlratorsettings{'ACTION'} eq $Lang::tr{'updxlrtr remove file'}) @@ -278,7 +278,7 @@ if ($xlratorsettings{'ACTION'} eq $Lang::tr{'updxlrtr remove file'}) unless ($updatefile =~ /^download//) { ($vendorid,$uuid,$updatefile) = split('/',$updatefile); - if (-e "$repository/$vendorid/$uuid/$updatefile") { system("rm -r $repository/$vendorid/$uuid"); } + if (-e "$repository/$vendorid/$uuid/$updatefile") { &General::system("rm", "-r", "$repository/$vendorid/$uuid"); } } }
@@ -295,16 +295,16 @@ if (($xlratorsettings{'ACTION'} eq $Lang::tr{'updxlrtr cancel download'}) || ($x &General::readhash("$repository/download/$vendorid/$updatefile.info", %dlinfo);
$id = &getPID("\s${General::swroot}/updatexlrator/bin/download\s.*\s".quotemeta($dlinfo{'SRCURL'})."\s\d\s\d$"); - if ($id) { system("/bin/kill -9 $id"); } + if ($id) { &General::system("/bin/kill", "-9", "$id"); } $id = &getPID("\s/usr/bin/wget\s.*\s".quotemeta($dlinfo{'SRCURL'})."$"); - if ($id) { system("/bin/kill -9 $id"); } + if ($id) { &General::system("/bin/kill", "-9", "$id"); }
- system("rm $repository/download/$vendorid/$updatefile.info"); + &General::system("rm", "$repository/download/$vendorid/$updatefile.info"); }
if (-e "$repository/download/$vendorid/$updatefile") { - system("rm $repository/download/$vendorid/$updatefile"); + &General::system("rm", "$repository/download/$vendorid/$updatefile"); } }
@@ -1478,15 +1478,15 @@ sub savesettings
if (($xlratorsettings{'ENABLE_AUTOCHECK'} eq 'on') && ($xlratorsettings{'AUTOCHECK_SCHEDULE'} eq 'daily')) { - system('/usr/local/bin/updxlratorctrl cron daily >/dev/null 2>&1'); + &General::system('/usr/local/bin/updxlratorctrl', 'cron', 'daily'); } if (($xlratorsettings{'ENABLE_AUTOCHECK'} eq 'on') && ($xlratorsettings{'AUTOCHECK_SCHEDULE'} eq 'weekly')) { - system('/usr/local/bin/updxlratorctrl cron weekly >/dev/null 2>&1'); + &General::system('/usr/local/bin/updxlratorctrl', 'cron', 'weekly'); } if (($xlratorsettings{'ENABLE_AUTOCHECK'} eq 'on') && ($xlratorsettings{'AUTOCHECK_SCHEDULE'} eq 'monthly')) { - system('/usr/local/bin/updxlratorctrl cron monthly >/dev/null 2>&1'); + &General::system('/usr/local/bin/updxlratorctrl', 'cron', 'monthly'); }
# don't save those variable to the settings file, diff --git a/html/cgi-bin/urlfilter.cgi b/html/cgi-bin/urlfilter.cgi index 28ffc8114..3a28721a9 100644 --- a/html/cgi-bin/urlfilter.cgi +++ b/html/cgi-bin/urlfilter.cgi @@ -95,9 +95,9 @@ my $ldesc=''; my $gdesc='';
if (! -d $dbdir) { mkdir("$dbdir"); } -if (! -e $tcfile) { system("touch $tcfile"); } -if (! -e $uqfile) { system("touch $uqfile"); } -if (! -e $sourceurlfile) { system("touch $sourceurlfile"); } +if (! -e $tcfile) { &General::system("touch", "$tcfile"); } +if (! -e $uqfile) { &General::system("touch", "$uqfile"); } +if (! -e $sourceurlfile) { &General::system("touch", "$sourceurlfile"); }
&General::readhash("${General::swroot}/ethernet/settings", %netsettings); &General::readhash("${General::swroot}/main/settings", %mainsettings); @@ -226,7 +226,7 @@ if (($filtersettings{'ACTION'} eq $Lang::tr{'save'}) ||
if (!(-d "${General::swroot}/urlfilter/update")) { mkdir("${General::swroot}/urlfilter/update"); }
- my $exitcode = system("/bin/tar --no-same-owner -xzf ${General::swroot}/urlfilter/blacklists.tar.gz -C ${General::swroot}/urlfilter/update"); + my $exitcode = &General::system("/bin/tar", "--no-same-owner", "-xzf", "${General::swroot}/urlfilter/blacklists.tar.gz", "-C", "${General::swroot}/urlfilter/update");
if ($exitcode > 0) { @@ -235,18 +235,19 @@ if (($filtersettings{'ACTION'} eq $Lang::tr{'save'}) ||
if (-d "${General::swroot}/urlfilter/update/BL") { - system("mv ${General::swroot}/urlfilter/update/BL ${General::swroot}/urlfilter/update/blacklists"); + &General::system("mv", "${General::swroot}/urlfilter/update/BL", "${General::swroot}/urlfilter/update/blacklists"); }
if (-d "${General::swroot}/urlfilter/update/category") { - system("mv ${General::swroot}/urlfilter/update/category ${General::swroot}/urlfilter/update/blacklists"); + &General::system("mv", "${General::swroot}/urlfilter/update/category", "${General::swroot}/urlfilter/update/blacklists"); }
if (!(-d "${General::swroot}/urlfilter/update/blacklists")) { $errormessage = $Lang::tr{'urlfilter invalid content'}; } else { + # XXX Uses globbing system("cp -r ${General::swroot}/urlfilter/update/blacklists/* $dbdir");
&readblockcategories; @@ -255,11 +256,11 @@ if (($filtersettings{'ACTION'} eq $Lang::tr{'save'}) || &writeconfigfile;
$updatemessage = $Lang::tr{'urlfilter upload success'}; - system("${General::swroot}/urlfilter/bin/prebuild.pl &"); - system("logger -t installpackage[urlfilter] "URL filter blacklist - Blacklist update from local source completed""); + &General::system_background("${General::swroot}/urlfilter/bin/prebuild.pl"); + &General::system("logger", "-t", "installpackage[urlfilter]", "URL filter blacklist - Blacklist update from local source completed"); } } - if (-d "${General::swroot}/urlfilter/update") { system("rm -rf ${General::swroot}/urlfilter/update"); } + if (-d "${General::swroot}/urlfilter/update") { &General::system("rm", "-rf", "${General::swroot}/urlfilter/update"); } if (-e "${General::swroot}/urlfilter/blacklists.tar.gz") { unlink("${General::swroot}/urlfilter/blacklists.tar.gz"); } if ($errormessage) { goto ERROR; } } @@ -267,7 +268,7 @@ if (($filtersettings{'ACTION'} eq $Lang::tr{'save'}) || if ($filtersettings{'ACTION'} eq $Lang::tr{'urlfilter backup'}) { $blistbackup = ($filtersettings{'ENABLE_FULLBACKUP'} eq 'on') ? "blacklists" : "blacklists/custom"; - if (system("/bin/tar -C ${General::swroot}/urlfilter -czf ${General::swroot}/urlfilter/backup.tar.gz settings timeconst userquota autoupdate $blistbackup")) + if (&General::system("/bin/tar", "-C", "${General::swroot}/urlfilter", "-czf", "${General::swroot}/urlfilter/backup.tar.gz", "settings", "timeconst", "userquota", "autoupdate", "$blistbackup")) { $errormessage = $Lang::tr{'urlfilter backup error'}; goto ERROR; @@ -306,7 +307,7 @@ if (($filtersettings{'ACTION'} eq $Lang::tr{'save'}) || $errormessage = $!; }
- my $exitcode = system("/bin/tar --no-same-owner --preserve-permissions -xzf ${General::swroot}/urlfilter/backup.tar.gz -C ${General::swroot}/urlfilter/restore"); + my $exitcode = &General::system("/bin/tar", "--no-same-owner", "--preserve-permissions", "-xzf", "${General::swroot}/urlfilter/backup.tar.gz", "-C", "${General::swroot}/urlfilter/restore"); if ($exitcode > 0) { $errormessage = $Lang::tr{'urlfilter tar error'}; @@ -315,6 +316,7 @@ if (($filtersettings{'ACTION'} eq $Lang::tr{'save'}) || { $errormessage = $Lang::tr{'urlfilter invalid restore file'}; } else { + # XXX uses globbing system("cp -rp ${General::swroot}/urlfilter/restore/* ${General::swroot}/urlfilter/"); &readblockcategories; &readcustomlists; @@ -325,7 +327,7 @@ if (($filtersettings{'ACTION'} eq $Lang::tr{'save'}) || }
if (-e "${General::swroot}/urlfilter/backup.tar.gz") { unlink("${General::swroot}/urlfilter/backup.tar.gz"); } - if (-d "${General::swroot}/urlfilter/restore") { system("rm -rf ${General::swroot}/urlfilter/restore"); } + if (-d "${General::swroot}/urlfilter/restore") { &General::system("rm", "-rf", "${General::swroot}/urlfilter/restore"); } if ($errormessage) { goto ERROR; } }
@@ -351,7 +353,7 @@ if (($filtersettings{'ACTION'} eq $Lang::tr{'save'}) || $filtersettings{'VALID'} = 'yes'; &savesettings;
- system('/usr/local/bin/squidctrl restart >/dev/null 2>&1'); + &General::system('/usr/local/bin/squidctrl', 'restart'); } }
@@ -485,7 +487,7 @@ if (($tcsettings{'MODE'} eq 'TIMECONSTRAINT') && ($tcsettings{'ACTION'} eq $Lang $errormessage = $Lang::tr{'urlfilter web proxy service required'}; }
- if (!$errormessage) { system('/usr/local/bin/squidctrl restart >/dev/null 2>&1'); } + if (!$errormessage) { &General::system('/usr/local/bin/squidctrl', 'restart'); } $tcsettings{'TCMODE'}='on'; }
@@ -688,7 +690,7 @@ if (($uqsettings{'MODE'} eq 'USERQUOTA') && ($uqsettings{'ACTION'} eq $Lang::tr{ $errormessage = $Lang::tr{'urlfilter web proxy service required'}; }
- if (!$errormessage) { system('/usr/local/bin/squidctrl restart >/dev/null 2>&1'); } + if (!$errormessage) { &General::system('/usr/local/bin/squidctrl', 'restart'); } $uqsettings{'UQMODE'}='on'; }
@@ -772,7 +774,7 @@ if (($besettings{'ACTION'} eq $Lang::tr{'urlfilter import blacklist'}) && ($bese $errormessage = $!; } else {
- my $exitcode = system("/bin/tar --no-same-owner --preserve-permissions -xzf $editdir/blacklist.tar.gz -C $editdir"); + my $exitcode = &General::system("/bin/tar", "--no-same-owner", "--preserve-permissions", "-xzf", "$editdir/blacklist.tar.gz", "-C", "$editdir"); if ($exitcode > 0) { $errormessage = $Lang::tr{'urlfilter tar error'}; @@ -819,7 +821,7 @@ if (($besettings{'ACTION'} eq $Lang::tr{'urlfilter import blacklist'}) && ($bese } }
- if (-d $editdir) { system("rm -rf $editdir"); } + if (-d $editdir) { &General::system("rm", "-rf", "$editdir"); }
} } @@ -853,7 +855,7 @@ if (($besettings{'ACTION'} eq $Lang::tr{'urlfilter export blacklist'}) && ($bese print FILE "$besettings{'BE_EXPRESSIONS'}\n"; close FILE;
- if (system("/bin/tar -C $editdir -czf $editdir/$besettings{'BE_NAME'}.tar.gz blacklists")) + if (&General::system("/bin/tar", "-C", "$editdir", "-czf", "$editdir/$besettings{'BE_NAME'}.tar.gz", "blacklists")) { $errormessage = $Lang::tr{'urlfilter export error'}; } @@ -869,7 +871,7 @@ if (($besettings{'ACTION'} eq $Lang::tr{'urlfilter export blacklist'}) && ($bese while (<FILE>) { print; } close (FILE);
- if (-d $editdir) { system("rm -rf $editdir"); } + if (-d $editdir) { &General::system("rm", "-rf", "$editdir"); } exit; } } else { @@ -933,8 +935,10 @@ if (($besettings{'ACTION'} eq $Lang::tr{'urlfilter install blacklist'}) && ($bes print FILE "}\n"; close FILE;
+ # XXX uses globbing system("rm -f $dbdir/$besettings{'BE_NAME'}/*.db"); - system("/usr/bin/squidGuard -c $editdir/install.conf -C all"); + &General::system("/usr/bin/squidGuard", "-c", "$editdir/install.conf", "-C", "all"); + # XXX uses globbing system("chmod a+w $dbdir/$besettings{'BE_NAME'}/*.db");
&readblockcategories; @@ -942,9 +946,9 @@ if (($besettings{'ACTION'} eq $Lang::tr{'urlfilter install blacklist'}) && ($bes
&writeconfigfile;
- system('/usr/local/bin/squidctrl restart >/dev/null 2>&1') unless ($besettings{'NORESTART'} eq 'on'); + &General::system('/usr/local/bin/squidctrl', 'restart') unless ($besettings{'NORESTART'} eq 'on');
- if (-d $editdir) { system("rm -rf $editdir"); } + if (-d $editdir) { &General::system("rm", "-rf", "$editdir"); } } else { $errormessage = $Lang::tr{'urlfilter category data error'}; } @@ -966,17 +970,17 @@ if ($filtersettings{'ACTION'} eq $Lang::tr{'urlfilter save schedule'})
if (($filtersettings{'ENABLE_AUTOUPDATE'} eq 'on') && ($filtersettings{'UPDATE_SCHEDULE'} eq 'daily')) { - system('/usr/local/bin/urlfilterctrl cron daily >/dev/null 2>&1'); + &General::system('/usr/local/bin/urlfilterctrl', 'cron', 'daily'); }
if (($filtersettings{'ENABLE_AUTOUPDATE'} eq 'on') && ($filtersettings{'UPDATE_SCHEDULE'} eq 'weekly')) { - system('/usr/local/bin/urlfilterctrl cron weekly >/dev/null 2>&1'); + &General::system('/usr/local/bin/urlfilterctrl', 'cron', 'weekly'); }
if (($filtersettings{'ENABLE_AUTOUPDATE'} eq 'on') && ($filtersettings{'UPDATE_SCHEDULE'} eq 'monthly')) { - system('/usr/local/bin/urlfilterctrl cron monthly >/dev/null 2>&1'); + &General::system('/usr/local/bin/urlfilterctrl', 'cron', 'monthly'); } } } @@ -989,10 +993,10 @@ if ($filtersettings{'ACTION'} eq $Lang::tr{'urlfilter update now'}) { $errormessage = $Lang::tr{'urlfilter custom url required'}; } else { - system("${General::swroot}/urlfilter/bin/autoupdate.pl $filtersettings{'CUSTOM_UPDATE_URL'} &"); + &General::system_background("${General::swroot}/urlfilter/bin/autoupdate.pl", "$filtersettings{'CUSTOM_UPDATE_URL'}"); } } else { - system("${General::swroot}/urlfilter/bin/autoupdate.pl $filtersettings{'UPDATE_SOURCE'} &"); + &General::system_background("${General::swroot}/urlfilter/bin/autoupdate.pl", "$filtersettings{'UPDATE_SOURCE'}"); } }
@@ -2533,11 +2537,11 @@ sub savesettings delete $filtersettings{'BACKGROUND'}; delete $filtersettings{'UPDATEFILE'};
- system("chown -R nobody.nobody $dbdir"); - system('/usr/bin/squidGuard -C custom/allowed/domains >/dev/null 2>&1'); - system('/usr/bin/squidGuard -C custom/allowed/urls >/dev/null 2>&1'); - system('/usr/bin/squidGuard -C custom/blocked/domains >/dev/null 2>&1'); - system('/usr/bin/squidGuard -C custom/blocked/urls >/dev/null 2>&1 '); + &General::system("chown", "-R", "nobody.nobody", "$dbdir"); + &General::system('/usr/bin/squidGuard', '-C', 'custom/allowed/domains'); + &General::system('/usr/bin/squidGuard', '-C', 'custom/allowed/urls'); + &General::system('/usr/bin/squidGuard', '-C', 'custom/blocked/domains'); + &General::system('/usr/bin/squidGuard', '-C', 'custom/blocked/urls'); &setpermissions ($dbdir);
&General::writehash("${General::swroot}/urlfilter/settings", %filtersettings); @@ -2694,12 +2698,13 @@ sub setpermissions foreach $category (<$bldir/*>) { if (-d $category){ - system("chmod 755 $category &> /dev/null"); + &General::system("chmod", "755", "$category"); foreach $blacklist (<$category/*>) { - if (-f $blacklist) { system("chmod 644 $blacklist &> /dev/null"); } - if (-d $blacklist) { system("chmod 755 $blacklist &> /dev/null"); } + if (-f $blacklist) { &General::system("chmod", "644", "$blacklist"); } + if (-d $blacklist) { &General::system("chmod", "755", "$blacklist"); } } + # XXX uses globbing system("chmod 666 $category/*.db &> /dev/null"); &setpermissions ($category); } diff --git a/html/cgi-bin/vpnmain.cgi b/html/cgi-bin/vpnmain.cgi index f200f1002..79a2943d4 100644 --- a/html/cgi-bin/vpnmain.cgi +++ b/html/cgi-bin/vpnmain.cgi @@ -19,11 +19,14 @@ # # ###############################################################################
+use Data::UUID; +use MIME::Base64; use Net::DNS; use File::Copy; use File::Temp qw/ tempfile tempdir /; use strict; use Sort::Naturally; +use Sys::Hostname; # enable only the following on debugging purpose #use warnings; #use CGI::Carp 'fatalsToBrowser'; @@ -110,6 +113,7 @@ $cgiparams{'ROOTCERT_EMAIL'} = ''; $cgiparams{'ROOTCERT_OU'} = ''; $cgiparams{'ROOTCERT_CITY'} = ''; $cgiparams{'ROOTCERT_STATE'} = ''; +$cgiparams{'RW_ENDPOINT'} = ''; $cgiparams{'RW_NET'} = ''; $cgiparams{'DPD_DELAY'} = '30'; $cgiparams{'DPD_TIMEOUT'} = '120'; @@ -120,8 +124,38 @@ $cgiparams{'MODE'} = "tunnel"; $cgiparams{'INTERFACE_MODE'} = ""; $cgiparams{'INTERFACE_ADDRESS'} = ""; $cgiparams{'INTERFACE_MTU'} = 1500; +$cgiparams{'DNS_SERVERS'} = ""; &Header::getcgihash(%cgiparams, {'wantfile' => 1, 'filevar' => 'FH'});
+my %APPLE_CIPHERS = ( + "aes256gcm128" => "AES-256-GCM", + "aes128gcm128" => "AES-128-GCM", + "aes256" => "AES-256", + "aes128" => "AES-128", + "3des" => "3DES", +); + +my %APPLE_INTEGRITIES = ( + "sha2_512" => "SHA2-512", + "sha2_384" => "SHA2-384", + "sha2_256" => "SHA2-256", + "sha1" => "SHA1-160", +); + +my %APPLE_DH_GROUPS = ( + "768" => 1, + "1024" => 2, + "1536" => 5, + "2048" => 14, + "3072" => 15, + "4096" => 16, + "6144" => 17, + "8192" => 18, + "e256" => 19, + "e384" => 20, + "e521" => 21, +); + ### ### Useful functions ### @@ -174,10 +208,12 @@ sub newcleanssldatabase { close FILE; } if (! -s ">${General::swroot}/certs/index.txt") { - system ("touch ${General::swroot}/certs/index.txt"); + open(FILE, ">${General::swroot}/certs/index.txt"); + close(FILE); } if (! -s ">${General::swroot}/certs/index.txt.attr") { - system ("touch ${General::swroot}/certs/index.txt.attr"); + open(FILE, ">${General::swroot}/certs/index.txt.attr"); + close(FILE); } unlink ("${General::swroot}/certs/index.txt.old"); unlink ("${General::swroot}/certs/index.txt.attr.old"); @@ -190,9 +226,13 @@ sub newcleanssldatabase { ### sub callssl ($) { my $opt = shift; - my $retssl = `/usr/bin/openssl $opt 2>&1`; #redirect stderr + + # Split the given argument string into single pieces and assign them to an array. + my @opts = split(/ /, $opt); + + my @retssl = &General::system_output("/usr/bin/openssl", @opts); #redirect stderr my $ret = ''; - foreach my $line (split (/\n/, $retssl)) { + foreach my $line (split (/\n/, @retssl)) { &General::log("ipsec", "$line") if (0); # 1 for verbose logging $ret .= '<br>'.$line if ( $line =~ /error|unknown/ ); } @@ -206,13 +246,21 @@ sub callssl ($) { ### sub getCNfromcert ($) { #&General::log("ipsec", "Extracting name from $_[0]..."); - my $temp = `/usr/bin/openssl x509 -text -in $_[0]`; - $temp =~ /Subject:.*CN = (.*)[\n]/; - $temp = $1; - $temp =~ s+/Email+, E+; - $temp =~ s/ ST = / S = /; - $temp =~ s/,//g; - $temp =~ s/'//g; + my @temp = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "$_[0]"); + my $temp; + + foreach my $line (@temp) { + if ($line =~ /Subject:.*CN = (.*)[\n]/) { + $temp = $1; + $temp =~ s+/Email+, E+; + $temp =~ s/ ST = / S = /; + $temp =~ s/,//g; + $temp =~ s/'//g; + + last; + } + } + return $temp; } ### @@ -220,11 +268,19 @@ sub getCNfromcert ($) { ### sub getsubjectfromcert ($) { #&General::log("ipsec", "Extracting subject from $_[0]..."); - my $temp = `/usr/bin/openssl x509 -text -in $_[0]`; - $temp =~ /Subject: (.*)[\n]/; - $temp = $1; - $temp =~ s+/Email+, E+; - $temp =~ s/ ST = / S = /; + my @temp = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "$_[0]"); + my $temp; + + foreach my $line (@temp) { + if($line =~ /Subject: (.*)[\n]/) { + $temp = $1; + $temp =~ s+/Email+, E+; + $temp =~ s/ ST = / S = /; + + last; + } + } + return $temp; } ### @@ -316,6 +372,12 @@ sub writeipsecfiles {
print CONF "\tleftfirewall=yes\n"; print CONF "\tlefthostaccess=yes\n"; + + # Always send the host certificate + if ($lconfighash{$key}[3] eq 'host') { + print CONF "\tleftsendcert=always\n"; + } + print CONF "\tright=$lconfighash{$key}[10]\n";
if ($lconfighash{$key}[3] eq 'net') { @@ -478,6 +540,13 @@ sub writeipsecfiles { # Fragmentation print CONF "\tfragmentation=yes\n";
+ # DNS Servers for RW + if ($lconfighash{$key}[3] eq 'host') { + my @servers = split(/|/, $lconfighash{$key}[39]); + + print CONF "\trightdns=" . join(",", @servers) . "\n"; + } + print CONF "\n"; } #foreach key
@@ -505,19 +574,25 @@ if ($ENV{"REMOTE_ADDR"} eq "") { if ($cgiparams{'ACTION'} eq $Lang::tr{'save'} && $cgiparams{'TYPE'} eq '' && $cgiparams{'KEY'} eq '') { &General::readhash("${General::swroot}/vpn/settings", %vpnsettings);
+ if ($cgiparams{'RW_ENDPOINT'} ne '' && !&General::validip($cgiparams{'RW_ENDPOINT'}) && !&General::validfqdn($cgiparams{'RW_ENDPOINT'})) { + $errormessage = $Lang::tr{'ipsec invalid ip address or fqdn for rw endpoint'}; + 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; }
$vpnsettings{'ENABLED'} = $cgiparams{'ENABLED'}; + $vpnsettings{'RW_ENDPOINT'} = $cgiparams{'RW_ENDPOINT'}; $vpnsettings{'RW_NET'} = $cgiparams{'RW_NET'}; &General::writehash("${General::swroot}/vpn/settings", %vpnsettings); &writeipsecfiles(); if (&vpnenabled) { - system('/usr/local/bin/ipsecctrl', 'S'); + &General::system('/usr/local/bin/ipsecctrl', 'S'); } else { - system('/usr/local/bin/ipsecctrl', 'D'); + &General::system('/usr/local/bin/ipsecctrl', 'D'); } sleep $sleepDelay; SAVE_ERROR: @@ -542,7 +617,7 @@ if ($cgiparams{'ACTION'} eq $Lang::tr{'save'} && $cgiparams{'TYPE'} eq '' && $cg } &General::writehasharray("${General::swroot}/vpn/config", %confighash); &writeipsecfiles(); - system('/usr/local/bin/ipsecctrl', 'R'); + &General::system('/usr/local/bin/ipsecctrl', 'R'); sleep $sleepDelay;
### @@ -614,8 +689,8 @@ END $errormessage = $!; goto UPLOADCA_ERROR; } - my $temp = `/usr/bin/openssl x509 -text -in $filename`; - if ($temp !~ /CA:TRUE/i) { + my @temp = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "$filename"); + if (! grep(/CA:TRUE/, @temp)) { $errormessage = $Lang::tr{'not a valid ca certificate'}; unlink ($filename); goto UPLOADCA_ERROR; @@ -633,7 +708,7 @@ END $cahash{$key}[1] = &Header::cleanhtml(getsubjectfromcert ("${General::swroot}/ca/$cgiparams{'CA_NAME'}cert.pem")); &General::writehasharray("${General::swroot}/vpn/caconfig", %cahash);
- system('/usr/local/bin/ipsecctrl', 'R'); + &General::system('/usr/local/bin/ipsecctrl', 'R'); sleep $sleepDelay;
UPLOADCA_ERROR: @@ -649,9 +724,9 @@ END &Header::openpage($Lang::tr{'ipsec'}, 1, ''); &Header::openbigbox('100%', 'left', '', ''); &Header::openbox('100%', 'left', "$Lang::tr{'ca certificate'}:"); - my $output = `/usr/bin/openssl x509 -text -in ${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem`; - $output = &Header::cleanhtml($output,"y"); - print "<pre>$output</pre>\n"; + my @output = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem"); + @output = &Header::cleanhtml(@output,"y"); + print "<pre>@output</pre>\n"; &Header::closebox(); print "<div align='center'><a href='/cgi-bin/vpnmain.cgi'>$Lang::tr{'back'}</a></div>"; &Header::closebigbox(); @@ -671,7 +746,9 @@ END print "Content-Type: application/force-download\n"; print "Content-Type: application/octet-stream\r\n"; print "Content-Disposition: attachment; filename=$cahash{$cgiparams{'KEY'}}[0]cert.pem\r\n\r\n"; - print `/usr/bin/openssl x509 -in ${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem`; + + my @cert = &General::system_output("/usr/bin/openssl", "x509", "-in", "${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem"); + print "@cert"; exit(0); } else { $errormessage = $Lang::tr{'invalid key'}; @@ -686,21 +763,21 @@ END
if ( -f "${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem" ) { foreach my $key (keys %confighash) { - my $test = `/usr/bin/openssl verify -CAfile ${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem ${General::swroot}/certs/$confighash{$key}[1]cert.pem`; - if ($test =~ /: OK/) { + my @test = &General::system_output("/usr/bin/openssl", "verify", "-CAfile", "${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem", "${General::swroot}/certs/$confighash{$key}[1]cert.pem"); + if (grep(/: OK/, @test)) { # Delete connection unlink ("${General::swroot}/certs/$confighash{$key}[1]cert.pem"); unlink ("${General::swroot}/certs/$confighash{$key}[1].p12"); delete $confighash{$key}; &General::writehasharray("${General::swroot}/vpn/config", %confighash); &writeipsecfiles(); - system('/usr/local/bin/ipsecctrl', 'D', $key) if (&vpnenabled); + &General::system('/usr/local/bin/ipsecctrl', 'D', $key) if (&vpnenabled); } } unlink ("${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem"); delete $cahash{$cgiparams{'KEY'}}; &General::writehasharray("${General::swroot}/vpn/caconfig", %cahash); - system('/usr/local/bin/ipsecctrl', 'R'); + &General::system('/usr/local/bin/ipsecctrl', 'R'); sleep $sleepDelay; } else { $errormessage = $Lang::tr{'invalid key'}; @@ -715,8 +792,8 @@ END my $assignedcerts = 0; if ( -f "${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem" ) { foreach my $key (keys %confighash) { - my $test = `/usr/bin/openssl verify -CAfile ${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem ${General::swroot}/certs/$confighash{$key}[1]cert.pem`; - if ($test =~ /: OK/) { + my @test = &General::system_output("/usr/bin/openssl", "verify", "-CAfile", "${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem", "${General::swroot}/certs/$confighash{$key}[1]cert.pem"); + if (grep(/: OK/, @test)) { $assignedcerts++; } } @@ -752,7 +829,7 @@ END unlink ("${General::swroot}/ca/$cahash{$cgiparams{'KEY'}}[0]cert.pem"); delete $cahash{$cgiparams{'KEY'}}; &General::writehasharray("${General::swroot}/vpn/caconfig", %cahash); - system('/usr/local/bin/ipsecctrl', 'R'); + &General::system('/usr/local/bin/ipsecctrl', 'R'); sleep $sleepDelay; } } else { @@ -764,19 +841,19 @@ END ### } elsif ($cgiparams{'ACTION'} eq $Lang::tr{'show root certificate'} || $cgiparams{'ACTION'} eq $Lang::tr{'show host certificate'}) { - my $output; + my @output; &Header::showhttpheaders(); &Header::openpage($Lang::tr{'ipsec'}, 1, ''); &Header::openbigbox('100%', 'left', '', ''); if ($cgiparams{'ACTION'} eq $Lang::tr{'show root certificate'}) { &Header::openbox('100%', 'left', "$Lang::tr{'root certificate'}:"); - $output = `/usr/bin/openssl x509 -text -in ${General::swroot}/ca/cacert.pem`; + @output = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "${General::swroot}/ca/cacert.pem"); } else { &Header::openbox('100%', 'left', "$Lang::tr{'host certificate'}:"); - $output = `/usr/bin/openssl x509 -text -in ${General::swroot}/certs/hostcert.pem`; + @output = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "${General::swroot}/certs/hostcert.pem"); } - $output = &Header::cleanhtml($output,"y"); - print "<pre>$output</pre>\n"; + @output = &Header::cleanhtml(@output,"y"); + print "<pre>@output</pre>\n"; &Header::closebox(); print "<div align='center'><a href='/cgi-bin/vpnmain.cgi'>$Lang::tr{'back'}</a></div>"; &Header::closebigbox(); @@ -790,7 +867,9 @@ END if ( -f "${General::swroot}/ca/cacert.pem" ) { print "Content-Type: application/force-download\n"; print "Content-Disposition: attachment; filename=cacert.pem\r\n\r\n"; - print `/usr/bin/openssl x509 -in ${General::swroot}/ca/cacert.pem`; + + my @cert = &General::system_output("/usr/bin/openssl", "x509", "-in", "${General::swroot}/ca/cacert.pem"); + print "@cert"; exit(0); } ### @@ -800,7 +879,9 @@ END if ( -f "${General::swroot}/certs/hostcert.pem" ) { print "Content-Type: application/force-download\n"; print "Content-Disposition: attachment; filename=hostcert.pem\r\n\r\n"; - print `/usr/bin/openssl x509 -in ${General::swroot}/certs/hostcert.pem`; + + my @cert = &General::system_output("/usr/bin/openssl", "x509", "-in", "${General::swroot}/certs/hostcert.pem"); + print "@cert"; exit(0); } ### @@ -1007,7 +1088,7 @@ END &General::log("ipsec", "Creating cacert..."); if (open(STDIN, "-|")) { my $opt = " req -x509 -sha256 -nodes"; - $opt .= " -days 999999"; + $opt .= " -days 3650"; $opt .= " -newkey rsa:4096"; $opt .= " -keyout ${General::swroot}/private/cakey.pem"; $opt .= " -out ${General::swroot}/ca/cacert.pem"; @@ -1065,7 +1146,7 @@ END print $fh "subjectAltName=$cgiparams{'SUBJECTALTNAME'}" if ($cgiparams{'SUBJECTALTNAME'}); close ($fh);
- my $opt = " ca -md sha256 -days 999999"; + my $opt = " ca -md sha256 -days 825"; $opt .= " -batch -notext"; $opt .= " -in ${General::swroot}/certs/hostreq.pem"; $opt .= " -out ${General::swroot}/certs/hostcert.pem"; @@ -1163,7 +1244,7 @@ END
ROOTCERT_SUCCESS: if (&vpnenabled) { - system('/usr/local/bin/ipsecctrl', 'S'); + &General::system('/usr/local/bin/ipsecctrl', 'S'); sleep $sleepDelay; } ROOTCERT_SKIP: @@ -1175,9 +1256,279 @@ END print "Content-Type: application/force-download\n"; print "Content-Disposition: attachment; filename=" . $confighash{$cgiparams{'KEY'}}[1] . ".p12\r\n"; print "Content-Type: application/octet-stream\r\n\r\n"; - print `/bin/cat ${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1].p12`; + + open(FILE, "${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1].p12"); + my @p12 = <FILE>; + close(FILE); + print "@file"; + exit (0);
+# Export Apple profile to browser +} elsif ($cgiparams{'ACTION'} eq $Lang::tr{'download apple profile'}) { + # Read global configuration + &General::readhash("${General::swroot}/vpn/settings", %vpnsettings); + + # Read connections + &General::readhasharray("${General::swroot}/vpn/config", %confighash); + my $key = $cgiparams{'KEY'}; + + # Create a UUID generator + my $uuid = Data::UUID->new(); + + my $uuid1 = $uuid->create_str(); + my $uuid2 = $uuid->create_str(); + + my $ca = ""; + my $ca_uuid = $uuid->create_str(); + + my $cert = ""; + my $cert_uuid = $uuid->create_str(); + + # Read and encode the CA & certificate + if ($confighash{$key}[4] eq "cert") { + my $ca_path = "${General::swroot}/ca/cacert.pem"; + my $cert_path = "${General::swroot}/certs/$confighash{$key}[1].p12"; + + # Read the CA and encode it into Base64 + open(CA, "<${ca_path}"); + local($/) = undef; # slurp + $ca = MIME::Base64::encode_base64(<CA>); + close(CA); + + # Read certificate and encode it into Base64 + open(CERT, "<${cert_path}"); + local($/) = undef; # slurp + $cert = MIME::Base64::encode_base64(<CERT>); + close(CERT); + } + + print "Content-Type: application/octet-stream\n"; + print "Content-Disposition: attachment; filename=" . $confighash{$key}[1] . ".mobileconfig\n"; + print "\n"; # end headers + + # Use our own FQDN if nothing else is configured + my $endpoint = ($vpnsettings{'RW_ENDPOINT'} ne "") ? $vpnsettings{'RW_ENDPOINT'} : &hostname(); + + print "<!DOCTYPE plist PUBLIC \"-//Apple//DTD PLIST 1.0//EN\" \"http://www.apple.com/DTDs/PropertyList-1.0.dtd\">\n"; + print "<plist version="1.0">\n"; + print " <dict>\n"; + print " <key>PayloadDisplayName</key>\n"; + print " <string>$confighash{$key}[1]</string>\n"; + print " <key>PayloadIdentifier</key>\n"; + print " <string>$confighash{$key}[1]</string>\n"; + print " <key>PayloadUUID</key>\n"; + print " <string>${uuid1}</string>\n"; + print " <key>PayloadType</key>\n"; + print " <string>Configuration</string>\n"; + print " <key>PayloadVersion</key>\n"; + print " <integer>1</integer>\n"; + print " <key>PayloadContent</key>\n"; + print " <array>\n"; + print " <dict>\n"; + print " <key>PayloadIdentifier</key>\n"; + print " <string>org.example.vpn1.conf1</string>\n"; + print " <key>PayloadUUID</key>\n"; + print " <string>${uuid2}</string>\n"; + print " <key>PayloadType</key>\n"; + print " <string>com.apple.vpn.managed</string>\n"; + print " <key>PayloadVersion</key>\n"; + print " <integer>1</integer>\n"; + print " <key>UserDefinedName</key>\n"; + print " <string>$confighash{$key}[1]</string>\n"; + print " <key>VPNType</key>\n"; + print " <string>IKEv2</string>\n"; + print " <key>IKEv2</key>\n"; + print " <dict>\n"; + print " <key>RemoteAddress</key>\n"; + print " <string>$endpoint</string>\n"; + + # PFS + my $pfs = $confighash{$key}[28]; + if ($pfs eq "on") { + print " <key>EnablePFS</key>\n"; + print " <true/>\n"; + } + + # IKE Cipher Suite + print " <key>IKESecurityAssociationParameters</key>\n"; + print " <dict>\n"; + + # Encryption + foreach my $cipher (split(/|/,$confighash{$key}[18])) { + # Skip all unsupported ciphers + next unless (exists $APPLE_CIPHERS{$cipher}); + + print " <key>EncryptionAlgorithm</key>\n"; + print " <string>$APPLE_CIPHERS{$cipher}</string>\n"; + last; + } + + # Integrity + foreach my $integrity (split(/|/,$confighash{$key}[19])) { + # Skip all unsupported algorithms + next unless (exists $APPLE_INTEGRITIES{$integrity}); + + print " <key>IntegrityAlgorithm</key>\n"; + print " <string>$APPLE_INTEGRITIES{$integrity}</string>\n"; + last; + } + + # Diffie Hellman Groups + foreach my $group (split(/|/,$confighash{$key}[20])) { + # Skip all unsupported algorithms + next unless (exists $APPLE_DH_GROUPS{$group}); + + print " <key>DiffieHellmanGroup</key>\n"; + print " <string>$APPLE_DH_GROUPS{$group}</string>\n"; + last; + } + + # Lifetime + my $lifetime = $confighash{$key}[16] * 60; + print " <key>LifeTimeInMinutes</key>\n"; + print " <integer>$lifetime</integer>\n"; + print " </dict>\n"; + + # ESP Cipher Suite + print " <key>ChildSecurityAssociationParameters</key>\n"; + print " <dict>\n"; + + # Encryption + foreach my $cipher (split(/|/,$confighash{$key}[21])) { + # Skip all unsupported ciphers + next unless (exists $APPLE_CIPHERS{$cipher}); + + print " <key>EncryptionAlgorithm</key>\n"; + print " <string>$APPLE_CIPHERS{$cipher}</string>\n"; + last; + } + + # Integrity + foreach my $integrity (split(/|/,$confighash{$key}[22])) { + # Skip all unsupported algorithms + next unless (exists $APPLE_INTEGRITIES{$integrity}); + + print " <key>IntegrityAlgorithm</key>\n"; + print " <string>$APPLE_INTEGRITIES{$integrity}</string>\n"; + last; + } + + # Diffie Hellman Groups + foreach my $group (split(/|/,$confighash{$key}[23])) { + # Skip all unsupported algorithms + next unless (exists $APPLE_DH_GROUPS{$group}); + + print " <key>DiffieHellmanGroup</key>\n"; + print " <string>$APPLE_DH_GROUPS{$group}</string>\n"; + last; + } + + # Lifetime + my $lifetime = $confighash{$key}[17] * 60; + print " <key>LifeTimeInMinutes</key>\n"; + print " <integer>$lifetime</integer>\n"; + print " </dict>\n"; + + + # Left ID + if ($confighash{$key}[9]) { + my $leftid = $confighash{$key}[9]; + + # Strip leading @ from FQDNs + if ($leftid =~ m/^@(.*)$/) { + $leftid = $1; + } + + print " <key>LocalIdentifier</key>\n"; + print " <string>$leftid</string>\n"; + } + + # Right ID + if ($confighash{$key}[7]) { + my $rightid = $confighash{$key}[7]; + + # Strip leading @ from FQDNs + if ($rightid =~ m/^@(.*)$/) { + $rightid = $1; + } + + print " <key>RemoteIdentifier</key>\n"; + print " <string>$rightid</string>\n"; + } + + if ($confighash{$key}[4] eq "cert") { + print " <key>AuthenticationMethod</key>\n"; + print " <string>Certificate</string>\n"; + + print " <key>PayloadCertificateUUID</key>\n"; + print " <string>${cert_uuid}</string>\n"; + } else { + print " <key>AuthenticationMethod</key>\n"; + print " <string>SharedSecret</string>\n"; + print " <key>SharedSecret</key>\n"; + print " <string>$confighash{$key}[5]</string>\n"; + } + + print " <key>ExtendedAuthEnabled</key>\n"; + print " <integer>0</integer>\n"; + + # These are not needed, but we provide some default to stop iPhone asking for credentials + print " <key>AuthName</key>\n"; + print " <string>$confighash{$key}[1]</string>\n"; + print " <key>AuthPassword</key>\n"; + print " <string></string>\n"; + print " </dict>\n"; + print " </dict>\n"; + + if ($confighash{$key}[4] eq "cert") { + print " <dict>\n"; + print " <key>PayloadIdentifier</key>\n"; + print " <string>org.example.vpn1.client</string>\n"; + print " <key>PayloadDisplayName</key>\n"; + print " <string>$confighash{$key}[1]</string>\n"; + print " <key>PayloadUUID</key>\n"; + print " <string>${cert_uuid}</string>\n"; + print " <key>PayloadType</key>\n"; + print " <string>com.apple.security.pkcs12</string>\n"; + print " <key>PayloadVersion</key>\n"; + print " <integer>1</integer>\n"; + print " <key>PayloadContent</key>\n"; + print " <data>\n"; + + foreach (split /\n/,${cert}) { + print " $_\n"; + } + + print " </data>\n"; + print " </dict>\n"; + + print " <dict>\n"; + print " <key>PayloadIdentifier</key>\n"; + print " <string>org.example.ca</string>\n"; + print " <key>PayloadUUID</key>\n"; + print " <string>${ca_uuid}</string>\n"; + print " <key>PayloadType</key>\n"; + print " <string>com.apple.security.root</string>\n"; + print " <key>PayloadVersion</key>\n"; + print " <integer>1</integer>\n"; + print " <key>PayloadContent</key>\n"; + print " <data>\n"; + + foreach (split /\n/,${ca}) { + print " $_\n"; + } + + print " </data>\n"; + print " </dict>\n"; + } + + print " </array>\n"; + print " </dict>\n"; + print "</plist>\n"; + + # Done + exit(0); ### ### Display certificate ### @@ -1189,9 +1540,9 @@ END &Header::openpage($Lang::tr{'ipsec'}, 1, ''); &Header::openbigbox('100%', 'left', '', ''); &Header::openbox('100%', 'left', "$Lang::tr{'cert'}:"); - my $output = `/usr/bin/openssl x509 -text -in ${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem`; - $output = &Header::cleanhtml($output,"y"); - print "<pre>$output</pre>\n"; + my @output = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem"); + @output = &Header::cleanhtml(@output,"y"); + print "<pre>@output</pre>\n"; &Header::closebox(); print "<div align='center'><a href='/cgi-bin/vpnmain.cgi'>$Lang::tr{'back'}</a></div>"; &Header::closebigbox(); @@ -1208,7 +1559,12 @@ END if ( -f "${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem") { print "Content-Type: application/force-download\n"; print "Content-Disposition: attachment; filename=" . $confighash{$cgiparams{'KEY'}}[1] . "cert.pem\n\n"; - print `/bin/cat ${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem`; + + open(FILE, "${General::swroot}/certs/$confighash{$cgiparams{'KEY'}}[1]cert.pem"); + my @pem = <FILE>; + close(FILE); + print "@pem"; + exit (0); }
@@ -1225,12 +1581,12 @@ END $confighash{$cgiparams{'KEY'}}[0] = 'on'; &General::writehasharray("${General::swroot}/vpn/config", %confighash); &writeipsecfiles(); - system('/usr/local/bin/ipsecctrl', 'S', $cgiparams{'KEY'}) if (&vpnenabled); + &General::system('/usr/local/bin/ipsecctrl', 'S', $cgiparams{'KEY'}) if (&vpnenabled); } else { $confighash{$cgiparams{'KEY'}}[0] = 'off'; &General::writehasharray("${General::swroot}/vpn/config", %confighash); &writeipsecfiles(); - system('/usr/local/bin/ipsecctrl', 'D', $cgiparams{'KEY'}) if (&vpnenabled); + &General::system('/usr/local/bin/ipsecctrl', 'D', $cgiparams{'KEY'}) if (&vpnenabled); } sleep $sleepDelay; } else { @@ -1246,7 +1602,7 @@ END
if ($confighash{$cgiparams{'KEY'}}) { if (&vpnenabled) { - system('/usr/local/bin/ipsecctrl', 'S', $cgiparams{'KEY'}); + &General::system('/usr/local/bin/ipsecctrl', 'S', $cgiparams{'KEY'}); sleep $sleepDelay; } } else { @@ -1266,7 +1622,7 @@ END delete $confighash{$cgiparams{'KEY'}}; &General::writehasharray("${General::swroot}/vpn/config", %confighash); &writeipsecfiles(); - system('/usr/local/bin/ipsecctrl', 'D', $cgiparams{'KEY'}) if (&vpnenabled); + &General::system('/usr/local/bin/ipsecctrl', 'D', $cgiparams{'KEY'}) if (&vpnenabled); } else { $errormessage = $Lang::tr{'invalid key'}; } @@ -1353,6 +1709,7 @@ END $cgiparams{'INTERFACE_MODE'} = $confighash{$cgiparams{'KEY'}}[36]; $cgiparams{'INTERFACE_ADDRESS'} = $confighash{$cgiparams{'KEY'}}[37]; $cgiparams{'INTERFACE_MTU'} = $confighash{$cgiparams{'KEY'}}[38]; + $cgiparams{'DNS_SERVERS'} = $confighash{$cgiparams{'KEY'}}[39];
if (!$cgiparams{'DPD_DELAY'}) { $cgiparams{'DPD_DELAY'} = 30; @@ -1486,6 +1843,16 @@ END } }
+ if ($cgiparams{'TYPE'} eq 'host') { + my @servers = split(",", $cgiparams{'DNS_SERVERS'}); + foreach my $server (@servers) { + unless (&Network::check_ip_address($server)) { + $errormessage = $Lang::tr{'ipsec dns server address is invalid'}; + goto VPNCONF_ERROR; + } + } + } + if ($cgiparams{'ENABLED'} !~ /^(on|off)$/) { $errormessage = $Lang::tr{'invalid input'}; goto VPNCONF_ERROR; @@ -1552,7 +1919,7 @@ END
# Sign the certificate request &General::log("ipsec", "Signing your cert $cgiparams{'NAME'}..."); - my $opt = " ca -md sha256 -days 999999"; + my $opt = " ca -md sha256 -days 825"; $opt .= " -batch -notext"; $opt .= " -in $filename"; $opt .= " -out ${General::swroot}/certs/$cgiparams{'NAME'}cert.pem"; @@ -1623,8 +1990,8 @@ END unshift (@names,$cahash{$x}[0]); } if ($casubject) { # a new one! - my $temp = `/usr/bin/openssl x509 -text -in /tmp/newcacert`; - if ($temp !~ /CA:TRUE/i) { + my @temp = &General::system_output("/usr/bin/openssl", "x509", "-text", "-in", "/tmp/newcacert"); + if (! grep(/CA:TRUE/, @temp)) { $errormessage = $Lang::tr{'not a valid ca certificate'}; } else { #compute a name for it @@ -1639,7 +2006,7 @@ END $cahash{$key}[0] = $cgiparams{'CA_NAME'}; $cahash{$key}[1] = $casubject; &General::writehasharray("${General::swroot}/vpn/caconfig", %cahash); - system('/usr/local/bin/ipsecctrl', 'R'); + &General::system('/usr/local/bin/ipsecctrl', 'R'); } } } @@ -1679,12 +2046,12 @@ END # Verify the certificate has a valid CA and move it &General::log("ipsec", "Validating imported cert against our known CA..."); my $validca = 1; #assume ok - my $test = `/usr/bin/openssl verify -CAfile ${General::swroot}/ca/cacert.pem $filename`; - if ($test !~ /: OK/) { + my @test = &General::system_output("/usr/bin/openssl", "verify", "-CAfile", "${General::swroot}/ca/cacert.pem", "$filename"); + if (! grep(/: OK/, @test)) { my $validca = 0; foreach my $key (keys %cahash) { - $test = `/usr/bin/openssl verify -CAfile ${General::swroot}/ca/$cahash{$key}[0]cert.pem $filename`; - if ($test =~ /: OK/) { + @test = &General::system_output("/usr/bin/openssl", "verify", "-CAfile", "${General::swroot}/ca/$cahash{$key}[0]cert.pem", "$filename"); + if (grep(/: OK/, @test)) { $validca = 1; last; } @@ -1825,7 +2192,7 @@ END print $fh "subjectAltName=$cgiparams{'SUBJECTALTNAME'}" if ($cgiparams{'SUBJECTALTNAME'}); close ($fh);
- my $opt = " ca -md sha256 -days 999999 -batch -notext"; + my $opt = " ca -md sha256 -days 825 -batch -notext"; $opt .= " -in ${General::swroot}/certs/$cgiparams{'NAME'}req.pem"; $opt .= " -out ${General::swroot}/certs/$cgiparams{'NAME'}cert.pem"; $opt .= " -extfile $v3extname"; @@ -1888,7 +2255,7 @@ END my $key = $cgiparams{'KEY'}; if (! $key) { $key = &General::findhasharraykey (%confighash); - foreach my $i (0 .. 38) { $confighash{$key}[$i] = "";} + foreach my $i (0 .. 39) { $confighash{$key}[$i] = "";} } $confighash{$key}[0] = $cgiparams{'ENABLED'}; $confighash{$key}[1] = $cgiparams{'NAME'}; @@ -1939,6 +2306,7 @@ END $confighash{$key}[36] = $cgiparams{'INTERFACE_MODE'}; $confighash{$key}[37] = $cgiparams{'INTERFACE_ADDRESS'}; $confighash{$key}[38] = $cgiparams{'INTERFACE_MTU'}; + $confighash{$key}[39] = join("|", split(",", $cgiparams{'DNS_SERVERS'}));
# free unused fields! $confighash{$key}[15] = 'off'; @@ -1946,7 +2314,7 @@ END &General::writehasharray("${General::swroot}/vpn/config", %confighash); &writeipsecfiles(); if (&vpnenabled) { - system('/usr/local/bin/ipsecctrl', 'S', $key); + &General::system('/usr/local/bin/ipsecctrl', 'S', $key); sleep $sleepDelay; } if ($cgiparams{'EDIT_ADVANCED'} eq 'on') { @@ -2007,11 +2375,11 @@ END #use default advanced value $cgiparams{'IKE_ENCRYPTION'} = 'chacha20poly1305|aes256gcm128|aes256gcm96|aes256gcm64|aes256|aes192gcm128|aes192gcm96|aes192gcm64|aes192|aes128gcm128|aes128gcm96|aes128gcm64|aes128'; #[18]; $cgiparams{'IKE_INTEGRITY'} = 'sha2_512|sha2_256'; #[19]; - $cgiparams{'IKE_GROUPTYPE'} = 'curve25519|curve448|4096|3072|2048'; #[20]; + $cgiparams{'IKE_GROUPTYPE'} = 'curve448|curve25519|4096|3072|2048'; #[20]; $cgiparams{'IKE_LIFETIME'} = '3'; #[16]; $cgiparams{'ESP_ENCRYPTION'} = 'chacha20poly1305|aes256gcm128|aes256gcm96|aes256gcm64|aes256|aes192gcm128|aes192gcm96|aes192gcm64|aes192|aes128gcm128|aes128gcm96|aes128gcm64|aes128'; #[21]; $cgiparams{'ESP_INTEGRITY'} = 'sha2_512|sha2_256'; #[22]; - $cgiparams{'ESP_GROUPTYPE'} = 'curve25519|curve448|4096|3072|2048'; #[23]; + $cgiparams{'ESP_GROUPTYPE'} = 'curve448|curve25519|4096|3072|2048'; #[23]; $cgiparams{'ESP_KEYLIFE'} = '1'; #[17]; $cgiparams{'COMPRESSION'} = 'off'; #[13]; $cgiparams{'ONLY_PROPOSED'} = 'on'; #[24]; @@ -2021,6 +2389,7 @@ END $cgiparams{'INTERFACE_MODE'} = ""; $cgiparams{'INTERFACE_ADDRESS'} = ""; $cgiparams{'INTERFACE_MTU'} = 1500; + $cgiparams{'DNS_SERVERS'} = ""; }
VPNCONF_ERROR: @@ -2117,11 +2486,8 @@ END EOF }
- my $disabled; - my $blob; - if ($cgiparams{'TYPE'} eq 'host') { - $disabled = "disabled='disabled'"; - } elsif ($cgiparams{'TYPE'} eq 'net') { + my $blob = ""; + if ($cgiparams{'TYPE'} eq 'net') { $blob = "<img src='/blob.gif' alt='*' />"; };
@@ -2131,6 +2497,9 @@ EOF my @remote_subnets = split(/|/, $cgiparams{'REMOTE_SUBNET'}); my $remote_subnets = join(",", @remote_subnets);
+ my @dns_servers = split(/|/, $cgiparams{'DNS_SERVERS'}); + my $dns_servers = join(",", @dns_servers); + print <<END; <tr> <td width='20%'>$Lang::tr{'enabled'}</td> @@ -2166,10 +2535,26 @@ END <td width='30%'> <input type='text' name='LOCAL_SUBNET' value='$local_subnets' size="25" /> </td> - <td class='boldbase' nowrap='nowrap' width='20%'>$Lang::tr{'remote subnet'} $blob</td> +END + + if ($cgiparams{'TYPE'} eq "net") { + print <<END; + <td class='boldbase' nowrap='nowrap' width='20%'>$Lang::tr{'remote subnet'} <img src='/blob.gif' alt='*' /></td> <td width='30%'> - <input $disabled type='text' name='REMOTE_SUBNET' value='$remote_subnets' size="25" /> + <input type='text' name='REMOTE_SUBNET' value='$remote_subnets' size="25" /> </td> +END + + } elsif ($cgiparams{'TYPE'} eq "host") { + print <<END; + <td class='boldbase' nowrap='nowrap' width='20%'>$Lang::tr{'dns servers'}:</td> + <td width='30%'> + <input type='text' name='DNS_SERVERS' value='$dns_servers' size="25" /> + </td> +END + } + + print <<END; </tr> <tr> <td class='boldbase' width='20%'>$Lang::tr{'vpn local id'}:</td> @@ -2375,7 +2760,7 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) || goto ADVANCED_ERROR; } foreach my $val (@temp) { - if ($val !~ /^(curve25519|curve448|e521|e384|e256|e224|e192|e512bp|e384bp|e256bp|e224bp|768|1024|1536|2048|3072|4096|6144|8192)$/) { + if ($val !~ /^(curve448|curve25519|e521|e384|e256|e224|e192|e512bp|e384bp|e256bp|e224bp|768|1024|1536|2048|3072|4096|6144|8192)$/) { $errormessage = $Lang::tr{'invalid input'}; goto ADVANCED_ERROR; } @@ -2416,7 +2801,7 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) || goto ADVANCED_ERROR; } foreach my $val (@temp) { - if ($val !~ /^(curve25519|curve448|e521|e384|e256|e224|e192|e512bp|e384bp|e256bp|e224bp|768|1024|1536|2048|3072|4096|6144|8192|none)$/) { + if ($val !~ /^(curve448|curve25519|e521|e384|e256|e224|e192|e512bp|e384bp|e256bp|e224bp|768|1024|1536|2048|3072|4096|6144|8192|none)$/) { $errormessage = $Lang::tr{'invalid input'}; goto ADVANCED_ERROR; } @@ -2475,7 +2860,7 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) || &General::writehasharray("${General::swroot}/vpn/config", %confighash); &writeipsecfiles(); if (&vpnenabled) { - system('/usr/local/bin/ipsecctrl', 'S', $cgiparams{'KEY'}); + &General::system('/usr/local/bin/ipsecctrl', 'S', $cgiparams{'KEY'}); sleep $sleepDelay; } goto ADVANCED_END; @@ -2505,6 +2890,7 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) || $cgiparams{'INTERFACE_MODE'} = $confighash{$cgiparams{'KEY'}}[36]; $cgiparams{'INTERFACE_ADDRESS'} = $confighash{$cgiparams{'KEY'}}[37]; $cgiparams{'INTERFACE_MTU'} = $confighash{$cgiparams{'KEY'}}[38]; + $cgiparams{'DNS_SERVERS'} = $confighash{$cgiparams{'KEY'}}[39];
if (!$cgiparams{'DPD_DELAY'}) { $cgiparams{'DPD_DELAY'} = 30; @@ -2555,8 +2941,8 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) || $checked{'IKE_INTEGRITY'}{'aesxcbc'} = ''; @temp = split('|', $cgiparams{'IKE_INTEGRITY'}); foreach my $key (@temp) {$checked{'IKE_INTEGRITY'}{$key} = "selected='selected'"; } - $checked{'IKE_GROUPTYPE'}{'curve25519'} = ''; $checked{'IKE_GROUPTYPE'}{'curve448'} = ''; + $checked{'IKE_GROUPTYPE'}{'curve25519'} = ''; $checked{'IKE_GROUPTYPE'}{'768'} = ''; $checked{'IKE_GROUPTYPE'}{'1024'} = ''; $checked{'IKE_GROUPTYPE'}{'1536'} = ''; @@ -2595,8 +2981,8 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) || $checked{'ESP_INTEGRITY'}{'aesxcbc'} = ''; @temp = split('|', $cgiparams{'ESP_INTEGRITY'}); foreach my $key (@temp) {$checked{'ESP_INTEGRITY'}{$key} = "selected='selected'"; } - $checked{'ESP_GROUPTYPE'}{'curve25519'} = ''; $checked{'ESP_GROUPTYPE'}{'curve448'} = ''; + $checked{'ESP_GROUPTYPE'}{'curve25519'} = ''; $checked{'ESP_GROUPTYPE'}{'768'} = ''; $checked{'ESP_GROUPTYPE'}{'1024'} = ''; $checked{'ESP_GROUPTYPE'}{'1536'} = ''; @@ -2760,8 +3146,8 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) || <td class='boldbase' width="15%">$Lang::tr{'grouptype'}</td> <td class='boldbase'> <select name='IKE_GROUPTYPE' multiple='multiple' size='6' style='width: 100%'> - <option value='curve25519' $checked{'IKE_GROUPTYPE'}{'curve25519'}>Curve 25519 (256 bit)</option> <option value='curve448' $checked{'IKE_GROUPTYPE'}{'curve448'}>Curve 448 (224 bit)</option> + <option value='curve25519' $checked{'IKE_GROUPTYPE'}{'curve25519'}>Curve 25519 (128 bit)</option> <option value='e521' $checked{'IKE_GROUPTYPE'}{'e521'}>ECP-521 (NIST)</option> <option value='e512bp' $checked{'IKE_GROUPTYPE'}{'e512bp'}>ECP-512 (Brainpool)</option> <option value='e384' $checked{'IKE_GROUPTYPE'}{'e384'}>ECP-384 (NIST)</option> @@ -2783,8 +3169,8 @@ if(($cgiparams{'ACTION'} eq $Lang::tr{'advanced'}) || </td> <td class='boldbase'> <select name='ESP_GROUPTYPE' multiple='multiple' size='6' style='width: 100%'> - <option value='curve25519' $checked{'ESP_GROUPTYPE'}{'curve25519'}>Curve 25519 (256 bit)</option> <option value='curve448' $checked{'ESP_GROUPTYPE'}{'curve448'}>Curve 448 (224 bit)</option> + <option value='curve25519' $checked{'ESP_GROUPTYPE'}{'curve25519'}>Curve 25519 (128 bit)</option> <option value='e521' $checked{'ESP_GROUPTYPE'}{'e521'}>ECP-521 (NIST)</option> <option value='e512bp' $checked{'ESP_GROUPTYPE'}{'e512bp'}>ECP-512 (Brainpool)</option> <option value='e384' $checked{'ESP_GROUPTYPE'}{'e384'}>ECP-384 (NIST)</option> @@ -2923,7 +3309,7 @@ EOF &General::readhasharray("${General::swroot}/vpn/config", %confighash); $cgiparams{'CA_NAME'} = '';
- my @status = `/usr/local/bin/ipsecctrl I 2>/dev/null`; + my @status = &General::system_output("/usr/local/bin/ipsecctrl", "I");
$checked{'ENABLED'} = $cgiparams{'ENABLED'} eq 'on' ? "checked='checked'" : '';
@@ -2960,6 +3346,10 @@ EOF <input type='checkbox' name='ENABLED' $checked{'ENABLED'} /> </td> </tr> + <tr> + <td class='base' nowrap='nowrap' width="60%">$Lang::tr{'ipsec roadwarrior endpoint'}:</td> + <td width="40%"><input type='text' name='RW_ENDPOINT' value='$cgiparams{'RW_ENDPOINT'}' /></td> + </tr> <tr> <td class='base' nowrap='nowrap' width="60%">$Lang::tr{'host to net vpn'}:</td> <td width="40%"><input type='text' name='RW_NET' value='$cgiparams{'RW_NET'}' /></td> @@ -2982,7 +3372,7 @@ END <th width='23%' class='boldbase' align='center'><b>$Lang::tr{'common name'}</b></th> <th width='30%' class='boldbase' align='center'><b>$Lang::tr{'remark'}</b></th> <th width='10%' class='boldbase' align='center'><b>$Lang::tr{'status'}</b></th> - <th class='boldbase' align='center' colspan='6'><b>$Lang::tr{'action'}</b></th> + <th class='boldbase' align='center' colspan='7'><b>$Lang::tr{'action'}</b></th> </tr> END ; @@ -3083,6 +3473,22 @@ END } else { print "<td width='2%' $col> </td>"; } + + # Apple Profile + if ($confighash{$key}[3] eq 'host') { + print <<END; + <td align='center' $col> + <form method='post' action='$ENV{'SCRIPT_NAME'}'> + <input type='image' name='$Lang::tr{'download apple profile'}' src='/images/apple.png' alt='$Lang::tr{'download apple profile'}' title='$Lang::tr{'download apple profile'}' /> + <input type='hidden' name='ACTION' value='$Lang::tr{'download apple profile'}' /> + <input type='hidden' name='KEY' value='$key' /> + </form> + </td> +END + } else { + print "<td width='2%' $col> </td>"; + } + print <<END <td align='center' $col> <form method='post' action='$ENV{'SCRIPT_NAME'}'> @@ -3337,7 +3743,7 @@ sub make_algos($$$$$) {
if ($grp =~ m/^e(.*)$/) { push(@algo, "ecp$1"); - } elsif ($grp =~ m/curve(25519|448)/) { + } elsif ($grp =~ m/curve(448|25519)/) { push(@algo, "$grp"); } else { push(@algo, "modp$grp"); @@ -3354,7 +3760,7 @@ sub make_algos($$$$$) { # noop } elsif ($grp =~ m/^e(.*)$/) { push(@algo, "ecp$1"); - } elsif ($grp =~ m/curve(25519|448)/) { + } elsif ($grp =~ m/curve(448|25519)/) { push(@algo, "$grp"); } else { push(@algo, "modp$grp"); diff --git a/html/cgi-bin/wakeonlan.cgi b/html/cgi-bin/wakeonlan.cgi index 289dc224a..164cec2de 100644 --- a/html/cgi-bin/wakeonlan.cgi +++ b/html/cgi-bin/wakeonlan.cgi @@ -171,7 +171,7 @@ if ( $cgiparams{'ACTION'} eq 'wakeup' )
undef %cgiparams;
- system("/usr/sbin/etherwake -i $iface $mac"); + &General::system("/usr/sbin/etherwake", "-i", "$iface", "$mac");
# make a box with info, 'refresh' to normal screen after 5 seconds if ( $refresh eq 'yes' ) diff --git a/html/cgi-bin/webaccess.cgi b/html/cgi-bin/webaccess.cgi index 0d50f01b1..934fe6beb 100644 --- a/html/cgi-bin/webaccess.cgi +++ b/html/cgi-bin/webaccess.cgi @@ -86,7 +86,7 @@ if (($cgiparams{'ACTION'} eq 'submit') && ($is_supervisor)) ((defined($proxysettings{'SUPERVISOR_PASSWORD'})) && ($proxysettings{'SUPERVISOR_PASSWORD'} eq ''))) { &write_acl; - system("/usr/local/bin/squidctrl restart >/dev/null 2>&1"); + &General::system("/usr/local/bin/squidctrl", "restart"); } }
diff --git a/html/cgi-bin/wireless.cgi b/html/cgi-bin/wireless.cgi index d4592a2a4..35bdaaa60 100644 --- a/html/cgi-bin/wireless.cgi +++ b/html/cgi-bin/wireless.cgi @@ -133,7 +133,7 @@ ADDERROR: close(FILE); undef %cgiparams; &General::log($Lang::tr{'wireless config added'}); - system('/usr/local/bin/wirelessctrl'); + &General::system('/usr/local/bin/wirelessctrl'); } ADDEXIT: } @@ -157,7 +157,7 @@ if ($cgiparams{'ACTION'} eq 'edit') } } &General::log($Lang::tr{'wireless config changed'}); - system('/usr/local/bin/wirelessctrl'); + &General::system('/usr/local/bin/wirelessctrl'); }
if ($cgiparams{'ACTION'} eq 'remove' || $cgiparams{'ACTION'} eq 'toggle') @@ -178,7 +178,7 @@ if ($cgiparams{'ACTION'} eq 'remove' || $cgiparams{'ACTION'} eq 'toggle') } close(FILE); &General::log($Lang::tr{'wireless config changed'}); - system('/usr/local/bin/wirelessctrl'); + &General::system('/usr/local/bin/wirelessctrl'); }
@@ -277,7 +277,7 @@ my @curhosts = <HOSTFILE>; close (HOSTFILE);
my $connstate = &Header::connectionstatus(); -my @arp = `/sbin/arp -n`; +my @arp = &General::system_output("/sbin/arp", "-n"); shift @arp;
foreach my $line (@current) diff --git a/html/cgi-bin/wirelessclient.cgi b/html/cgi-bin/wirelessclient.cgi index a7a9881b8..7cd23aed4 100644 --- a/html/cgi-bin/wirelessclient.cgi +++ b/html/cgi-bin/wirelessclient.cgi @@ -796,7 +796,7 @@ END }
sub BuildConfiguration() { - system("/usr/local/bin/wirelessclient restart"); + &General::system("/usr/local/bin/wirelessclient", "restart"); }
sub NextID() { diff --git a/html/cgi-bin/wlanap.cgi b/html/cgi-bin/wlanap.cgi index 602d4d3c1..eba5fe774 100644 --- a/html/cgi-bin/wlanap.cgi +++ b/html/cgi-bin/wlanap.cgi @@ -148,16 +148,16 @@ if ( $wlanapsettings{'ACTION'} eq "$Lang::tr{'save'}" ){ &General::writehash("/var/ipfire/wlanap/settings", %wlanapsettings); &WriteConfig_hostapd();
- system("/usr/local/bin/wlanapctrl restart >/dev/null 2>&1"); + &General::system("/usr/local/bin/wlanapctrl", "restart"); pid(); } }elsif ( $wlanapsettings{'ACTION'} eq "$Lang::tr{'wlanap interface'}" ){ &General::writehash("/var/ipfire/wlanap/settings", %wlanapsettings); }elsif ( ($wlanapsettings{'ACTION'} eq "$Lang::tr{'start'}") && ($memory == 0) ){ - system("/usr/local/bin/wlanapctrl start >/dev/null 2>&1"); + &General::system("/usr/local/bin/wlanapctrl", "start"); pid(); }elsif ( $wlanapsettings{'ACTION'} eq "$Lang::tr{'stop'}" ){ - system("/usr/local/bin/wlanapctrl stop >/dev/null 2>&1"); + &General::system("/usr/local/bin/wlanapctrl", "stop"); $memory=0; }
diff --git a/html/html/images/apple.png b/html/html/images/apple.png new file mode 100644 index 000000000..6571a749b Binary files /dev/null and b/html/html/images/apple.png differ diff --git a/langs/de/cgi-bin/de.pl b/langs/de/cgi-bin/de.pl index 95af3155b..0d2228ede 100644 --- a/langs/de/cgi-bin/de.pl +++ b/langs/de/cgi-bin/de.pl @@ -326,8 +326,6 @@ 'advproxy errmsg wpad invalid ip or mask' => 'WPAD: Ungültige IP oder Subnetz für ausgenommenes IP-Subnetz', 'advproxy error design' => 'Design der Fehlermeldungen', 'advproxy error language' => 'Sprache der Fehlermeldungen', -'advproxy fake referer' => 'Gefälschter Referer für externe Webseiten', -'advproxy fake useragent' => 'Gefälschter User-Agent für externe Webseiten', 'advproxy friday' => 'Fr', 'advproxy from' => 'Von', 'advproxy group access control' => 'Gruppenbasierte Zugriffskontrolle', @@ -357,7 +355,6 @@ 'advproxy off' => 'Proxy aus', 'advproxy offline mode' => 'Aktiviere Offline-Modus', 'advproxy on' => 'Proxy ein', -'advproxy privacy' => 'Datenschutz', 'advproxy proxy port' => 'Proxyport', 'advproxy proxy port transparent' => 'Transparenter Port', 'advproxy ram cache size' => 'Cachegröße im Arbeitsspeicher (MB)', @@ -437,7 +434,6 @@ 'alt vpn' => 'VPNs', 'and' => 'Und', 'apcupsd' => 'APC-UPS Status', -'application layer gateways' => 'Application-Layer-Gateways', 'apply' => 'Jetzt anwenden', 'april' => 'April', 'archive not exist' => 'Konfigurationsarchiv existiert nicht', @@ -453,6 +449,7 @@ 'authentication' => 'Authentifizierung:', 'automatic' => 'Automatisch', 'autonomous system' => 'Autonomes System', +'available' => 'verfügbar', 'available updates' => 'Verfügbare Updates', 'average' => 'Durchschnitt', 'avoid dod' => 'Benutzen Sie diese Option nicht mit Dial on Demand! Wird hauptsächlich verwendet, wenn Ihr IPFire sich hinter einem Router befindet. Ihre ROTE IP muss sich innerhalb eines der drei reservierten Netzwerkbereiche befinden z.B. 10/8, 172.16/12, 192.168/16.', @@ -1007,7 +1004,6 @@ 'every' => 'Alle', 'exampel' => 'Beispiel', 'exclude logfiles' => 'ohne Protokolldateien', -'excluding buffers and cache' => '-/+ Puffer/Zwischenspeicher', 'expected' => 'Erwartet', 'expertoptions' => 'Expertenoptionen', 'expires' => 'Ablaufdatum', diff --git a/langs/en/cgi-bin/en.pl b/langs/en/cgi-bin/en.pl index dc1fd8d67..2ba6961f3 100644 --- a/langs/en/cgi-bin/en.pl +++ b/langs/en/cgi-bin/en.pl @@ -323,8 +323,6 @@ 'advproxy errmsg wpad invalid ip or mask' => 'WPAD: Invalid IP or subnet for excluded IP subnet', 'advproxy error design' => 'Error messages design', 'advproxy error language' => 'Error messages language', -'advproxy fake referer' => 'Fake referer submitted to external sites', -'advproxy fake useragent' => 'Fake useragent submitted to external sites', 'advproxy friday' => 'Fri', 'advproxy from' => 'From', 'advproxy group access control' => 'Group based access control', @@ -354,7 +352,6 @@ 'advproxy off' => 'Proxy off', 'advproxy offline mode' => 'Enable offline mode', 'advproxy on' => 'Proxy on', -'advproxy privacy' => 'Privacy', 'advproxy proxy port' => 'Proxy port', 'advproxy proxy port transparent' => 'Transparent port', 'advproxy ram cache size' => 'Memory cache size (MB)', @@ -436,7 +433,6 @@ 'and' => 'And', 'ansi t1.483' => 'TO BE REMOVED', 'apcupsd' => 'APC-UPS status', -'application layer gateways' => 'Application Layer Gateways', 'apply' => 'Apply now', 'april' => 'April', 'archive not exist' => 'Configuration archive does not exist', @@ -452,6 +448,7 @@ 'authentication' => 'Authentication:', 'automatic' => 'Automatic', 'autonomous system' => 'Autonomous System', +'available' => 'available', 'available updates' => 'Available updates', 'average' => 'Average', 'avoid dod' => 'Do not use this option with Dial on Demand! Mainly used if your IPFire is behind a router. Your RED IP must be inside one of the three reserved network numbers e.g. 10/8, 172.16/12, 192.168/16', @@ -913,6 +910,7 @@ 'downlink speed' => 'Downlink speed (kbit/sec)', 'downlink std class' => 'downlink standard class', 'download' => 'download', +'download apple profile' => 'Download Apple Configuration Profile', 'download ca certificate' => 'Download CA certificate', 'download certificate' => 'Download file', 'download dh parameter' => 'Download Diffie-Hellman parameters', @@ -1033,7 +1031,6 @@ 'every' => 'Every', 'exampel' => 'example', 'exclude logfiles' => 'Exclude logfiles', -'excluding buffers and cache' => '-/+ buffers/cache', 'expected' => 'Expected', 'expertoptions' => 'Expert options', 'expires' => 'Expires', @@ -1546,13 +1543,16 @@ 'ipinfo' => 'IP info', 'ipsec' => 'IPsec', 'ipsec connection' => 'IPsec Connection', +'ipsec dns server address is invalid' => 'Invalid DNS server IP address(es)', 'ipsec interface mode gre' => 'GRE', 'ipsec interface mode none' => '- None (Default) -', 'ipsec interface mode vti' => 'VTI', +'ipsec invalid ip address or fqdn for rw endpoint' => 'Invalid IP address or FQDN for Host-to-Net Endpoint', 'ipsec mode transport' => 'Transport', 'ipsec mode tunnel' => 'Tunnel', 'ipsec network' => 'IPsec network', 'ipsec no connections' => 'No active IPsec connections', +'ipsec roadwarrior endpoint' => 'Host-to-Net Endpoint', 'ipsec routing table entries' => 'IPsec Routing Table Entries', 'ipsec settings' => 'IPsec Settings', 'iptable rules' => 'IPTable rules', diff --git a/langs/es/cgi-bin/es.pl b/langs/es/cgi-bin/es.pl index c9a7496bc..1080afdea 100644 --- a/langs/es/cgi-bin/es.pl +++ b/langs/es/cgi-bin/es.pl @@ -297,8 +297,6 @@ 'advproxy errmsg time restriction' => 'Restricción de tiempo no válida', 'advproxy error design' => 'Diseño de mensajes de error', 'advproxy error language' => 'Idioma de Mensajes de error', -'advproxy fake referer' => 'Referer falso enviado a sitios externos', -'advproxy fake useragent' => 'Useragent falso enviado a sitios externos', 'advproxy friday' => 'Vie', 'advproxy from' => 'De', 'advproxy hdd cache size' => 'Tamaño del caché en disco duro (MB)', @@ -326,7 +324,6 @@ 'advproxy off' => 'Proxy Apagado', 'advproxy offline mode' => 'Activar modo fuera de línea', 'advproxy on' => 'Proxy Encendido', -'advproxy privacy' => 'Privacidad', 'advproxy proxy port' => 'Puerto del proxy', 'advproxy ram cache size' => 'Tamaño de memoria caché', 'advproxy redirector children' => 'Número de procesos filtrados', @@ -839,7 +836,6 @@ 'every' => 'Cada', 'exampel' => 'ejemplo', 'exclude logfiles' => 'Excluir archivos de registro', -'excluding buffers and cache' => '-/+ buffers/cache', 'expected' => 'Esperado', 'expertoptions' => 'Opciones expertas', 'expires' => 'Expira', diff --git a/langs/fr/cgi-bin/fr.pl b/langs/fr/cgi-bin/fr.pl index 301109477..1b6d30111 100644 --- a/langs/fr/cgi-bin/fr.pl +++ b/langs/fr/cgi-bin/fr.pl @@ -330,8 +330,6 @@ 'advproxy errmsg wpad invalid ip or mask' => 'WPAD : IP ou sous-réseau invalide pour le sous-réseau IP exclu', 'advproxy error design' => 'Construction messages erronés ', 'advproxy error language' => 'Langage des messages erronés ', -'advproxy fake referer' => 'Fausses références soumises aux sites externes ', -'advproxy fake useragent' => 'Faux useragent soumis aux sites externes ', 'advproxy friday' => 'Ven', 'advproxy from' => 'De', 'advproxy group access control' => 'Contrôle d'accès basé sur le groupe', @@ -361,7 +359,6 @@ 'advproxy off' => 'Proxy inactif', 'advproxy offline mode' => 'Autoriser le mode hors connexion ', 'advproxy on' => 'Proxy actif', -'advproxy privacy' => 'Privé', 'advproxy proxy port' => 'Port proxy ', 'advproxy proxy port transparent' => 'Port transparent ', 'advproxy ram cache size' => 'Taille cache mémoire (Mo) ', @@ -442,7 +439,6 @@ 'alt vpn' => 'VPNs', 'and' => 'Et', 'apcupsd' => 'Statut UPS-APC', -'application layer gateways' => 'Passerelles de couche d'application', 'apply' => 'Appliquer maintenant', 'april' => 'Avril', 'archive not exist' => 'L'archive de configuration n'existe pas', @@ -1039,7 +1035,6 @@ 'every' => 'Chaque', 'exampel' => 'exemple', 'exclude logfiles' => 'Exclure les fichiers journaux', -'excluding buffers and cache' => '-/+ buffers/tampon', 'expected' => 'Attendu', 'expertoptions' => 'Réglages avancés', 'expires' => 'Expire', diff --git a/langs/it/cgi-bin/it.pl b/langs/it/cgi-bin/it.pl index e82ecfd35..e9bd157a3 100644 --- a/langs/it/cgi-bin/it.pl +++ b/langs/it/cgi-bin/it.pl @@ -257,8 +257,6 @@ 'advproxy errmsg time restriction' => 'Invalid time restriction', 'advproxy error design' => 'Design dei messaggi di errore', 'advproxy error language' => 'Lingua dei messaggi di errore', -'advproxy fake referer' => 'Fake referer submitted to external sites', -'advproxy fake useragent' => 'Fake useragent submitted to external sites', 'advproxy friday' => 'Ven', 'advproxy from' => 'Da', 'advproxy hdd cache size' => 'Harddisk cache size (MB)', @@ -286,7 +284,6 @@ 'advproxy off' => 'Proxy off', 'advproxy offline mode' => 'Attiva modalità offline', 'advproxy on' => 'Proxy Acceso', -'advproxy privacy' => 'Privacy', 'advproxy proxy port' => 'Porta Proxy', 'advproxy proxy port transparent' => 'Porta Transparente', 'advproxy ram cache size' => 'Dimensione della Memoria di cache (MB)', @@ -888,7 +885,6 @@ 'every' => 'Ogni', 'exampel' => 'esempio', 'exclude logfiles' => 'Escludi File di log', -'excluding buffers and cache' => '-/+ buffers/cache', 'expected' => 'Expected', 'expertoptions' => 'Expert options', 'expires' => 'Scade', diff --git a/langs/nl/cgi-bin/nl.pl b/langs/nl/cgi-bin/nl.pl index 55927839e..d607e4f89 100644 --- a/langs/nl/cgi-bin/nl.pl +++ b/langs/nl/cgi-bin/nl.pl @@ -256,8 +256,6 @@ 'advproxy errmsg time restriction' => 'Ongeldige tijdsbeperking', 'advproxy error design' => 'Opmaak foutmeldingen', 'advproxy error language' => 'Taal foutmeldingen', -'advproxy fake referer' => 'Nepverwijzing die wordt gestuurd naar externe sites', -'advproxy fake useragent' => 'Nep useragent die wordt gestuurd naar externe sites', 'advproxy friday' => 'Vri', 'advproxy from' => 'Van', 'advproxy hdd cache size' => 'Harddisk cache-grootte (MB)', @@ -285,7 +283,6 @@ 'advproxy off' => 'Proxy uit', 'advproxy offline mode' => 'Schakel offline modus in', 'advproxy on' => 'Proxy aan', -'advproxy privacy' => 'Privacy', 'advproxy proxy port' => 'Proxy poort', 'advproxy proxy port transparent' => 'Transparante poort', 'advproxy ram cache size' => 'Geheugen cache-grootte (MB)', @@ -874,7 +871,6 @@ 'every' => 'Iedere', 'exampel' => 'voorbeeld', 'exclude logfiles' => 'Exclusief logbestanden', -'excluding buffers and cache' => '-/+ buffers/cache', 'expected' => 'Verwacht', 'expertoptions' => 'Expertopties', 'expires' => 'Verloopt', diff --git a/langs/pl/cgi-bin/pl.pl b/langs/pl/cgi-bin/pl.pl index 147db051c..a44f43fa4 100644 --- a/langs/pl/cgi-bin/pl.pl +++ b/langs/pl/cgi-bin/pl.pl @@ -245,8 +245,6 @@ 'advproxy errmsg time restriction' => 'Niepoprawne ograniczenia czase', 'advproxy error design' => 'Styl komunikatów o błędach', 'advproxy error language' => 'Język komunikatów o błędach', -'advproxy fake referer' => 'Fake referer submitted to external sites', -'advproxy fake useragent' => 'Fake useragent submitted to external sites', 'advproxy friday' => 'Pią', 'advproxy from' => 'Od', 'advproxy hdd cache size' => 'Rozmiar cache na dysku (MB)', @@ -274,7 +272,6 @@ 'advproxy off' => 'Proxy wyłączone', 'advproxy offline mode' => 'Włącz tryb offline', 'advproxy on' => 'Proxy wł', -'advproxy privacy' => 'Prywatność', 'advproxy proxy port' => 'Port proxy', 'advproxy ram cache size' => 'Rozmiar RAM cache (MB)', 'advproxy redirector children' => 'Liczba procesów filtrujących', @@ -786,7 +783,6 @@ 'every' => 'Każdy', 'exampel' => 'przykład', 'exclude logfiles' => 'Wyklucz pliki z logami', -'excluding buffers and cache' => '-/+ buffers/cache', 'expected' => 'Oczekiwano', 'expertoptions' => 'Opcje zaawans.', 'expires' => 'Wygasa', diff --git a/langs/ru/cgi-bin/ru.pl b/langs/ru/cgi-bin/ru.pl index 0d986135d..c0342eb25 100644 --- a/langs/ru/cgi-bin/ru.pl +++ b/langs/ru/cgi-bin/ru.pl @@ -243,8 +243,6 @@ 'advproxy errmsg time restriction' => 'Неверное ограничение по времени', 'advproxy error design' => 'Оформление ошибок', 'advproxy error language' => 'Язык, на котором отображаются ошибки', -'advproxy fake referer' => 'Липовый referer Для внешних сайтов', -'advproxy fake useragent' => 'Липовый useragent для внешних сайтов', 'advproxy friday' => 'Пт', 'advproxy from' => 'C', 'advproxy hdd cache size' => 'Размер кэша жёсткого диска (MB)', @@ -272,7 +270,6 @@ 'advproxy off' => 'Proxy выкл', 'advproxy offline mode' => 'Включить автономный режим', 'advproxy on' => 'Proxy вкл', -'advproxy privacy' => 'Приватность', 'advproxy proxy port' => 'Порт Proxy', 'advproxy ram cache size' => 'Размер памяти кэша (MB)', 'advproxy redirector children' => 'Количество фильтруемых процессов', @@ -782,7 +779,6 @@ 'every' => 'Каждый', 'exampel' => 'пример', 'exclude logfiles' => 'Исключить файлы логов', -'excluding buffers and cache' => '-/+ buffers/cache', 'expected' => 'Ожидается', 'expertoptions' => 'Экспортировать настройки', 'expires' => 'Истекает', diff --git a/langs/tr/cgi-bin/tr.pl b/langs/tr/cgi-bin/tr.pl index 36c4782d6..f90bee0ea 100644 --- a/langs/tr/cgi-bin/tr.pl +++ b/langs/tr/cgi-bin/tr.pl @@ -318,8 +318,6 @@ 'advproxy errmsg time restriction' => 'Geçersiz zaman kısıtlaması', 'advproxy error design' => 'Hata mesajları tasarımı', 'advproxy error language' => 'Hata mesajları dili', -'advproxy fake referer' => 'Sahte referansı harici sitelere gönder', -'advproxy fake useragent' => 'Sahte yönlendiriciyi harici sitelere gönder', 'advproxy friday' => 'Cum', 'advproxy from' => 'Başlangıç', 'advproxy group access control' => 'Grup tabanlı erişim kontrolü', @@ -349,7 +347,6 @@ 'advproxy off' => 'Vekil sunucu kapalı', 'advproxy offline mode' => 'Çevrimdışı yöntemi aktifleştir', 'advproxy on' => 'Vekil sunucu', -'advproxy privacy' => 'Gizlilik', 'advproxy proxy port' => 'Vekil sunucu bağlantı noktası', 'advproxy proxy port transparent' => 'Şeffaf bağlantı noktası', 'advproxy ram cache size' => 'Bellek önbellek boyutu (MB)', @@ -424,7 +421,6 @@ 'and' => 've', 'ansi t1.483' => 'KALDIRILACAK', 'apcupsd' => 'APC-UPS durumu', -'application layer gateways' => 'Uygulama Katmanı Ağ Geçitleri', 'apply' => 'Şimdi uygula', 'april' => 'Nisan', 'archive not exist' => 'Yapılandırma arşivi yok', @@ -982,7 +978,6 @@ 'every' => 'Her', 'exampel' => 'örnek', 'exclude logfiles' => 'Günlük dosyaları hariç', -'excluding buffers and cache' => '-/+ arabellek/önbellek', 'expected' => 'Beklenen', 'expertoptions' => 'Uzman seçenekleri', 'expires' => 'Bitiş tarihi', diff --git a/lfs/XML-Parser b/lfs/XML-Parser index 98df1d0ec..d6c46d25e 100644 --- a/lfs/XML-Parser +++ b/lfs/XML-Parser @@ -24,7 +24,7 @@
include Config
-VER = 2.34 +VER = 2.46
THISAPP = XML-Parser-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 84d9e0001fe01c14867256c3fe115899 +$(DL_FILE)_MD5 = 80bb18a8e6240fcf7ec2f7b57601c170
install : $(TARGET)
diff --git a/lfs/apache2 b/lfs/apache2 index 772ac6018..ff9de7eb7 100644 --- a/lfs/apache2 +++ b/lfs/apache2 @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2020 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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 # @@ -25,7 +25,7 @@
include Config
-VER = 2.4.46 +VER = 2.4.48
THISAPP = httpd-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -45,7 +45,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 7d661ea5e736dac5e2761d9f49fe8361 +$(DL_FILE)_MD5 = a7088cec171b0d00bf43394ce64d3909
install : $(TARGET)
diff --git a/lfs/asterisk b/lfs/asterisk deleted file mode 100755 index 6651ba13c..000000000 --- a/lfs/asterisk +++ /dev/null @@ -1,154 +0,0 @@ -############################################################################### -# # -# IPFire.org - A linux based firewall # -# Copyright (C) 2007-2018 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/. # -# # -############################################################################### - -include Config - -VER = 13.18.5 - -THISAPP = asterisk-$(VER) -DL_FILE = $(THISAPP).tar.gz -DL_FROM = $(URL_IPFIRE) -DIR_APP = $(DIR_SRC)/$(THISAPP) -TARGET = $(DIR_INFO)/$(THISAPP) -PROG = asterisk -PAK_VER = 26 - -DEPS = libsrtp opus - -############################################################################### -# Top-level Rules -############################################################################### - -objects = $(DL_FILE) \ - asterisk-1.4-de-prompts.tar.gz \ - asterisk-extra-sounds-en-gsm-1.5.1.tar.gz \ - asterisk-moh-opsound-gsm-2.03.tar.gz - -$(DL_FILE) = $(DL_FROM)/$(DL_FILE) -asterisk-extra-sounds-en-gsm-1.5.1.tar.gz = $(URL_IPFIRE)/asterisk-extra-sounds-en-gsm-1.5.1.tar.gz -asterisk-moh-opsound-gsm-2.03.tar.gz = $(URL_IPFIRE)/asterisk-moh-opsound-gsm-2.03.tar.gz -asterisk-1.4-de-prompts.tar.gz = $(URL_IPFIRE)/asterisk-1.4-de-prompts.tar.gz - -$(DL_FILE)_MD5 = 4ad2a5ab1dd12cba5f37fca52961aa2a -asterisk-extra-sounds-en-gsm-1.5.1.tar.gz_MD5 = aa1003ed984239f18e123decc39c2178 -asterisk-moh-opsound-gsm-2.03.tar.gz_MD5 = 09066f55f1358f298bc1a6e4678a3ddf -asterisk-1.4-de-prompts.tar.gz_MD5 = 626a2b95071a5505851e43874dfbfd5c - -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) - $(UPDATE_AUTOMAKE) - - # configure asterisk - cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/var/ipfire \ - --without-oss \ - --without-sdl \ - --without-SDL_image \ - --without-netsnmp \ - --without-avcodec \ - --without-vorbis \ - --without-ogg \ - --disable-xmldoc - - # enable additional features (include following sound-tars) - cd $(DIR_APP) && make menuselect.makeopts && menuselect/menuselect \ - --enable res_srtp \ - --enable EXTRA-SOUNDS-EN-GSM \ - --enable MOH-OPSOUND-GSM \ - --disable BUILD_NATIVE \ - menuselect.makeopts - - # add additional sounds - cd $(DIR_APP) && cp -fv $(DIR_DL)/asterisk-extra-sounds-en-gsm-1.5.1.tar.gz $(DIR_APP)/sounds/ - cd $(DIR_APP) && cp -fv $(DIR_DL)/asterisk-moh-opsound-gsm-2.03.tar.gz $(DIR_APP)/sounds/ - - # Fix wrong cpu optimization (march=armv5tel) - cd $(DIR_APP) && sed -i -e "s|^PROC=armv5te.*|PROC=armv5te|g" makeopts - - # Add armv5te to gsm codecs - cd $(DIR_APP) && sed -i -e "s|armv5b |*armv5te |g" codecs/gsm/Makefile - - # compile and install - cd $(DIR_APP) && make $(MAKETUNING) all - cd $(DIR_APP) && make install - cd $(DIR_APP) && make samples - - # add german sounds and remove README.txt - tar xfz $(DIR_DL)/asterisk-1.4-de-prompts.tar.gz -C /var/lib/asterisk/sounds/ - -rm -f /var/lib/asterisk/sounds/README.txt - - # remove build directories - @rm -rf $(DIR_APP) $(DIR_SRC)/asterisk-* - - # copy additional ipfire scripts for asterisk - -mkdir -p /var/ipfire/asterisk - cp -vrf $(DIR_SRC)/config/asterisk/* /var/ipfire/asterisk/ - chmod o+w /var/ipfire/asterisk - chown nobody:nobody -R /var/ipfire/asterisk - chown nobody:nobody -R /var/lib/asterisk - - # remember backup-location - install -v -m 644 $(DIR_SRC)/config/backup/includes/asterisk /var/ipfire/backup/addons/includes/asterisk - - # Logrotate - mkdir -pv /etc/logrotate.d - install -v -m 644 $(DIR_SRC)/config/asterisk/asterisk.logrotate /etc/logrotate.d/asterisk - - # generate softlink (or asterisk will not work properly) - ln -sf /var/ipfire/asterisk /etc/asterisk - - #install initscripts - $(call INSTALL_INITSCRIPT,asterisk) - - # make asterisk start with reboot - ln -sf /etc/rc.d/init.d/asterisk /etc/rc.d/rc0.d/K30asterisk - ln -sf /etc/rc.d/init.d/asterisk /etc/rc.d/rc6.d/K30asterisk - ln -sf /etc/rc.d/init.d/asterisk /etc/rc.d/rc3.d/S30asterisk - - @rm -rf $(DIR_APP) - @$(POSTBUILD) diff --git a/lfs/avahi b/lfs/avahi index 2ed13dd44..4b2b79ded 100644 --- a/lfs/avahi +++ b/lfs/avahi @@ -88,7 +88,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) --disable-qt5 \ --disable-gtk \ --disable-gtk3 \ - --disable-pygtk \ --disable-python \ --disable-pygobject \ --disable-python-dbus \ diff --git a/lfs/bash b/lfs/bash index 214894ad2..7b0baccad 100644 --- a/lfs/bash +++ b/lfs/bash @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2020 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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 # @@ -91,9 +91,9 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) cd $(DIR_APP) && patch -Np0 < $(DIR_SRC)/src/patches/bash/bash51-$$(printf "%03d" "$${i}") || exit 1; \ done
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/bash-4.0-paths-1.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/bash-4.0-profile-1.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/bash-3.2-ssh_source_bash.patch + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/bash/bash-4.0-paths-1.patch + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/bash/bash-4.0-profile-1.patch + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/bash/bash-3.2-ssh_source_bash.patch
cd $(DIR_APP) && ./configure --prefix=$(PREFIX) $(CONFIGURE_OPTIONS) cd $(DIR_APP) && make $(MAKETUNING) diff --git a/lfs/bind b/lfs/bind index c0c7c5ebf..0545066b7 100644 --- a/lfs/bind +++ b/lfs/bind @@ -25,7 +25,7 @@
include Config
-VER = 9.11.29 +VER = 9.11.32
THISAPP = bind-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -43,7 +43,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 439d5491dfea08be032a1f9ca5a54faa +$(DL_FILE)_MD5 = 0d029dd06ca60c6739c3189c999ef757
install : $(TARGET)
diff --git a/lfs/ca-certificates b/lfs/ca-certificates index eed5384e4..f3c68a7c0 100644 --- a/lfs/ca-certificates +++ b/lfs/ca-certificates @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2020 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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 = 20201221 +VER = 20210611
THISAPP = ca-certificates DIR_APP = $(DIR_SRC)/$(THISAPP) diff --git a/lfs/cmake b/lfs/cmake index 7ce6e7e7d..85ac8690c 100644 --- a/lfs/cmake +++ b/lfs/cmake @@ -24,7 +24,7 @@
include Config
-VER = 3.20.2 +VER = 3.20.4
THISAPP = cmake-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -42,7 +42,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = cd0e7735f1e51f30ee3b0844390a464a +$(DL_FILE)_MD5 = 99e849c6910f1df027cc0365027fa19b
install : $(TARGET)
diff --git a/lfs/configroot b/lfs/configroot index a3e474d70..c528bd6d9 100644 --- a/lfs/configroot +++ b/lfs/configroot @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2018 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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 # @@ -55,7 +55,7 @@ $(TARGET) : menu.d modem optionsfw \ ovpn patches pakfire portfw ppp private proxy/advanced/cre \ proxy/calamaris/bin qos/bin red remote sensors suricata time \ - updatexlrator/bin updatexlrator/autocheck urlfilter/autoupdate urlfilter/bin upnp vpn \ + updatexlrator/bin updatexlrator/autocheck urlfilter/autoupdate urlfilter/bin vpn \ wakeonlan wireless ; do \ mkdir -p $(CONFIG_ROOT)/$$i; \ done @@ -69,7 +69,7 @@ $(TARGET) : isdn/settings mac/settings main/hosts main/routing main/security main/settings optionsfw/settings \ ovpn/ccd.conf ovpn/ccdroute ovpn/ccdroute2 pakfire/settings portfw/config ppp/settings-1 ppp/settings-2 ppp/settings-3 ppp/settings-4 \ ppp/settings-5 ppp/settings proxy/settings proxy/squid.conf proxy/advanced/settings proxy/advanced/cre/enable remote/settings qos/settings qos/classes qos/subclasses qos/level7config qos/portconfig \ - qos/tosconfig suricata/settings upnp/settings vpn/config vpn/settings vpn/ipsec.conf \ + qos/tosconfig suricata/settings vpn/config vpn/settings vpn/ipsec.conf \ vpn/ipsec.secrets vpn/caconfig wakeonlan/clients.conf wireless/config wireless/settings; do \ touch $(CONFIG_ROOT)/$$i; \ done @@ -138,11 +138,6 @@ $(TARGET) : cp $(DIR_SRC)/config/suricata/convert-snort /usr/sbin/convert-snort cp $(DIR_SRC)/config/suricata/convert-ids-modifysids-file /usr/sbin/convert-ids-modifysids-file
- # Add conntrack helper default settings - for proto in AMANDA FTP H323 IRC PPTP SIP TFTP; do \ - echo "CONNTRACK_$${proto}=off" >> $(CONFIG_ROOT)/optionsfw/settings; \ - done - # set converters executable chmod 755 /usr/sbin/convert-*
@@ -169,7 +164,7 @@ $(TARGET) : # Configroot permissions chown -R nobody:nobody $(CONFIG_ROOT) chown root:root $(CONFIG_ROOT) - for i in backup/ header.pl general-functions.pl graphs.pl lang.pl addon-lang/ langs/ ; do \ + for i in backup/ *.pl addon-lang/ langs/ ; do \ chown -R root:root $(CONFIG_ROOT)/$$i; \ done chown -Rv root:root $(CONFIG_ROOT)/*/bin diff --git a/lfs/coreutils b/lfs/coreutils index 63395ba2f..18a740e6a 100644 --- a/lfs/coreutils +++ b/lfs/coreutils @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2020 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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 # @@ -93,8 +93,8 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/coreutils-8.27-uname-1.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/coreutils-8.32-i18n-1.patch + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/coreutils/coreutils-8.27-uname-1.patch + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/coreutils/coreutils-8.32-i18n-1.patch # this is upstream and also fix the aarch64 build cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/coreutils/ls-restore-8.31-behavior-on-removed-directories.patch cd $(DIR_APP) && FORCE_UNSAFE_CONFIGURE=1 && ./configure $(CONFIGURE_OPTIONS) diff --git a/lfs/cups-filters b/lfs/cups-filters index aedaaf927..d00b5ccb2 100644 --- a/lfs/cups-filters +++ b/lfs/cups-filters @@ -24,7 +24,7 @@
include Config
-VER = 1.28.8 +VER = 1.28.9
THISAPP = cups-filters-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = cups-filters -PAK_VER = 5 +PAK_VER = 6
DEPS = cups ghostscript
@@ -46,7 +46,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 914fb53d31ff8500dc25d2e2c68ca5c1 +$(DL_FILE)_MD5 = 1ea8d0311463d4026f0f631a4843dec2
install : $(TARGET)
@@ -85,7 +85,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) --sysconfdir=/etc \ --localstatedir=/var \ --with-pdftops=hybrid \ - --disable-ijs \ --disable-mutool \ --disable-avahi cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE) diff --git a/lfs/curl b/lfs/curl index cd4cc26d1..ae55d812e 100644 --- a/lfs/curl +++ b/lfs/curl @@ -24,7 +24,7 @@
include Config
-VER = 7.76.1 +VER = 7.77.0
THISAPP = curl-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 5296108646ca7f318b468a7a9d4a0eb2 +$(DL_FILE)_MD5 = 3cf78c539cae019cf96ba38571706e06
install : $(TARGET)
@@ -75,7 +75,8 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) --disable-ipv6 \ --disable-static \ --enable-threaded-resolver \ - --with-ca-bundle=/etc/ssl/certs/ca-bundle.crt + --with-ca-bundle=/etc/ssl/certs/ca-bundle.crt \ + --with-openssl cd $(DIR_APP) && make $(MAKETUNING) cd $(DIR_APP) && make install @rm -rf $(DIR_APP) diff --git a/lfs/dmidecode b/lfs/dmidecode index 03a702c07..c90f0726a 100644 --- a/lfs/dmidecode +++ b/lfs/dmidecode @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2018 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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,10 +24,10 @@
include Config
-VER = 3.1 +VER = 3.3
THISAPP = dmidecode-$(VER) -DL_FILE = $(THISAPP).tar.gz +DL_FILE = $(THISAPP).tar.xz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) @@ -41,7 +41,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 7798f68a02b82358c44af913da3b6b42 +$(DL_FILE)_MD5 = afca949fd71a23dd39c4a3c9cd946dc0
install : $(TARGET) check : $(patsubst %,$(DIR_CHK)/%,$(objects)) @@ -69,9 +69,10 @@ $(subst %,%_MD5,$(objects)) :
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) - @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dmidecode/0005-nothing-should-go-into-usr-local.patch - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dmidecode/add_support_for_structure_type_43_tpm_device.patch + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dmidecode/dmidecode-3.3-fix_the_condition_error_in_ascii_filter.patch + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/dmidecode/dmidecode-3.3-fix_crash_with_u_option.patch cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE) cd $(DIR_APP) && make install @rm -rf $(DIR_APP) diff --git a/lfs/dnsdist b/lfs/dnsdist index 3c30b4213..b93a4fc36 100644 --- a/lfs/dnsdist +++ b/lfs/dnsdist @@ -33,7 +33,7 @@ DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) SUP_ARCH = x86_64 PROG = dnsdist -PAK_VER = 8 +PAK_VER = 9
DEPS =
diff --git a/lfs/dpfhack b/lfs/dpfhack deleted file mode 100644 index 4d1c158c6..000000000 --- a/lfs/dpfhack +++ /dev/null @@ -1,84 +0,0 @@ -############################################################################### -# # -# IPFire.org - A linux based firewall # -# Copyright (C) 2007-2018 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.12devel -APP = dpf -THISAPP = dpfhack-$(VER) -DL_FILE = $(THISAPP).tgz -DL_FROM = $(URL_IPFIRE) -DIR_APP = $(DIR_SRC)/$(APP) -TARGET = $(DIR_INFO)/$(THISAPP) -PROG = dpfhack -PAK_VER = 1 - -DEPS = - -############################################################################### -# Top-level Rules -############################################################################### - -objects = $(DL_FILE) - -$(DL_FILE) = $(DL_FROM)/$(DL_FILE) - -$(DL_FILE)_MD5 = 00473bb01d8da7c5967ecb19ca251ac2 - -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) - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(PROG).patch - cd $(DIR_APP) && make - cd $(DIR_APP) && cp Debug/libdpf.so /usr/lib && cp dpflib/dpf.h include/usbuser.h /usr/include - @rm -rf $(DIR_APP) - @$(POSTBUILD) diff --git a/lfs/elfutils b/lfs/elfutils index 8c86c3b76..6a6e9dabc 100644 --- a/lfs/elfutils +++ b/lfs/elfutils @@ -24,7 +24,7 @@
include Config
-VER = 0.184 +VER = 0.185
THISAPP = elfutils-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = elfutils -PAK_VER = 5 +PAK_VER = 6
DEPS =
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 9e5af45255ff7dc413de073da2ceff04 +$(DL_FILE)_MD5 = 2b6e94c2eebc1f2194173e31bca9396e
install : $(TARGET)
diff --git a/lfs/elinks b/lfs/elinks index 7dd0333dc..6a895e943 100644 --- a/lfs/elinks +++ b/lfs/elinks @@ -32,6 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = elinks +PAK_VER = 2
DEPS =
@@ -53,7 +54,6 @@ download :$(patsubst %,$(DIR_DL)/%,$(objects))
md5 : $(subst %,%_MD5,$(objects))
- ############################################################################### # Downloading, checking, md5sum ############################################################################### diff --git a/lfs/ethtool b/lfs/ethtool index 9fb0d8973..677571844 100644 --- a/lfs/ethtool +++ b/lfs/ethtool @@ -24,7 +24,7 @@
include Config
-VER = 3.16 +VER = 5.12
THISAPP = ethtool-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 7eee202accb86104adc8463a36a1a468 +$(DL_FILE)_MD5 = 11fcf0d0287c899fbcbdb48897fe2bab
install : $(TARGET)
diff --git a/lfs/expat b/lfs/expat index 92c42bf82..7627447f3 100644 --- a/lfs/expat +++ b/lfs/expat @@ -24,7 +24,7 @@
include Config
-VER = 2.3.0 +VER = 2.4.1
THISAPP = expat-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 54ea624caca3f9003cebcab4f0a75c8f +$(DL_FILE)_MD5 = 476cdf4b5e40280316fff36b2086a390
install : $(TARGET)
diff --git a/lfs/fireinfo b/lfs/fireinfo index 2e6d1e94c..7014cbc4c 100644 --- a/lfs/fireinfo +++ b/lfs/fireinfo @@ -24,7 +24,7 @@
include Config
-VER = 2.1.12 +VER = 2.2.0
THISAPP = fireinfo-v$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 40ada8f4eceeb69661d09e43308e5a6a +$(DL_FILE)_MD5 = 34cd6041bf9b9882c2a356a47ad1e000
install : $(TARGET)
@@ -70,15 +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/fireinfo-Don-t-crash-when-proc-cpuinfo-doesn-t-have-any-infor.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/fireinfo-Ignore-any-systems-with-ID-Default-string.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/fireinfo-support-upstream-proxy-with-authentication.patch - + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/fireinfo-2.2.0-python-3.8.patch cd $(DIR_APP) && [ -x "configure" ] || sh ./autogen.sh cd $(DIR_APP) && ./configure --prefix=/usr cd $(DIR_APP) && make $(MAKETUNING) cd $(DIR_APP) && make install - @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/lfs/flac b/lfs/flac index 0e967afa2..ef3e46ad1 100644 --- a/lfs/flac +++ b/lfs/flac @@ -24,7 +24,7 @@
include Config
-VER = 1.3.2 +VER = 1.3.3
THISAPP = flac-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = flac -PAK_VER = 2 +PAK_VER = 3
DEPS = libogg
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 454f1bfa3f93cc708098d7890d0499bd +$(DL_FILE)_MD5 = 26703ed2858c1fc9ffc05136d13daa69
install : $(TARGET)
diff --git a/lfs/flash-images b/lfs/flash-images index 9fd925055..9c6af5092 100644 --- a/lfs/flash-images +++ b/lfs/flash-images @@ -77,9 +77,9 @@ else endif
# /boot: 128MB - OFFSET -# / : 1400 MB +# / : 1600 MB S_BOOT := $(shell echo $$(( 262144 - $(S_OFFSET) ))) -S_ROOT := 2934784 +S_ROOT := 3354038
ifeq "$(EFI)" "1" S_EFI = 65536 # 32 MB diff --git a/lfs/fuse b/lfs/fuse index 5235348a5..99291527b 100644 --- a/lfs/fuse +++ b/lfs/fuse @@ -24,7 +24,7 @@
include Config
-VER = 3.10.3 +VER = 3.10.4
THISAPP = fuse-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 75546f9070323b8ce69c2ed8ffff20c4 +$(DL_FILE)_MD5 = 55b87e9ed691c2fa698e491241985b4a
install : $(TARGET)
diff --git a/lfs/glib b/lfs/glib index 66d5ffc8b..522c54258 100644 --- a/lfs/glib +++ b/lfs/glib @@ -24,7 +24,7 @@
include Config
-VER = 2.68.1 +VER = 2.68.3
THISAPP = glib-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = bc9f2250be1f773bb17747d3b2e6a3ae +$(DL_FILE)_MD5 = a3968c7510447f055fd2204ba947f80f
install : $(TARGET)
diff --git a/lfs/gnutls b/lfs/gnutls index 07344a8c4..65db67b0c 100644 --- a/lfs/gnutls +++ b/lfs/gnutls @@ -24,7 +24,7 @@
include Config
-VER = 3.6.14 +VER = 3.6.16
THISAPP = gnutls-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = bf70632d420e421baff482247f01dbfe +$(DL_FILE)_MD5 = 5db1678931fa6bbd40beed235c6a0a37
install : $(TARGET)
diff --git a/lfs/grub b/lfs/grub index 811c2f745..972bb46c3 100644 --- a/lfs/grub +++ b/lfs/grub @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2020 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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 # @@ -99,7 +99,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @rm -rf $(DIR_APP) $(DIR_APP_EFI) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub/grub-2.04-BootHole.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub-2.02_disable_vga_fallback.patch + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/grub/grub-2.02_disable_vga_fallback.patch cd $(DIR_APP) && autoreconf -vfi
# Install unifont diff --git a/lfs/guardian b/lfs/guardian index 1d9a2f292..245249031 100644 --- a/lfs/guardian +++ b/lfs/guardian @@ -33,7 +33,7 @@ DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP)
PROG = guardian -PAK_VER = 23 +PAK_VER = 24
DEPS = perl-inotify2 perl-Net-IP
diff --git a/lfs/gzip b/lfs/gzip index eeea99dbe..ae8bee05f 100644 --- a/lfs/gzip +++ b/lfs/gzip @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2018 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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.9 +VER = 1.10
THISAPP = gzip-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -54,7 +54,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 9492c6ccb2239ff679a5475a7bb543ed +$(DL_FILE)_MD5 = 691b1221694c3394f1c537df4eee39d3
install : $(TARGET)
@@ -84,7 +84,6 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gzip-1.9-gnulib.patch cd $(DIR_APP) && ./configure $(EXTRA_CONFIG) cd $(DIR_APP) && make $(MAKETUNING) cd $(DIR_APP) && make install diff --git a/lfs/hostapd b/lfs/hostapd index f89326f4a..19a4b9340 100644 --- a/lfs/hostapd +++ b/lfs/hostapd @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/hostap-$(VER) TARGET = $(DIR_INFO)/$(THISAPP) PROG = hostapd -PAK_VER = 55 +PAK_VER = 56
DEPS =
diff --git a/lfs/hwdata b/lfs/hwdata index de7d26e1f..6f0361272 100644 --- a/lfs/hwdata +++ b/lfs/hwdata @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2020 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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 # diff --git a/lfs/intel-microcode b/lfs/intel-microcode index 1aa57cabe..b651693f7 100644 --- a/lfs/intel-microcode +++ b/lfs/intel-microcode @@ -24,7 +24,7 @@
include Config
-VER = 20201118 +VER = 20210608
THISAPP = Intel-Linux-Processor-Microcode-Data-Files-microcode-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -41,7 +41,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 6248f95036923c5982800e3f97e08bb8 +$(DL_FILE)_MD5 = 769cab71e957b83121a1f4a07f1c4409
install : $(TARGET)
diff --git a/lfs/iputils b/lfs/iputils index ae692df7a..01ed1fccd 100644 --- a/lfs/iputils +++ b/lfs/iputils @@ -24,7 +24,7 @@
include Config
-VER = s20160308 +VER = 20210202
THISAPP = iputils-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = a3ff521e21a383f562c2f06472c5bca0 +$(DL_FILE)_MD5 = ba8f64ba70ac4717a1ae6746d452b3da
install : $(TARGET)
@@ -70,9 +70,9 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) - cd $(DIR_APP) && make ping tracepath - cd $(DIR_APP) && install -m 0755 ping /usr/bin - cd $(DIR_APP) && install -m 0755 tracepath /usr/bin + cd $(DIR_APP) && meson builddir -Dprefix=/usr + cd $(DIR_APP) && make $(MAKETUNING) + cd $(DIR_APP) && make install
# Allow execution of /usr/bin/ping by other users than "root" setcap cap_net_raw+ep /usr/bin/ping diff --git a/lfs/knot b/lfs/knot index 39940a358..7e8bbc202 100644 --- a/lfs/knot +++ b/lfs/knot @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2020 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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 = 3.0.4 +VER = 3.0.7
THISAPP = knot-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = c0a546927ff50db153893de43758cb37 +$(DL_FILE)_MD5 = a7ac9e92989184437a45578d0e23990a
install : $(TARGET)
diff --git a/lfs/lcd4linux b/lfs/lcd4linux deleted file mode 100644 index 9121e6fa0..000000000 --- a/lfs/lcd4linux +++ /dev/null @@ -1,92 +0,0 @@ -############################################################################### -# # -# IPFire.org - A linux based firewall # -# Copyright (C) 2007-2018 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.11.0-svn1200-dpf - -THISAPP = lcd4linux-$(VER) -DL_FILE = $(THISAPP).tar.gz -DL_FROM = $(URL_IPFIRE) -DIR_APP = $(DIR_SRC)/lcd4linux -TARGET = $(DIR_INFO)/$(THISAPP) -PROG = lcd4linux -PAK_VER = 7 - -DEPS = dpfhack libmpdclient - -############################################################################### -# Top-level Rules -############################################################################### - -objects = $(DL_FILE) - -$(DL_FILE) = $(DL_FROM)/$(DL_FILE) - -$(DL_FILE)_MD5 = 5b76a26879849dbd52a5bcfda4107ea4 - -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 axf $(DIR_DL)/$(DL_FILE) - $(UPDATE_AUTOMAKE) - cd $(DIR_APP) && autoreconf -v -i - cd $(DIR_APP) && autoupdate -v configure.in - cd $(DIR_APP) && ./configure --with-plugins=all,!qnaplog,!dbus --prefix=/usr - cd $(DIR_APP) && make $(MAKETUNING) - cd $(DIR_APP) && make install - - #install initscripts - $(call INSTALL_INITSCRIPT,lcd4linux) - - install -v -m 644 $(DIR_SRC)/config/backup/includes/lcd4linux /var/ipfire/backup/addons/includes/lcd4linux - @rm -rf $(DIR_APP) - @$(POSTBUILD) diff --git a/lfs/libcap b/lfs/libcap index fd131949d..610ff474b 100644 --- a/lfs/libcap +++ b/lfs/libcap @@ -24,7 +24,7 @@
include Config
-VER = 2.49 +VER = 2.50
THISAPP = libcap-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = b43ae3690fe4d2cb32e4d25c0983ecd3 +$(DL_FILE)_MD5 = 66a561afa81666236ff973544ff4e864
install : $(TARGET)
@@ -70,12 +70,13 @@ $(subst %,%_MD5,$(objects)) : $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/libcap-2.50-install_capsh_again.patch # Prevent a static library from being installed cd $(DIR_APP) && sed -i '/install.*STALIBNAME/d' libcap/Makefile cd $(DIR_APP) && make GOLANG=no cd $(DIR_APP) && make install GOLANG=no rm -vf /lib/libcap.so - ln -svf /lib/libcap.so.2.49 /usr/lib/libcap.so + ln -svf /lib/libcap.so.2.50 /usr/lib/libcap.so chmod +x /lib/libcap.so.* @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/lfs/libedit b/lfs/libedit index e03357d7e..c28d07188 100644 --- a/lfs/libedit +++ b/lfs/libedit @@ -24,7 +24,7 @@
include Config
-VER = 20210419-3.1 +VER = 20210522-3.1
THISAPP = libedit-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = e288b8fe53bf0d096fb13847d4e0f640 +$(DL_FILE)_MD5 = 6ad9e9208daf031adf1ebc64441769e0
install : $(TARGET)
diff --git a/lfs/libloc b/lfs/libloc index da684c771..8f6b35c32 100644 --- a/lfs/libloc +++ b/lfs/libloc @@ -80,7 +80,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
# Add patch for i586 to disable strong stack protector. ifeq "$(BUILD_ARCH)" "i586" - cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/libloc-0.9.3-perl-i586-regular-stack-protector.patch + cd $(DIR_APP) && patch -Np1 -i $(DIR_SRC)/src/patches/libloc/libloc-0.9.3-perl-i586-regular-stack-protector.patch endif
cd $(DIR_APP) && ./autogen.sh diff --git a/lfs/libmicrohttpd b/lfs/libmicrohttpd deleted file mode 100644 index 8c1cecd89..000000000 --- a/lfs/libmicrohttpd +++ /dev/null @@ -1,96 +0,0 @@ -############################################################################### -# # -# IPFire.org - A linux based firewall # -# Copyright (C) 2007-2020 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.9.73 - -THISAPP = libmicrohttpd-$(VER) -DL_FILE = $(THISAPP).tar.gz -DL_FROM = $(URL_IPFIRE) -DIR_APP = $(DIR_SRC)/$(THISAPP) -TARGET = $(DIR_INFO)/$(THISAPP) -PROG = libmicrohttpd -PAK_VER = 3 - -DEPS = - -############################################################################### -# Top-level Rules -############################################################################### - -objects = $(DL_FILE) - -$(DL_FILE) = $(DL_FROM)/$(DL_FILE) - -$(DL_FILE)_MD5 = 2b15949b1633e4fa487e08cdcc97f0e3 - -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 axf $(DIR_DL)/$(DL_FILE) - - cd $(DIR_APP) && ./configure \ - --prefix=/usr \ - --libexecdir=/usr/lib/lighthttpd \ - --enable-static=no \ - --disable-nls \ - --enable-gcc-hardening \ - --enable-linker-hardening \ - --disable-doc \ - --disable-examples \ - --disable-sendfile \ - --enable-https - - cd $(DIR_APP) && make $(MAKETUNING) - cd $(DIR_APP) && make install - @rm -rf $(DIR_APP) - @$(POSTBUILD) diff --git a/lfs/libnl-3 b/lfs/libnl-3 index 766879886..15a7138dc 100644 --- a/lfs/libnl-3 +++ b/lfs/libnl-3 @@ -24,7 +24,7 @@
include Config
-VER = 3.2.25 +VER = 3.5.0
THISAPP = libnl-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 03f74d0cd5037cadc8cdfa313bbd195c +$(DL_FILE)_MD5 = 74ba57b1b1d6f9f92268aa8141d8e8e4
install : $(TARGET)
@@ -74,7 +74,11 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) $(UPDATE_AUTOMAKE) - cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/etc + cd $(DIR_APP) && ./configure \ + --prefix=/usr \ + --sysconfdir=/etc \ + --bindir=/usr/sbin \ + --disable-static cd $(DIR_APP) && make $(MAKETUNING) cd $(DIR_APP) && make install @rm -rf $(DIR_APP) diff --git a/lfs/libogg b/lfs/libogg index 76a1e6813..59a0a3fa1 100644 --- a/lfs/libogg +++ b/lfs/libogg @@ -24,7 +24,7 @@
include Config
-VER = 1.3.4 +VER = 1.3.5
THISAPP = libogg-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = libogg -PAK_VER = 4 +PAK_VER = 5
DEPS =
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = eadef24aad6e3e8379ba0d14971fd64a +$(DL_FILE)_MD5 = 3178c98341559657a15b185bf5d700a5
install : $(TARGET)
diff --git a/lfs/libpcap b/lfs/libpcap index 14ce62676..0cdc06e8f 100644 --- a/lfs/libpcap +++ b/lfs/libpcap @@ -24,7 +24,7 @@
include Config
-VER = 1.10.0 +VER = 1.10.1
THISAPP = libpcap-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -42,7 +42,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 8c12dc19dd7e0d02d2bb6596eb5a71c7 +$(DL_FILE)_MD5 = 28e17495004036567c2cc884b51eba45
install : $(TARGET)
diff --git a/lfs/libsrtp b/lfs/libsrtp deleted file mode 100644 index 25508f863..000000000 --- a/lfs/libsrtp +++ /dev/null @@ -1,84 +0,0 @@ -############################################################################### -# # -# IPFire.org - A linux based firewall # -# Copyright (C) 2007-2018 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 = 1.5.4 -THISAPP = libsrtp-$(VER) -DL_FILE = $(THISAPP).tar.gz -DL_FROM = $(URL_IPFIRE) -DIR_APP = $(DIR_SRC)/$(THISAPP) -TARGET = $(DIR_INFO)/$(THISAPP) -PROG = libsrtp -PAK_VER = 3 - -DEPS = - -############################################################################### -# Top-level Rules -############################################################################### - -objects = $(DL_FILE) - -$(DL_FILE) = $(DL_FROM)/$(DL_FILE) - -$(DL_FILE)_MD5 = 64a9580f86a9c3e1c4986e944e6a5a84 - -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 axf $(DIR_DL)/$(DL_FILE) - $(UPDATE_AUTOMAKE) - cd $(DIR_APP) && ./configure --prefix=/usr - cd $(DIR_APP) && make uninstall && make $(MAKETUNING) shared_library - cd $(DIR_APP) && make install - @rm -rf $(DIR_APP) - @$(POSTBUILD) diff --git a/lfs/libusb b/lfs/libusb index 4b99a6d18..9c8a9ac9a 100644 --- a/lfs/libusb +++ b/lfs/libusb @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2020 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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.0.23 +VER = 1.0.24
THISAPP = libusb-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 1e29700f6a134766d32b36b8d1d61a95 +$(DL_FILE)_MD5 = 5bc27df16155302f308d409e73589872
install : $(TARGET)
diff --git a/lfs/libxcrypt b/lfs/libxcrypt index aac92b5ba..79edc5fb6 100644 --- a/lfs/libxcrypt +++ b/lfs/libxcrypt @@ -24,7 +24,7 @@
include Config
-VER = 4.4.20 +VER = 4.4.22
THISAPP = libxcrypt-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -45,7 +45,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 3b87214308d9a48991fcf2b0aee5649e +$(DL_FILE)_MD5 = 6e4f363d86f99562d012c47e7f024618
install : $(TARGET)
diff --git a/lfs/linux-firmware b/lfs/linux-firmware index 9f7152573..08383f680 100644 --- a/lfs/linux-firmware +++ b/lfs/linux-firmware @@ -24,7 +24,7 @@
include Config
-VER = 20200519 +VER = 20210511
THISAPP = linux-firmware-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 7ea1c59732569a01ec8b0e6a412a314c +$(DL_FILE)_MD5 = 3c024cca702aa71fe24fc374c53581fa
install : $(TARGET)
@@ -72,10 +72,11 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) mkdir -p /lib/firmware cd $(DIR_APP) && make install - # Remove Space from Filenames - mv "/lib/firmware/brcm/brcmfmac43430a0-sdio.ONDA-V80 PLUS.txt" \ - "/lib/firmware/brcm/brcmfmac43430a0-sdio.ONDA-V80_PLUS.txt" - mv "/lib/firmware/brcm/brcmfmac43455-sdio.MINIX-NEO Z83-4.txt" \ - "/lib/firmware/brcm/brcmfmac43455-sdio.MINIX-NEO_Z83-4.txt" + + # Remove any spaces in filenames + while read -r file; do \ + mv "$${file}" "$${file// /_}" || exit 1; \ + done < <(find /lib/firmware -name "* *") + @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/lfs/miniupnpd b/lfs/miniupnpd deleted file mode 100644 index c09ecab31..000000000 --- a/lfs/miniupnpd +++ /dev/null @@ -1,88 +0,0 @@ -############################################################################### -# # -# IPFire.org - A linux based firewall # -# Copyright (C) 2007-2018 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 = 1.9 - -THISAPP = miniupnpd-$(VER) -DL_FILE = $(THISAPP).tar.gz -DL_FROM = $(URL_IPFIRE) -DIR_APP = $(DIR_SRC)/$(THISAPP) -TARGET = $(DIR_INFO)/$(THISAPP) -PROG = miniupnpd -PAK_VER = 3 - -############################################################################### -# Top-level Rules -############################################################################### - -objects = $(DL_FILE) - -$(DL_FILE) = $(DL_FROM)/$(DL_FILE) - -$(DL_FILE)_MD5 = 9151502f84f130b0ef1245ac938c33f9 - -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) - cd $(DIR_APP) && make -f Makefile.linux \ - CFLAGS="$(CFLAGS) -DIPTABLES_143" LIBS="-lip4tc -lnfnetlink" - cd $(DIR_APP) && install -m 755 miniupnpd /usr/sbin - -mkdir -pv /etc/miniupnpd - cp -vf $(DIR_SRC)/config/miniupnpd/miniupnpd.conf /etc/miniupnpd/miniupnpd.conf - - #install initscripts - $(call INSTALL_INITSCRIPT,miniupnpd) - - @rm -rf $(DIR_APP) - @$(POSTBUILD) diff --git a/lfs/motion b/lfs/motion deleted file mode 100644 index 4197fd1f5..000000000 --- a/lfs/motion +++ /dev/null @@ -1,102 +0,0 @@ -############################################################################### -# # -# IPFire.org - A linux based firewall # -# Copyright (C) 2007-2020 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 = 4.3.0 - -THISAPP = motion-Release-$(VER) -DL_FILE = $(THISAPP).tar.gz -DL_FROM = $(URL_IPFIRE) -DIR_APP = $(DIR_SRC)/$(THISAPP) -TARGET = $(DIR_INFO)/$(THISAPP) - -PROG = motion -PAK_VER = 3 -DEPS = ffmpeg libmicrohttpd - -CFLAGS += -fcommon - -############################################################################### -# Top-level Rules -############################################################################### - -objects = $(DL_FILE) - -$(DL_FILE) = $(DL_FROM)/$(DL_FILE) - -$(DL_FILE)_MD5 = 297aab6ec3de74ce1a0d2b1711ac9062 - -install : $(TARGET) - -check : $(patsubst %,$(DIR_CHK)/%,$(objects)) - -download :$(patsubst %,$(DIR_DL)/%,$(objects)) - -md5 : $(subst %,%_MD5,$(objects)) - -############################################################################### -# Downloading, checking, md5sum -############################################################################### - -$(patsubst %,$(DIR_CHK)/%,$(objects)) : - @$(CHECK) - -$(patsubst %,$(DIR_DL)/%,$(objects)) : - @$(LOAD) - -$(subst %,%_MD5,$(objects)) : - @$(MD5) - -dist: - @$(PAK) - -############################################################################### -# Installation Details -############################################################################### - -$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) - @$(PREBUILD) - @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) - - #Install obsolete V4L1 videodev.h - cp $(DIR_SRC)/config/include/obsolete_videodev.h /usr/include/linux/videodev.h - - cd $(DIR_APP) && autoreconf -fiv - - cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/etc - cd $(DIR_APP) && make $(MAKETUNING) - cd $(DIR_APP) && make install - cp -vf $(DIR_SRC)/config/motion/motion.conf /etc - install -v -m 644 $(DIR_SRC)/config/backup/includes/motion \ - /var/ipfire/backup/addons/includes/motion - - #Remove obsolete V4L1 videodev.h - rm -f /usr/include/linux/videodev.h - - #install initscripts - $(call INSTALL_INITSCRIPT,motion) - - @rm -rf $(DIR_APP) - @$(POSTBUILD) diff --git a/lfs/mpd b/lfs/mpd index 25e3630e6..0a8b533d8 100644 --- a/lfs/mpd +++ b/lfs/mpd @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/${THISAPP} TARGET = $(DIR_INFO)/$(THISAPP) PROG = mpd -PAK_VER = 21 +PAK_VER = 22 SUP_ARCH = aarch64 x86_64 i586
DEPS = alsa avahi faad2 ffmpeg flac lame libmad libshout libogg libid3tag libvorbis opus soxr @@ -91,7 +91,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) -D ffmpeg=enabled \ -D flac=enabled \ -D lame=enabled \ - -D upnp=enabled \ + -D upnp=disabled \ -D icu=disabled \ builddir/ cd $(DIR_APP) && ninja -C builddir/ diff --git a/lfs/mpfire b/lfs/mpfire index b8a6eec64..94fce614e 100644 --- a/lfs/mpfire +++ b/lfs/mpfire @@ -30,7 +30,7 @@ THISAPP = mpfire-$(VER) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = mpfire -PAK_VER = 13 +PAK_VER = 14
DEPS = mpd mpc
diff --git a/lfs/nano b/lfs/nano index 70d605601..3bb7806aa 100644 --- a/lfs/nano +++ b/lfs/nano @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2020 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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 = 5.7 +VER = 5.8
THISAPP = nano-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = nano -PAK_VER = 37 +PAK_VER = 38
DEPS = ""
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = c2d6540a33248edc31a5830861b4b4ea +$(DL_FILE)_MD5 = d2249e3dd108c830df00efd7c1b79d86
install : $(TARGET)
diff --git a/lfs/netsnmpd b/lfs/netsnmpd index 4b6cc4fa6..d8243e1d9 100644 --- a/lfs/netsnmpd +++ b/lfs/netsnmpd @@ -24,7 +24,7 @@
include Config
-VER = 5.8 +VER = 5.9.1
THISAPP = net-snmp-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = netsnmpd -PAK_VER = 11 +PAK_VER = 12
DEPS =
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 63bfc65fbb86cdb616598df1aff6458a +$(DL_FILE)_MD5 = e5ee202dfb15000342354d64f1837d19
install : $(TARGET)
diff --git a/lfs/nettle b/lfs/nettle index dfc3fdda5..02b117f91 100644 --- a/lfs/nettle +++ b/lfs/nettle @@ -24,7 +24,7 @@
include Config
-VER = 3.7.2 +VER = 3.7.3
THISAPP = nettle-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 22849db27ed563ebbc829273f0c97e35 +$(DL_FILE)_MD5 = a60273d0fab9c808646fcf5e9edc2e8f
install : $(TARGET)
diff --git a/lfs/openssh b/lfs/openssh index 3117e996c..ced1a7db9 100644 --- a/lfs/openssh +++ b/lfs/openssh @@ -84,7 +84,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) cd $(DIR_APP) && make install
# install custom OpenSSH server configuration - install -v -m 644 $(DIR_SRC)/config/ssh/sshd_config \ + install -v -m 600 $(DIR_SRC)/config/ssh/sshd_config \ /etc/ssh/sshd_config
# install custom OpenSSH client configuration diff --git a/lfs/openvmtools b/lfs/openvmtools index 5e8789130..01915d6a6 100644 --- a/lfs/openvmtools +++ b/lfs/openvmtools @@ -87,7 +87,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) --without-pam \ --without-gtk2 \ --without-gtkmm \ - --without-procps \ --without-icu \ --without-x \ --with-linuxdir=/usr/src/linux \ diff --git a/lfs/pam b/lfs/pam index daae2def3..463ee71da 100644 --- a/lfs/pam +++ b/lfs/pam @@ -74,7 +74,6 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) cd $(DIR_APP) && ./configure --libdir=/usr/lib \ --sbindir=/lib/security \ --enable-securedir=/lib/security \ - --enable-docdir=/usr/share/doc/Linux-PAM-$(VER) \ --enable-read-both-confs \ --disable-nls
diff --git a/lfs/pcre2 b/lfs/pcre2 index c2042e902..fd9548a73 100644 --- a/lfs/pcre2 +++ b/lfs/pcre2 @@ -24,7 +24,7 @@
include Config
-VER = 10.36 +VER = 10.37
THISAPP = pcre2-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -54,7 +54,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = a5d9aa7d18b61b0226696510e60c9582 +$(DL_FILE)_MD5 = a0b59d89828f62d2e1caac04f7c51e0b
install : $(TARGET)
diff --git a/lfs/perl-CGI b/lfs/perl-CGI index e10a68eaf..25a781935 100644 --- a/lfs/perl-CGI +++ b/lfs/perl-CGI @@ -24,7 +24,7 @@
include Config
-VER = 4.44 +VER = 4.53
THISAPP = CGI-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 2cbe560fdadbb8b9237744e39bbfc3eb +$(DL_FILE)_MD5 = a0fe86a038de743ac45a0933daa2804f
install : $(TARGET)
diff --git a/lfs/fbset b/lfs/perl-Data-UUID similarity index 94% rename from lfs/fbset rename to lfs/perl-Data-UUID index ec3c2a63c..e3eee182b 100644 --- a/lfs/fbset +++ b/lfs/perl-Data-UUID @@ -24,9 +24,9 @@
include Config
-VER = 2.1 +VER = 1.224
-THISAPP = fbset-$(VER) +THISAPP = Data-UUID-$(VER) DL_FILE = $(THISAPP).tar.gz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = e547cfcbb8c1a4f2a6b8ba4acb8b7164 +$(DL_FILE)_MD5 = 71510bbcce760c394591fca83a9b5e6d
install : $(TARGET)
@@ -50,9 +50,6 @@ download :$(patsubst %,$(DIR_DL)/%,$(objects))
md5 : $(subst %,%_MD5,$(objects))
-dist: - @$(PAK) - ############################################################################### # Downloading, checking, md5sum ############################################################################### @@ -73,7 +70,8 @@ $(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) && perl Makefile.PL + cd $(DIR_APP) && make $(MAKETUNING) cd $(DIR_APP) && make install - cp -f $(DIR_SRC)/config/fbset/fb.modes /etc/fb.modes @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/lfs/perl-TimeDate b/lfs/perl-TimeDate index 26e6d365a..fa5fae7a4 100644 --- a/lfs/perl-TimeDate +++ b/lfs/perl-TimeDate @@ -23,7 +23,7 @@ # Definitions ############################################################################### include Config -VER = 1.20 +VER = 2.33
THISAPP = TimeDate-$(VER) DL_FILE = ${THISAPP}.tar.gz @@ -32,7 +32,7 @@ DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = perl-TimeDate DEPS = -PAK_VER = 5 +PAK_VER = 6
############################################################################### # Top-level Rules @@ -42,7 +42,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 7da7452bce4c684e4238e6d09b390200 +$(DL_FILE)_MD5 = 5e5afe22c8d417417283d1f7f4572a57
install : $(TARGET)
diff --git a/lfs/postfix b/lfs/postfix index 628704152..3735f7e69 100644 --- a/lfs/postfix +++ b/lfs/postfix @@ -24,7 +24,7 @@
include Config
-VER = 3.5.9 +VER = 3.6.1
THISAPP = postfix-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = postfix -PAK_VER = 29 +PAK_VER = 31
DEPS =
@@ -66,7 +66,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = a4d1b2df03a500cf8f9759d5fca1c1f6 +$(DL_FILE)_MD5 = 85d1c2b06a469ba6cc61946c7042e40e
install : $(TARGET)
diff --git a/lfs/python-pyparsing b/lfs/python3-pyparsing similarity index 94% rename from lfs/python-pyparsing rename to lfs/python3-pyparsing index f42e1ac94..45e960a2b 100644 --- a/lfs/python-pyparsing +++ b/lfs/python3-pyparsing @@ -24,15 +24,15 @@
include Config
-VER = 2.2.0 +VER = 2.4.7
THISAPP = pyparsing-$(VER) DL_FILE = $(THISAPP).tar.gz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) -PROG = python-pyparsing -PAK_VER = 2 +PROG = python3-pyparsing +PAK_VER = 3
DEPS =
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 0214e42d63af850256962b6744c948d9 +$(DL_FILE)_MD5 = f0953e47a0112f7a65aec2305ffdf7b4
install : $(TARGET)
@@ -77,6 +77,6 @@ $(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) && python setup.py install + cd $(DIR_APP) && python3 setup.py install @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/lfs/libupnp b/lfs/python3-setuptools similarity index 89% rename from lfs/libupnp rename to lfs/python3-setuptools index 61856ff7b..3c765d2a8 100644 --- a/lfs/libupnp +++ b/lfs/python3-setuptools @@ -24,13 +24,17 @@
include Config
-VER = 1.14.6 +VER = 56.2.0
-THISAPP = libupnp-$(VER) -DL_FILE = $(THISAPP).tar.bz2 +THISAPP = setuptools-$(VER) +DL_FILE = $(THISAPP).tar.gz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) +PROG = python3-setuptools +PAK_VER = 3 + +DEPS =
############################################################################### # Top-level Rules @@ -40,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 05c2393eee4fbf81c9e1b116b9554039 +$(DL_FILE)_MD5 = e8caf0f129f585a887bb3cbb528149d1
install : $(TARGET)
@@ -50,6 +54,9 @@ download :$(patsubst %,$(DIR_DL)/%,$(objects))
md5 : $(subst %,%_MD5,$(objects))
+dist: + @$(PAK) + ############################################################################### # Downloading, checking, md5sum ############################################################################### @@ -69,10 +76,7 @@ $(subst %,%_MD5,$(objects)) :
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) - @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) - $(UPDATE_AUTOMAKE) - cd $(DIR_APP) && ./configure --prefix=/usr - cd $(DIR_APP) && make $(MAKETUNING) - cd $(DIR_APP) && make install + @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE) + cd $(DIR_APP) && python3 setup.py install @rm -rf $(DIR_APP) @$(POSTBUILD) diff --git a/lfs/qpdf b/lfs/qpdf index 899a9d67d..2aff1fc86 100644 --- a/lfs/qpdf +++ b/lfs/qpdf @@ -24,7 +24,7 @@
include Config
-VER = 10.3.0 +VER = 10.3.2
THISAPP = qpdf-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -44,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 0e9918cfb9bb13c96b7cd0cffd401b3d +$(DL_FILE)_MD5 = 29aaaf03e0f83b3527d1470f8391c876
install : $(TARGET)
diff --git a/lfs/rng-tools b/lfs/rng-tools index dc87a3406..4b9915f40 100644 --- a/lfs/rng-tools +++ b/lfs/rng-tools @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2018 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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 = 6.4 +VER = 6.12
THISAPP = rng-tools-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 52a8243858503f94eecd4ae0983a9818 +$(DL_FILE)_MD5 = 17f2815263b6ce6a353625b1fe615346
install : $(TARGET)
@@ -72,7 +72,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/rng-tools-6-Enable-RDRAND-for-i586-too.patch cd $(DIR_APP) && ./autogen.sh - cd $(DIR_APP) && ./configure --prefix=/usr + cd $(DIR_APP) && ./configure --prefix=/usr --without-pkcs11 cd $(DIR_APP) && make $(MAKETUNING) $(EXTRA_MAKE) cd $(DIR_APP) && make $(EXTRA_INSTALL) install @rm -rf $(DIR_APP) diff --git a/lfs/samba b/lfs/samba index 2e11ba7a9..4c6ebddf6 100644 --- a/lfs/samba +++ b/lfs/samba @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = samba -PAK_VER = 79 +PAK_VER = 80
DEPS = avahi cups libtirpc krb5 perl-Parse-Yapp
diff --git a/lfs/sane b/lfs/sane deleted file mode 100644 index c932e9970..000000000 --- a/lfs/sane +++ /dev/null @@ -1,100 +0,0 @@ -############################################################################### -# # -# IPFire.org - A linux based firewall # -# Copyright (C) 2007-2018 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 = 1.0.28 - -THISAPP = sane-$(VER) -DL_FILE = sane-backends-$(VER).tar.gz -DL_FROM = $(URL_IPFIRE) -DIR_APP = $(DIR_SRC)/sane-backends-$(VER) -TARGET = $(DIR_INFO)/$(THISAPP) - -PROG = sane -PAK_VER = 6 - -DEPS = avahi cups libtiff - -############################################################################### -# Top-level Rules -############################################################################### - -objects = $(DL_FILE) - -$(DL_FILE) = $(DL_FROM)/$(DL_FILE) - -$(DL_FILE)_MD5 = 02493493072769a1d4ad904d30f04e6b - -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) - cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/etc \ - --disable-ipv6 \ - --enable-parport-directio \ - --enable-avahi - cd $(DIR_APP) && make $(MAKETUNING) - cd $(DIR_APP) && make install - - # Install configuration - cp -vf $(DIR_SRC)/config/sane/saned.conf /etc/sane.d/ - - #install initscripts - $(call INSTALL_INITSCRIPT,sane) - - ln -sf ../init.d/sane /etc/rc.d/rc3.d/S95sane - ln -sf ../init.d/sane /etc/rc.d/rc0.d/K10sane - ln -sf ../init.d/sane /etc/rc.d/rc6.d/K10sane - install -v -m 644 $(DIR_SRC)/config/backup/includes/sane \ - /var/ipfire/backup/addons/includes/sane - @rm -rf $(DIR_APP) - @$(POSTBUILD) diff --git a/lfs/sarg b/lfs/sarg index 697ce7513..6a8b52e6c 100644 --- a/lfs/sarg +++ b/lfs/sarg @@ -24,7 +24,7 @@
include Config
-VER = 2.3.11 +VER = 2.4.0
THISAPP = sarg-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = sarg -PAK_VER = 4 +PAK_VER = 5
DEPS =
@@ -46,7 +46,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 8e30d86b16597aec89ad401c72c761bc +$(DL_FILE)_MD5 = 1b84509c1a0d55d46148bd957744870f
install : $(TARGET)
@@ -81,14 +81,11 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE) $(UPDATE_AUTOMAKE)
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/sarg/sarg-2.3.11-format.patch - cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/sarg/sarg-2.3.11-configure.patch + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/sarg/sarg-2.4.0-format.patch + cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/sarg/sarg-2.4.0-configure.patch
cd $(DIR_APP) && autoreconf -vfi
- # Update gettext Makefile - cd $(DIR_APP) && cp -vf /usr/share/gettext/po/Makefile.in.in po/Makefile.in.in - cd $(DIR_APP) && ./configure \ --prefix=/usr \ --sysconfdir=/etc/sarg diff --git a/lfs/sendEmail b/lfs/sendEmail deleted file mode 100644 index ea2345f22..000000000 --- a/lfs/sendEmail +++ /dev/null @@ -1,70 +0,0 @@ -############################################################################### -# IPFire.org - An Open Source Firewall Solution # -# Copyright (C) 2007-2018 IPFire Team info@ipfire.org # -############################################################################### - -############################################################################### -# Definitions -############################################################################### - -include Config - -VER = 1.56 - -THISAPP = sendEmail-v$(VER) -DL_FILE = $(THISAPP).tar.gz -DL_FROM = $(URL_IPFIRE) -DIR_APP = $(DIR_SRC)/$(THISAPP) -TARGET = $(DIR_INFO)/$(THISAPP) -PROG = sendEmail -PAK_VER = 2 - -DEPS = - -############################################################################### -# Top-level Rules -############################################################################### - -objects = $(DL_FILE) - -$(DL_FILE) = $(DL_FROM)/$(DL_FILE) - -$(DL_FILE)_MD5 = 5b7bec4373268fa6446fa59416bb99fb - -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) - cd $(DIR_APP) && cp -pvf sendEmail /usr/local/bin - chown root.root /usr/local/bin/sendEmail - chmod 755 /usr/local/bin/sendEmail - @rm -rf $(DIR_APP) - @$(POSTBUILD) - diff --git a/lfs/smartmontools b/lfs/smartmontools index 98f6a5eca..8428ce012 100644 --- a/lfs/smartmontools +++ b/lfs/smartmontools @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2020 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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 = 7.1 +VER = 7.2
THISAPP = smartmontools-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 430cd5f64caa4524018b536e5ecd9c29 +$(DL_FILE)_MD5 = e8d134c69ae4959a05cb56b31172ffb1
install : $(TARGET)
diff --git a/lfs/sox b/lfs/sox index f2d57a6ee..8388c57fc 100644 --- a/lfs/sox +++ b/lfs/sox @@ -78,8 +78,7 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects)) @$(PREBUILD) @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE) $(UPDATE_AUTOMAKE) - cd $(DIR_APP) && ./configure --prefix=/usr --disable-alsa-dsp --disable-oss-dsp \ - --disable-sun-audio --disable-mad + cd $(DIR_APP) && ./configure --prefix=/usr cd $(DIR_APP) && make $(EXTRA_MAKE) cd $(DIR_APP) && make install @rm -rf $(DIR_APP) diff --git a/lfs/sudo b/lfs/sudo index ab6fbf99b..9edd08961 100644 --- a/lfs/sudo +++ b/lfs/sudo @@ -24,7 +24,7 @@
include Config
-VER = 1.9.7 +VER = 1.9.7p1
THISAPP = sudo-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 1ed8b73ba56c9b05ed22681b7b92d1b2 +$(DL_FILE)_MD5 = 0ea3649ef66df80e6ecd04d45ea0f762
install : $(TARGET)
diff --git a/lfs/tcpdump b/lfs/tcpdump index 86c54738d..2fcac6d4c 100644 --- a/lfs/tcpdump +++ b/lfs/tcpdump @@ -24,7 +24,7 @@
include Config
-VER = 4.99.0 +VER = 4.99.1
THISAPP = tcpdump-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = tcpdump -PAK_VER = 12 +PAK_VER = 13
DEPS =
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = b10aa2f497def7283bc060f626879ce5 +$(DL_FILE)_MD5 = 929a255c71a9933608bd7c31927760f7
install : $(TARGET)
diff --git a/lfs/tmux b/lfs/tmux index aae90dab1..e55d38a27 100644 --- a/lfs/tmux +++ b/lfs/tmux @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2020 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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 = 3.1 +VER = 3.2a
THISAPP = tmux-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = tmux -PAK_VER = 8 +PAK_VER = 9
DEPS =
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 76c3ef9d40d2c1ade7a6cd7993b549ac +$(DL_FILE)_MD5 = 61fba141303aeaf8d9a6931d247f2f4a
install : $(TARGET)
diff --git a/lfs/tor b/lfs/tor index 9d40be1ce..97f2cf04e 100644 --- a/lfs/tor +++ b/lfs/tor @@ -24,7 +24,7 @@
include Config
-VER = 0.4.5.8 +VER = 0.4.6.5
THISAPP = tor-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -32,7 +32,7 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = tor -PAK_VER = 60 +PAK_VER = 62
DEPS = libseccomp
@@ -44,7 +44,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = a39d9b930a19936b57f097051c0ad509 +$(DL_FILE)_MD5 = 5a678a32c5a8b4bf97c9cb541df22b71
install : $(TARGET)
diff --git a/lfs/vnstat b/lfs/vnstat index a5762bf5d..d66a4b2e4 100644 --- a/lfs/vnstat +++ b/lfs/vnstat @@ -1,7 +1,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2020 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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.6 +VER = 2.7
THISAPP = vnstat-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = fe2928a81243cc8a532a357f97221736 +$(DL_FILE)_MD5 = fcf28cf5fdfbaab522f37b6431f327e1
install : $(TARGET)
diff --git a/lfs/wio b/lfs/wio index b65d244d6..c54cd3f31 100644 --- a/lfs/wio +++ b/lfs/wio @@ -15,7 +15,7 @@ THISAPP = wio-$(VER) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) PROG = wio -PAK_VER = 12 +PAK_VER = 13
############################################################################### # Top-level Rules diff --git a/lfs/xfsprogs b/lfs/xfsprogs index 29aabc0d9..90a43d34d 100644 --- a/lfs/xfsprogs +++ b/lfs/xfsprogs @@ -24,7 +24,7 @@
include Config
-VER = 5.11.0 +VER = 5.12.0
THISAPP = xfsprogs-$(VER) DL_FILE = $(THISAPP).tar.xz @@ -32,9 +32,6 @@ DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP)
-CONFIGURE_OPTIONS = \ - --enable-readline=yes - ifeq "$(BUILD_ARCH)" "armv5tel" CONFIGURE_OPTIONS += \ --enable-lto=no @@ -48,7 +45,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 803bcddd983803b339acfb76064dfd84 +$(DL_FILE)_MD5 = b401d76ccd66e4fdf3d123193e5e1b91
install : $(TARGET)
diff --git a/lfs/zd1211-firmware b/lfs/zd1211-firmware index e19f1cbb5..0cf2c10a4 100644 --- a/lfs/zd1211-firmware +++ b/lfs/zd1211-firmware @@ -24,7 +24,7 @@
include Config
-VER = 1.4 +VER = 1.5
THISAPP = zd1211-firmware-$(VER) DL_FILE = $(THISAPP).tar.bz2 @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 19f28781d76569af8551c9d11294c870 +$(DL_FILE)_MD5 = 3c182ceb9b2fc1d8442cd81c1280d83f
install : $(TARGET)
diff --git a/lfs/zerofree b/lfs/zerofree index b3f20aba6..20a6137a3 100644 --- a/lfs/zerofree +++ b/lfs/zerofree @@ -24,10 +24,10 @@
include Config
-VER = 1.0.1 +VER = 1.1.1
THISAPP = zerofree-$(VER) -DL_FILE = $(THISAPP).tar.gz +DL_FILE = $(THISAPP).tgz DL_FROM = $(URL_IPFIRE) DIR_APP = $(DIR_SRC)/$(THISAPP) TARGET = $(DIR_INFO)/$(THISAPP) @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = a8c772fdd134448f25ab4e7e12004595 +$(DL_FILE)_MD5 = 4f2d6bdba4212e54eb7dd22a8fbb6d29
install : $(TARGET)
diff --git a/lfs/zstd b/lfs/zstd index a4549557b..71f09ab40 100644 --- a/lfs/zstd +++ b/lfs/zstd @@ -24,7 +24,7 @@
include Config
-VER = 1.4.9 +VER = 1.5.0
THISAPP = zstd-$(VER) DL_FILE = $(THISAPP).tar.gz @@ -40,7 +40,7 @@ objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = eb718b8aae0302cabe20f968e500534d +$(DL_FILE)_MD5 = a6eb7fb1f2c21fa80030a47993853e92
install : $(TARGET)
diff --git a/make.sh b/make.sh index 4af0081e9..fc03ebcd5 100755 --- a/make.sh +++ b/make.sh @@ -26,7 +26,7 @@ NAME="IPFire" # Software name SNAME="ipfire" # Short name # If you update the version don't forget to update backupiso and add it to core update VERSION="2.25" # Version number -CORE="157" # Core Level (Filename) +CORE="158" # Core Level (Filename) SLOGAN="www.ipfire.org" # Software slogan CONFIG_ROOT=/var/ipfire # Configuration rootdir MAX_RETRIES=1 # prefetch/check loop @@ -1300,13 +1300,13 @@ buildipfire() { lfsmake2 perl-Device-Modem lfsmake2 perl-Apache-Htpasswd lfsmake2 perl-Parse-Yapp + lfsmake2 perl-Data-UUID lfsmake2 gnupg lfsmake2 hdparm lfsmake2 sdparm lfsmake2 whatmask lfsmake2 libtirpc lfsmake2 conntrack-tools - lfsmake2 libupnp lfsmake2 ipaddr lfsmake2 iputils lfsmake2 l7-protocols @@ -1345,6 +1345,7 @@ buildipfire() { lfsmake2 Crypt-PasswdMD5 lfsmake2 Net-Telnet lfsmake2 python-setuptools + lfsmake2 python3-setuptools lfsmake2 python3-inotify lfsmake2 python3-docutils lfsmake2 python3-daemon @@ -1451,16 +1452,14 @@ buildipfire() { lfsmake2 collectd lfsmake2 elinks lfsmake2 igmpproxy - lfsmake2 fbset lfsmake2 opus - lfsmake2 python-pyparsing + lfsmake2 python3-pyparsing lfsmake2 spice-protocol lfsmake2 spice lfsmake2 sdl lfsmake2 libusbredir lfsmake2 libseccomp lfsmake2 qemu - lfsmake2 sane lfsmake2 netpbm lfsmake2 netsnmpd lfsmake2 nagios_nrpe @@ -1512,21 +1511,16 @@ buildipfire() { lfsmake2 perl-DBD-SQLite lfsmake2 perl-File-ReadBackwards lfsmake2 openvmtools - lfsmake2 libmicrohttpd - lfsmake2 motion lfsmake2 joe lfsmake2 monit lfsmake2 nut lfsmake2 watchdog lfsmake2 libpri - lfsmake2 libsrtp - lfsmake2 asterisk lfsmake2 usb_modeswitch lfsmake2 usb_modeswitch_data lfsmake2 zerofree lfsmake2 minicom lfsmake2 ddrescue - lfsmake2 miniupnpd lfsmake2 client175 lfsmake2 powertop lfsmake2 parted @@ -1552,8 +1546,6 @@ buildipfire() { lfsmake2 python3-msgpack lfsmake2 aws-cli lfsmake2 transmission - lfsmake2 dpfhack - lfsmake2 lcd4linux lfsmake2 mtr lfsmake2 minidlna lfsmake2 acpid @@ -1564,7 +1556,6 @@ buildipfire() { lfsmake2 libstatgrab lfsmake2 sarg lfsmake2 nginx - lfsmake2 sendEmail lfsmake2 sysbench lfsmake2 strace lfsmake2 ltrace diff --git a/src/hwdata/pci.ids b/src/hwdata/pci.ids index 4ef971f04..d2c6db4c0 100644 --- a/src/hwdata/pci.ids +++ b/src/hwdata/pci.ids @@ -1,8 +1,8 @@ # # List of PCI ID's # -# Version: 2020.10.25 -# Date: 2020-10-25 03:15:01 +# Version: 2021.05.16 +# Date: 2021-05-16 03:15:02 # # Maintained by Albert Pool, Martin Mares, and other volunteers from # the PCI ID Project at https://pci-ids.ucw.cz/. @@ -70,6 +70,8 @@ 018a LevelOne 0106 FPC-0106TX misprogrammed [RTL81xx] 01de Oxide Computer Company +# probably misprogrammed Intel Atom C2338 on Dell 0K8Y0N board +0200 Dell (wrong ID) # 021b is not Compaq but there is a board misprogrammed 021b Compaq Computer Corporation 8139 HNE-300 (RealTek RTL8139c) [iPaq Networking] @@ -520,6 +522,7 @@ 1000 3040 9210-8i 1000 3080 9200-8e [LSI SAS 6Gb/s SAS/SATA PCIe x8 External HBA] 1000 30b0 9200-8e [LSI SAS 6Gb/s SAS/SATA PCIe x8 External HBA] + 1014 03ca IBM 6Gb SAS HBA [9212-4i4e] 1028 1f1c 6Gbps SAS HBA Adapter 1028 1f1d PERC H200 Adapter 1028 1f1e PERC H200 Integrated @@ -703,8 +706,8 @@ 1d49 0200 ThinkSystem 430-8i SAS/SATA 12Gb HBA 1d49 0202 ThinkSystem 430-8e SAS/SATA 12Gb HBA 1d49 0204 ThinkSystem 430-8i SAS/SATA 12Gb Dense HBA -# PCIe switch SES management endpoint - 00b2 PEX880xx PCIe Gen 4 Switch SES management endpoint + 00b2 PCIe Switch management endpoint + 1d49 0003 ThinkSystem 1611-8P PCIe Gen4 NVMe Switch Adapter 00be SAS3504 Fusion-MPT Tri-Mode RAID On Chip (ROC) 00bf SAS3404 Fusion-MPT Tri-Mode I/O Controller Chip (IOC) 00c0 SAS3324 PCI-Express Fusion-MPT SAS-3 @@ -871,6 +874,14 @@ 1d49 060e ThinkSystem RAID 940-32i 8GB Flash PCIe Gen4 12Gb Adapter 1d49 060f ThinkSystem RAID 940-8e 4GB Flash PCIe Gen4 12Gb Adapter 10e2 MegaRAID 12GSAS/PCIe Secure SAS39xx +# 9560 16 internal port RAID controller + 1000 4000 MegaRAID 9560-16i +# 9560 8 internal port RAID controller + 1000 4010 MegaRAID 9560-8i +# 9580 8 internal & 8 external port RAID controller + 1000 4020 MegaRAID 9580-8i8e +# MegaRAID 9562-16i 9562 16 internal port RAID controller + 1000 40b0 MegaRAID 9562-16i 1028 1ae0 PERC H755 Adapter 1028 1ae1 PERC H755 Front 1028 1ae2 PERC H755N Front @@ -905,6 +916,9 @@ 8086 0523 MegaRAID RAID Controller SRCS16 3050 SAS2008 PCI-Express Fusion-MPT SAS-2 6001 DX1 Multiformat Broadcast HD/SD Encoder/Decoder + c010 PEX88048 50 lane, 50 port, PCI Express Gen 4.0 ExpressFabric Platform + c012 PEX880xx PCIe Gen 4 Switch + 1d49 0003 ThinkSystem 1611-8P PCIe Gen4 NVMe Switch Adapter 1001 Kolter Electronic 0010 PCI 1616 Measurement card with 32 digital I/O lines 0011 OPTO-PCI Opto-Isolated digital I/O board @@ -948,24 +962,36 @@ 1478 Navi 10 XL Upstream Port of PCI Express Switch 1479 Navi 10 XL Downstream Port of PCI Express Switch 154c Kryptos [Radeon RX 350] + 1462 7c28 MS-7C28 Motherboard 154e Garfield 1551 Arlene 1552 Pooky 1561 Anubis 15d8 Picasso 103c 8615 Pavilion Laptop 15-cw1xxx + 17aa 3181 ThinkCentre M75n IoT 17aa 5124 ThinkPad E595 + ea50 cc10 RXi2-BP 15dd Raven Ridge [Radeon Vega Series / Radeon Vega Mobile Series] 103c 83c6 Radeon Vega 8 Mobile + 1043 876b PRIME Motherboard 1458 d000 Radeon RX Vega 11 + ea50 cc10 RXi2-BP 15de Raven/Raven2/Fenghuang HDMI/DP Audio Controller 103c 8615 Pavilion Laptop 15-cw1xxx + 1043 876b PRIME B450M-A Motherboard 17aa 5124 ThinkPad E595 + ea50 cc10 RXi2-BP 15df Raven/Raven2/Fenghuang/Renoir Cryptographic Coprocessor 103c 8615 Pavilion Laptop 15-cw1xxx + ea50 ce19 mCOM10-L1900 15ff Fenghuang [Zhongshan Subor Z+] 1607 Arden 1636 Renoir + 1638 Cezanne + 163f VanGogh + 164c Lucienne + 164d Rembrandt 1714 BeaverCreek HDMI Audio [Radeon HD 6500D and 6400G-6600G series] 103c 168b ProBook 4535s 3150 RV380/M24 [Mobility Radeon X600] @@ -1148,6 +1174,7 @@ 1179 ff50 Satellite P305D-S8995E 1458 a022 GA-MA770-DS3rev2.0 Motherboard 1458 a102 GA-880GMA-USB3 + 1462 7596 760GM-E51(MS-7596) Motherboard 17f2 5000 KI690-AM2 Motherboard 4384 SBx00 PCI to PCI Bridge 4385 SBx00 SMBus Controller @@ -1160,6 +1187,7 @@ 1179 ff50 Satellite P305D-S8995E 1458 4385 GA-MA770-DS3rev2.0 Motherboard 1462 7368 K9AG Neo2 + 1462 7596 760GM-E51(MS-7596) Motherboard 15d9 a811 H8DGU 174b 1001 PURE Fusion Mini 17f2 5000 KI690-AM2 Motherboard @@ -1210,6 +1238,7 @@ 1043 8389 M4A785TD Motherboard 105b 0e13 N15235/A74MX mainboard / AMD SB700 1458 b002 GA-MA770-DS3rev2.0 Motherboard + 1462 7596 760GM-E51(MS-7596) Motherboard 1849 4390 Motherboard (one of many) 4391 SB7x0/SB8x0/SB9x0 SATA Controller [AHCI mode] 103c 1609 ProLiant MicroServer N36L @@ -1233,6 +1262,7 @@ 1043 8443 M5A88-V EVO 105b 0e13 N15235/A74MX mainboard / AMD SB700 1458 5004 GA-880GMA-USB3 + 1462 7596 760GM-E51(MS-7596) Motherboard 15d9 a811 H8DGU 174b 1001 PURE Fusion Mini 4397 SB7x0/SB8x0/SB9x0 USB OHCI0 Controller @@ -1243,12 +1273,14 @@ 1043 8443 M5A88-V EVO 105b 0e13 N15235/A74MX mainboard / AMD SB700 1458 5004 GA-880GMA-USB3 + 1462 7596 760GM-E51(MS-7596) Motherboard 15d9 a811 H8DGU 174b 1001 PURE Fusion Mini 4398 SB7x0 USB OHCI1 Controller 1019 2120 A785GM-M 1043 82ef M3A78-EH Motherboard 105b 0e13 N15235/A74MX mainboard / AMD SB700 + 1462 7596 760GM-E51(MS-7596) Motherboard 15d9 a811 H8DGU 4399 SB7x0/SB8x0/SB9x0 USB OHCI2 Controller 1019 2120 A785GM-M @@ -1256,6 +1288,7 @@ 1043 8443 M5A88-V EVO 105b 0e13 N15235/A74MX mainboard / AMD SB700 1458 5004 GA-880GMA-USB3 + 1462 7596 760GM-E51(MS-7596) Motherboard 174b 1001 PURE Fusion Mini 439c SB7x0/SB8x0/SB9x0 IDE Controller 1002 4392 MSI MS-7713 motherboard @@ -1263,6 +1296,7 @@ 103c 1609 ProLiant MicroServer N36L 1043 82ef M3A78-EH Motherboard 105b 0e13 N15235/A74MX mainboard / AMD SB700 + 1462 7596 760GM-E51(MS-7596) Motherboard 439d SB7x0/SB8x0/SB9x0 LPC host controller 1019 2120 A785GM-M 103c 1609 ProLiant MicroServer N36L @@ -1270,6 +1304,7 @@ 1043 82ef M3A78-EH Motherboard 1043 8443 M5A88-V EVO 105b 0e13 N15235/A74MX mainboard / AMD SB700 + 1462 7596 760GM-E51(MS-7596) Motherboard 174b 1001 PURE Fusion Mini 43a0 SB700/SB800/SB900 PCI to PCI bridge (PCIE port 0) 43a1 SB700/SB800/SB900 PCI to PCI bridge (PCIE port 1) @@ -1755,7 +1790,7 @@ 5964 RV280 [Radeon 9200 SE] 1002 5964 Radeon 9200 SE, 64-bit 128MB DDR, 200/166MHz 1043 c006 Radeon 9200 SE / TD / 128M - 1458 4018 Radeon 9200 SE + 1458 4018 R92S128T (Radeon 9200 SE 128MB) 1458 4032 Radeon 9200 SE 128MB 147b 6191 R9200SE-DT 148c 2073 CN-AG92E @@ -1844,7 +1879,7 @@ 1002 5c63 Apple iBook G4 2004 144d c00c P30 notebook 5d44 RV280 [Radeon 9200 SE] (Secondary) - 1458 4019 Radeon 9200 SE (Secondary) + 1458 4019 R92S128T (Radeon 9200 SE 128MB Secondary) 1458 4032 Radeon 9200 SE 128MB 147b 6190 R9200SE-DT (Secondary) 174b 7c12 Radeon 9200 SE (Secondary) @@ -1881,7 +1916,7 @@ 5e6d RV410 [Radeon X700] (Secondary) 148c 2117 Bravo X700 (Secondary) 5f57 R423 [Radeon X800 XT] - 6600 Mars [Radeon HD 8670A/8670M/8750M] + 6600 Mars [Radeon HD 8670A/8670M/8750M / R7 M370] 103c 1952 ProBook 455 G1 6601 Mars [Radeon HD 8730M] 103c 2100 FirePro M4100 @@ -1898,8 +1933,11 @@ 6607 Mars LE [Radeon HD 8530M / R5 M240] 6608 Oland GL [FirePro W2100] 13cc 3d28 MXRT-2600 - 6610 Oland XT [Radeon HD 8670 / R7 250/350] + 6609 Oland GL [FirePro W2100 / Barco MXRT 2600] + 6610 Oland XT [Radeon HD 8670 / R5 340X OEM / R7 250/350/350X OEM] 1019 0030 Radeon HD 8670 + 1028 0081 Radeon R7 350X OEM + 1028 0083 Radeon R5 340X OEM 1028 2120 Radeon R7 250 1028 2322 Radeon R7 250 1462 2910 Radeon HD 8670 @@ -1909,7 +1947,15 @@ 1642 3c91 Radeon HD 8670 1642 3f09 Radeon R7 350 6611 Oland [Radeon HD 8570 / R5 430 OEM / R7 240/340 / Radeon 520 OEM] + 1028 1001 Radeon R5 430 OEM (1024 MByte) + 1028 1002 Radeon R5 430 OEM (2048 MByte) +# The 'AMD Radeon R5 430' instead of 240/340 is NOT a typo! It's actually correct. + 1028 1711 R5 430 OEM (2048 MByte) 1028 210b Radeon R5 240 OEM +# OEM-card for Dell; verified through AMD's own drivers (*.inf) and a TPU BIOS in database + 1028 2121 Radeon HD 8570 OEM +# OEM-card from Fujitsu; verified through AMD's own drivers (*.inf) + 10cf 1889 Radeon HD 8570 OEM 1642 1869 Radeon 520 OEM 174b 4248 Radeon R7 240 OEM 174b a240 Radeon R7 240 OEM @@ -1983,9 +2029,9 @@ 6667 Jet ULT [Radeon R5 M230] 666f Sun LE [Radeon HD 8550M / R5 M230] 66a0 Vega 20 [Radeon Instinct] - 66a1 Vega 20 + 66a1 Vega 20 WKS GL-XE [Radeon Pro VII] 66a2 Vega 20 - 66a3 Vega 20 + 66a3 Vega 20 [Radeon Pro Vega II/Radeon Pro Vega II Duo] 66a7 Vega 20 [Radeon Pro Vega 20] 66af Vega 20 [Radeon VII] 6704 Cayman PRO GL [FirePro V7900] @@ -2179,7 +2225,7 @@ 8086 2111 Radeon HD 6625M 6743 Whistler [Radeon E6760] 6749 Turks GL [FirePro V4900] - 15c3 2b06 MED-X4900 + 15c3 2b06 MED-X4900 (EIZO) 674a Turks GL [FirePro V3900] 13cc 3d22 MXRT-2500 15c3 0106 MED-X3900 @@ -2208,7 +2254,7 @@ 174b 7670 Radeon HD 7670 174b e181 Radeon HD 6670 1787 2309 Radeon HD 6670 - 6759 Turks PRO [Radeon HD 6570/7570/8550] + 6759 Turks PRO [Radeon HD 6570/7570/8550 / R5 230] 103c 3130 Radeon HD 6570 1043 0403 Radeon HD 6570 1462 2500 Radeon HD 6570 @@ -2217,9 +2263,15 @@ 1642 3a67 Radeon HD 6570 1682 3280 Radeon HD 7570 1682 3530 Radeon HD 8550 + 1682 5230 Radeon R5 230 series + 1682 6450 Radeon HD 6450 series 174b 7570 Radeon HD 7570 + 174b 8550 Radeon HD8550 OEM + 174b 8570 Radeon HD8550 OEM 174b e142 Radeon HD 6570 174b e181 Radeon HD 6570 + 1787 a230 Radeon R5 230 series + 1787 a450 Radeon HD 6450 series 1b0a 908f Radeon HD 6570 1b0a 9090 Radeon HD 6570 1b0a 9091 Radeon HD 6570 @@ -2577,6 +2629,7 @@ 1043 04dd STRIX R9 390 148c 2358 Radeon R9 390 174b e324 Sapphire Nitro R9 390 + 67b8 Hawaii XT [Radeon R9 290X Engineering Sample] 67b9 Vesuvius [Radeon R9 295X2] 67be Hawaii LE 67c0 Ellesmere [Radeon Pro WX 7100 Mobile] @@ -2612,6 +2665,7 @@ 1462 3418 Radeon RX 580 Armor 4G OC 1462 341b Radeon RX 570 Armor 8G OC 1462 341e Radeon RX 570 Armor 4G OC + 1462 809e Radeon RX 480 4GB 1462 8a92 Radeon RX 580 148c 2372 Radeon RX 480 [Red Dragon] 148c 2373 Radeon RX 470 @@ -2619,8 +2673,10 @@ # https://www.techpowerup.com/vgabios/?manufacturer=Powercolor&model=RX+58... 148c 2378 Radeon RX 580 148c 2379 Radeon RX 570 4G [Red Dragon] + 148c 2391 Radeon RX 590 [Red Devil] 1682 9470 Radeon RX 470 1682 9480 Radeon RX 480 + 1682 9587 Radeon RX 590 FATBOY 8GB 1682 9588 Radeon RX 580 XTR 1682 c570 Radeon RX 570 1682 c580 Radeon RX 580 @@ -2728,6 +2784,7 @@ 17aa 3643 Radeon R9 A375 17aa 3801 Radeon R9 M275 17aa 3824 Radeon R9 M375 + 1da2 e26a Radeon R7 250 6821 Venus XT [Radeon HD 8870M / R9 M270X/M370X] 1002 031e FirePro SX4000 1028 05cc FirePro M5100 @@ -2891,11 +2948,17 @@ 6864 Vega 10 [Radeon Pro V340] 6867 Vega 10 XL [Radeon Pro Vega 56] 6868 Vega 10 [Radeon PRO WX 8100/8200] + 6869 Vega 10 XGA [Radeon Pro Vega 48] + 686a Vega 10 LEA + 686b Vega 10 XTXA [Radeon Pro Vega 64X] 686c Vega 10 [Radeon Instinct MI25 MxGPU] + 686d Vega 10 GLXTA + 686e Vega 10 GLXLA 687f Vega 10 XL/XT [Radeon RX Vega 56/64] 1002 0b36 RX Vega64 1002 6b76 RX Vega64 1458 230c Radeon RX VEGA 56 GAMING OC 8G + 1da2 e376 Radeon RX VEGA 56 Pulse 8GB OC HBM2 6880 Lexington [Radeon HD 6550M] 103c 163c Pavilion dv6 Radeon HD 6550M 6888 Cypress XT [FirePro V8800] @@ -3141,6 +3204,7 @@ 17af 3000 Radeon HD 6510 17af 3010 Radeon HD 5630 68da Redwood LE [Radeon HD 5550/5570/5630/6390/6490/7570] + 1462 8071 VR5550-MD1G (Radeon HD 5550) 148c 3000 Radeon HD 6390 148c 3001 Radeon HD 6490 1545 7570 Radeon HD 7570 @@ -3413,6 +3477,7 @@ 148c 9380 Radeon R9 380 # Make naming scheme consistent 174b e308 Radeon R9 380 Nitro 4G D5 + 174b e315 Radeon R9 285 693b Tonga PRO GL [FirePro W7100 / Barco MXRT-7600] 694c Polaris 22 XT [Radeon RX Vega M GH] 694e Polaris 22 XL [Radeon RX Vega M GL] @@ -3422,6 +3487,7 @@ 6985 Lexa XT [Radeon PRO WX 3100] 6986 Polaris12 6987 Lexa [Radeon 540X/550X/630 / RX 640 / E9171 MCM] + 698f Lexa XT [Radeon PRO WX 3100 / Barco MXRT 4700] 6995 Lexa XT [Radeon PRO WX 2100] 699f Lexa PRO [Radeon 540/540X/550/550X / RX 540X/550/550X] 1028 1720 Radeon RX 550X @@ -3578,17 +3644,36 @@ 174b e329 Radeon R9 FURY 7310 Navi 10 [Radeon Pro W5700X] 7312 Navi 10 [Radeon Pro W5700] + 7314 Navi 10 USB 731f Navi 10 [Radeon RX 5600 OEM/5600 XT / 5700/5700 XT] 1458 2313 Radeon RX 5700 XT Gaming OC + 1682 5701 RX 5700 XT RAW II + 1849 5120 Radeon RX 5600 XT 1da2 e411 Radeon RX 5600 XT 7340 Navi 14 [Radeon RX 5500/5500M / Pro 5500M] 7341 Navi 14 [Radeon Pro W5500] 7347 Navi 14 [Radeon Pro W5500M] 734f Navi 14 [Radeon Pro W5300M] - 7360 Navi 12 [Radeon Pro 5600M] - 73bf Navi 21 [Radeon RX 6900 Series] - 73c3 Navi 23 - 73df Navi 22 + 7360 Navi 12 [Radeon Pro 5600M / V520] + 7362 Navi 12 [Radeon Pro V520] + 7388 Arcturus GL-XL + 738c Arcturus GL-XL [AMD Instinct MI100] + 738e Arcturus GL-XL + 73a3 Navi 21 [Radeon PRO W6800] + 73a4 Navi 21 USB + 73af Navi 21 [Radeon RX 6900 XT] + 73bf Navi 21 [Radeon RX 6800/6800 XT / 6900 XT] + 1eae 6701 XFX Speedster MERC 319 AMD Radeon RX 6800 XT Black + 73c3 Navi 22 + 73c4 Navi 22 USB + 73df Navi 22 [Radeon RX 6700/6700 XT / 6800M] + 73e0 Navi 23 + 73e1 Navi 23 + 73e4 Navi 23 USB + 73ff Navi 23 [Radeon RX 6600/6600 XT/6600M] + 7408 Aldebaran + 740c Aldebaran + 740f Aldebaran 7833 RS350 Host Bridge 7834 RS350 [Radeon 9100 PRO/XT IGP] 7835 RS350M [Mobility Radeon 9000 IGP] @@ -3796,6 +3881,7 @@ 95cd RV620 GL [FirePro 2450] 95cf RV620 GL [FirePro 2260] 960f RS780 HDMI Audio [Radeon 3000/3100 / HD 3200/3300] + 1462 7596 760GM-E51(MS-7596) Motherboard 9610 RS780 [Radeon HD 3200] 1458 d000 GA-MA78GM-S2H Motherboard 9611 RS780C [Radeon 3100] @@ -3804,6 +3890,8 @@ 9614 RS780D [Radeon HD 3300] 9615 RS780E [Radeon HD 3200] 9616 RS780L [Radeon 3000] +# ID is probably a copy-paste error by a MSI developer from another mainboard, since all other ID numbers on this mainboard including the sub-device of this device has used subsystem ID 1462:7596 + 1462 7501 760GM-E51(MS-7596) Motherboard 9640 Sumo [Radeon HD 6550D] 9641 Sumo [Radeon HD 6620G] 9642 SuperSumo [Radeon HD 6370D] @@ -3843,6 +3931,7 @@ 9809 Wrestler [Radeon HD 7310] 980a Wrestler [Radeon HD 7290] 9830 Kabini [Radeon HD 8400 / R3 Series] + 1043 8623 AM1I-A Motherboard 9831 Kabini [Radeon HD 8400E] 9832 Kabini [Radeon HD 8330] 1849 9832 QC5000-ITX/PH @@ -3855,6 +3944,7 @@ 9839 Kabini [Radeon HD 8180] 983d Temash [Radeon HD 8250/8280G] 9840 Kabini HDMI/DP Audio + 1043 8623 AM1I-A Motherboard 1849 9840 QC5000-ITX/PH 9850 Mullins [Radeon R3 Graphics] 9851 Mullins [Radeon R4/R5 Graphics] @@ -3986,6 +4076,7 @@ ab10 Lexa HDMI Audio ab18 Vega 12 HDMI Audio ab20 Vega 20 HDMI Audio [Radeon VII] + ab28 Navi 21 HDMI Audio [Radeon RX 6800/6800 XT / 6900 XT] ab38 Navi 10 HDMI Audio ac00 Theater 506 World-Wide Analog Decoder ac01 Theater 506 World-Wide Analog Decoder @@ -4136,12 +4227,12 @@ 2646 0001 KNE100TX Fast Ethernet 000a 21230 Video Codec 000d PBXGB [TGA2] - 000f DEFPA FDDI PCI-to-PDQ Interface Chip [PFI] - 1011 def1 FDDI controller (DEFPA) - 103c def1 FDDI controller (3X-DEFPA) + 000f PCI-to-PDQ Interface Chip [PFI] FDDI (DEFPA) + 1011 def1 FDDIcontroller/PCI (DEFPA) + 103c def1 FDDIcontroller/PCI (3X-DEFPA) 0014 DECchip 21041 [Tulip Pass 3] 1186 0100 DE-530+ - 0016 DGLPB [OPPO] + 0016 ATMworks 350 Adapter [OPPO] (DGLPB) 0017 PV-PCI Graphics Controller (ZLXp-L) 0018 Memory Channel interface 0019 DECchip 21142/43 @@ -4604,6 +4695,7 @@ 1450 Family 17h (Models 00h-0fh) Root Complex 1451 Family 17h (Models 00h-0fh) I/O Memory Management Unit 1452 Family 17h (Models 00h-1fh) PCIe Dummy Host Bridge + ea50 ce19 mCOM10-L1900 1453 Family 17h (Models 00h-0fh) PCIe GPP Bridge 1454 Family 17h (Models 00h-0fh) Internal PCIe GPP Bridge 0 to Bus B 1455 Zeppelin/Renoir PCIe Dummy Function @@ -4658,6 +4750,7 @@ 149b Starship Reserved SSP 149c Matisse USB 3.0 Host Controller 1462 7c37 X570-A PRO motherboard + 149d Vangogh CVIP 1510 Family 14h Processor Root Complex 174b 1001 PURE Fusion Mini 1512 Family 14h Processor Root Port @@ -4672,6 +4765,7 @@ 1534 Family 16h Processor Function 4 1535 Family 16h Processor Function 5 1536 Family 16h Processor Root Complex + 1043 8623 AM1I-A Motherboard 1849 1536 QC5000-ITX/PH 1537 Kabini/Mullins PSP-Platform Security Processor 1538 Family 16h Processor Function 0 @@ -4742,28 +4836,40 @@ 15be Stoney Audio Processor 15d0 Raven/Raven2 Root Complex 103c 8615 Pavilion Laptop 15-cw1xxx + 1043 876b PRIME B450M-A Motherboard 15d1 Raven/Raven2 IOMMU 103c 8615 Pavilion Laptop 15-cw1xxx + 1043 876b PRIME B450M-A Motherboard + ea50 ce19 mCOM10-L1900 15d2 Raven/Raven2 PCIe Dummy Host Bridge 15d3 Raven/Raven2 PCIe GPP Bridge [6:0] 15d4 FireFlight USB 3.1 15d5 FireFlight USB 3.1 15da Raven/Raven2 PCIe Dummy Host Bridge 15db Raven/Raven2 Internal PCIe GPP Bridge 0 to Bus A + ea50 ce19 mCOM10-L1900 15dc Raven/Raven2 Internal PCIe GPP Bridge 0 to Bus B + ea50 ce19 mCOM10-L1900 15de Raven/Raven2/FireFlight HD Audio Controller 15df Family 17h (Models 10h-1fh) Platform Security Processor + 1043 876b PRIME Motherboard 17aa 5124 ThinkPad E595 + ea50 ce19 mCOM10-L1900 15e0 Raven USB 3.1 103c 8615 Pavilion Laptop 15-cw1xxx + 1043 876b PRIME Motherboard 17aa 5124 ThinkPad E595 + ea50 ce19 mCOM10-L1900 15e1 Raven USB 3.1 103c 8615 Pavilion Laptop 15-cw1xxx + 1043 876b PRIME Motherboard 17aa 5124 ThinkPad E595 + ea50 ce19 mCOM10-L1900 15e2 Raven/Raven2/FireFlight/Renoir Audio Processor 17aa 5124 ThinkPad E595 15e3 Family 17h (Models 10h-1fh) HD Audio Controller 103c 8615 Pavilion Laptop 15-cw1xxx + 1043 86c7 PRIME B450M-A Motherboard 17aa 5124 ThinkPad E595 15e4 Raven/Raven2/Renoir Sensor Fusion Hub 15e5 Raven2 USB 3.1 @@ -4832,6 +4938,8 @@ 1642 Renoir WLAN 1643 Renoir BT 1644 Renoir I2S + 1648 VanGogh Root Complex + 1649 VanGogh PSP/CCP 1700 Family 12h/14h Processor Function 0 1701 Family 12h/14h Processor Function 1 1702 Family 12h/14h Processor Function 2 @@ -4872,7 +4980,8 @@ 4c53 1030 PC5 mainboard 4c53 1040 CL7 mainboard 4c53 1060 PC7 mainboard - 2001 79c978 [HomePNA] +# Via AMD's own technical reference on their Am79C978 NICs; https://www.amd.com/system/files/TechDocs/22206.pdf + 2001 Am79C978 PCnet Home (HomePNA) 1/10 PCI Ethernet Adapter [Am79C971 PHY] 1092 0a78 Multimedia Home Network Adapter 1668 0299 ActionLink Home Network Adapter 2003 Am 1771 MBW [Alchemy] @@ -4891,6 +5000,8 @@ 2096 CS5536 [Geode companion] UDC 2097 CS5536 [Geode companion] UOC 209a CS5536 [Geode companion] IDE + 2625 Am79C973 [Lance/PCI PCNet/32] + 2627 Am79C975 [Lance/PCI PCNet/32] 3000 ELanSC520 Microcontroller 43a0 Hudson PCI to PCI bridge (PCIE port 0) 43a1 Hudson PCI to PCI bridge (PCIE port 1) @@ -4973,6 +5084,7 @@ 7801 FCH SATA Controller [AHCI mode] 103c 168b ProBook 4535s Notebook 103c 194e ProBook 455 G1 Notebook + 1043 8623 AM1I-A Motherboard 17aa 3988 Z50-75 1849 7801 QC5000-ITX/PH 7802 FCH SATA Controller [RAID mode] @@ -4984,11 +5096,13 @@ 7807 FCH USB OHCI Controller 103c 194e ProBook 455 G1 Notebook 103c 1985 Pavilion 17-e163sg Notebook PC + 1043 8623 AM1I-A Motherboard 17aa 3988 Z50-75 1849 7807 QC5000-ITX/PH 7808 FCH USB EHCI Controller 103c 194e ProBook 455 G1 Notebook 103c 1985 Pavilion 17-e163sg Notebook PC + 1043 8623 AM1I-A Motherboard 17aa 3988 Z50-75 1849 7808 QC5000-ITX/PH 7809 FCH USB OHCI Controller @@ -4998,6 +5112,7 @@ 780b FCH SMBus Controller 103c 194e ProBook 455 G1 Notebook 103c 1985 Pavilion 17-e163sg Notebook PC + 1043 8623 AM1I-A Motherboard 17aa 3988 Z50-75 1849 780b QC5000-ITX/PH 780c FCH IDE Controller @@ -5005,11 +5120,13 @@ 103c 194e ProBook 455 G1 Notebook 103c 1985 Pavilion 17-e163sg Notebook PC 1043 8444 F2A85-M Series + 1043 8576 AM1I-A Motherboard 17aa 3988 Z50-75 1849 8892 QC5000-ITX/PH 780e FCH LPC Bridge 103c 194e ProBook 455 G1 Notebook 103c 1985 Pavilion 17-e163sg Notebook PC + 1043 8623 AM1I-A Motherboard 17aa 3988 Z50-75 1849 780e QC5000-ITX/PH 780f FCH PCI Bridge @@ -5018,12 +5135,15 @@ 7814 FCH USB XHCI Controller 103c 194e ProBook 455 G1 Notebook 103c 1985 Pavilion 17-e163sg Notebook PC + 1043 8623 AM1I-A Motherboard 17aa 3988 Z50-75 1849 7814 QC5000-ITX/PH 7900 FCH SATA Controller [IDE mode] 7901 FCH SATA Controller [AHCI mode] 103c 8615 Pavilion Laptop 15-cw1xxx + 1043 876b PRIME Motherboard 1462 7c37 X570-A PRO motherboard + ea50 ce19 mCOM10-L1900 7902 FCH SATA Controller [RAID mode] 7903 FCH SATA Controller [RAID mode] 7904 FCH SATA Controller [AHCI mode] @@ -5031,12 +5151,16 @@ 7908 FCH USB EHCI Controller 790b FCH SMBus Controller 103c 8615 Pavilion Laptop 15-cw1xxx + 1043 876b PRIME Motherboard 1462 7c37 X570-A PRO motherboard 17aa 5124 ThinkPad E595 + ea50 ce19 mCOM10-L1900 790e FCH LPC Bridge 103c 8615 Pavilion Laptop 15-cw1xxx + 1043 876b PRIME B450M-A Motherboard 1462 7c37 X570-A PRO motherboard 17aa 5124 ThinkPad E595 + ea50 ce19 mCOM10-L1900 790f FCH PCI Bridge 7914 FCH USB XHCI Controller 9600 RS780 Host Bridge @@ -5621,6 +5745,7 @@ 1931 000a GlobeTrotter Fusion Quad Lite (PPP data) 1931 000b GlobeTrotter Fusion Quad Lite (GSM data) 807d 0035 PCI-USB2 (OHCI subsystem) + 8086 4d44 D850EMV2 motherboard 003b PCI to C-bus Bridge 003e NAPCCARD Cardbus Controller 0046 PowerVR PCX2 [midas] @@ -5651,6 +5776,7 @@ 14c2 0205 PTI-205N USB 2.0 Host Controller 1799 0002 Root Hub 807d 1043 PCI-USB2 (EHCI subsystem) + 8086 4d44 D850EMV2 motherboard 00e7 uPD72873 [Firewarden] IEEE1394a OHCI 1.1 Link/2-port PHY Controller 00f2 uPD72874 [Firewarden] IEEE1394a OHCI 1.1 Link/3-port PHY Controller 00f3 uPD6113x Multimedia Decoder/Processor [EMMA2] @@ -6825,6 +6951,7 @@ 0003 Control Video 0004 PlanB Video-In 0007 O'Hare I/O + 000b Apple Camera 000c DOS on Mac 000e Hydra Mac I/O 0010 Heathrow Mac I/O @@ -6995,6 +7122,7 @@ 103c 17e8 SN1000Q 16Gb Dual Port Fibre Channel Adapter 103c 1939 QMH2672 16Gb Dual Port Fibre Channel Adapter 103c 8002 3830C 16G Fibre Channel Host Bus Adapter + 1077 0241 QLE2670 16Gb Single Port Fibre Channel Adapter 2071 ISP2714-based 16/32Gb Fibre Channel to PCIe Adapter 1077 0283 QLE2764 Quad Port 32Gb Fibre Channel to PCIe Adapter 1077 029e QLE2694 Quad Port 16Gb Fibre Channel to PCIe Adapter @@ -7003,6 +7131,9 @@ 2081 ISP2814-based 64/32G Fibre Channel to PCIe Controller 1077 02e1 QLE2874 Quad Port 64GFC PCIe Gen4 x16 Adapter 1077 02e3 QLE2774 Quad Port 32GFC PCIe Gen4 x16 Adapter + 2089 ISP2854-based 64/32G Fibre Channel to PCIe Controller with StorCryption + 1077 02e8 QLE2884 Quad Port 64GFC PCIe Gen4 x16 Adapter with StorCryption + 1077 02ea QLE2784 Quad Port 32GFC PCIe Gen4 x16 Adapter with StorCryption 2100 QLA2100 64-bit Fibre Channel Adapter 1077 0001 QLA2100 64-bit Fibre Channel Adapter 2200 QLA2200 64-bit Fibre Channel Adapter @@ -7023,6 +7154,7 @@ 1590 0203 StoreFabric SN1600Q 32Gb Single Port Fibre Channel Host Bus Adapter 1590 0204 StoreFabric SN1600Q 32Gb Dual Port Fibre Channel Host Bus Adapter 1590 022d 5830C 32Gb Dual Port Fibre Channel Adapter + 193d 100d NIC-FC680i-Mb-2x16G 2281 ISP2812-based 64/32G Fibre Channel to PCIe Controller 1077 02e2 QLE2872 Dual Port 64GFC PCIe Gen4 x8 Adapter 1077 02e4 QLE2772 Dual Port 32GFC PCIe Gen4 x8 Adapter @@ -7032,6 +7164,11 @@ 1077 02f3 QLogic 2x32Gb QLE2772 FC HBA 1590 02d3 SN1610Q - 1P Enhanced 32GFC Single Port Fibre Channel Host Bus Adapter 1590 02d4 SN1610Q – 2P Enhanced 32GFC Dual Port Fibre Channel Host Bus Adapter + 2289 ISP2852-based 64/32G Fibre Channel to PCIe Controller with StorCryption + 1077 02e9 QLE2882 Dual Port 64GFC PCIe Gen4 x8 Adapter with StorCryption + 1077 02eb QLE2782 Dual Port 32GFC PCIe Gen4 x8 Adapter with StorCryption + 1077 02ef QLE2880 Single Port 64GFC PCIe Gen4 x8 Adapter with StorCryption + 1077 02f1 QLE2780 Single Port 32GFC PCIe Gen4 x8 Adapter with StorCryption 2300 QLA2300 64-bit Fibre Channel Adapter 2312 ISP2312-based 2Gb Fibre Channel to PCI-X HBA 103c 0131 2Gb Fibre Channel - Single port [A7538A] @@ -7042,7 +7179,8 @@ 103c 12dd 4Gb Fibre Channel [AB429A] 2432 ISP2432-based 4Gb Fibre Channel to PCI Express HBA 103c 7040 FC1142SR 4Gb 1-port PCIe Fibre Channel Host Bus Adapter [HPAE311A] - 1077 0137 QLE2460 4 GB PCI-X Host-Bus-Adapter + 1077 0137 QLE2460 Single-Port 4Gbps FC-to-PCI-X/PCIe Host Bus Adapter + 1077 0138 QLE2462 Dual-Port 4Gbps FC-to-PCI-X/PCIe Host Bus Adapter 2532 ISP2532-based 8Gb Fibre Channel to PCI Express HBA 1014 041e FC EN0Y/EN12 PCIe2 LP 8 Gb 4-port Fibre Channel Adapter for POWER 103c 3262 StorageWorks 81Q @@ -7124,6 +7262,8 @@ 1590 021f 10/25GbE 2P QL41262HMCU-HP Adapter 1590 0220 10/25GbE 2P QL41122HLRJ-HP Adapter 1590 02bd 10Gb 2P 524SFP+ NIC + 193d 1030 NIC-ETH681i-Mb-2x25G + 193d 1032 NIC-ETH682i-Mb-2x25G 8080 FastLinQ QL41000 Series 10/25/40/50GbE Controller (FCoE) 1077 0001 10GE 2P QL41162HxRJ-DE Adapter 1077 0002 10GE 2P QL41112HxCU-DE Adapter @@ -8562,6 +8702,7 @@ 10b5 2905 Alpermann+Velte PCI TS: Time Synchronisation Board 10b5 3196 Goramo PLX200SYN sync serial card 10b5 9050 PCI-I04 PCI Passive PC/CAN Interface + 12fe 0001 CAN-PCI/331 CAN bus controller 1369 8901 PCX11+ PCI 1369 8f01 VX222 1369 9401 PCX924 @@ -9469,7 +9610,7 @@ 1682 211c GeForce 6600 256MB DDR DUAL DVI TV 00f3 NV43 [GeForce 6200] 00f4 NV43 [GeForce 6600 LE] - 00f5 G71 [GeForce 7800 GS AGP] + 00f5 G70/G71 [GeForce 7800 GS AGP] 00f6 NV43 [GeForce 6800 GS/XT] 1682 217e XFX GeForce 6800 XTreme 256MB DDR3 AGP 00f8 NV45GL [Quadro FX 3400/4400] @@ -9970,7 +10111,7 @@ 0331 NV35 [GeForce FX 5900] 1043 8145 V9950GE 0332 NV35 [GeForce FX 5900XT] - 0333 NV38 [GeForce FX 5950 Ultra] + 0333 NV38 [GeForce FX 5950 Ultra / PCX 5950] 0334 NV35 [GeForce FX 5900ZT] 1462 9373 FX5900ZT-VTD128 (MS-8937) 0338 NV35GL [Quadro FX 3000] @@ -10732,6 +10873,7 @@ 0a21 GT216M [GeForce GT 330M] 0a22 GT216 [GeForce 315] 0a23 GT216 [GeForce 210] + 0a24 GT216 [GeForce 405] 0a26 GT216 [GeForce 405] 0a27 GT216 [GeForce 405] 0a28 GT216M [GeForce GT 230M] @@ -11581,6 +11723,7 @@ 1184 GK104 [GeForce GTX 770] 1185 GK104 [GeForce GTX 660 OEM] 10de 106f GK104 [GeForce GTX 760 OEM] + 1186 GK104 [GeForce GTX 660 Ti] 1187 GK104 [GeForce GTX 760] 1188 GK104 [GeForce GTX 690] 1189 GK104 [GeForce GTX 670] @@ -11705,6 +11848,7 @@ 128a GK208B 128b GK208B [GeForce GT 710] 1043 85f7 GT710-SL-1GD5 + 1043 8770 GT710-4H-SL-2GD5 128c GK208B 1290 GK208M [GeForce GT 730M] 103c 2afa GeForce GT 730A @@ -11865,6 +12009,7 @@ 1aeb TU116 High Definition Audio Controller 1aec TU116 USB 3.1 Host Controller 1aed TU116 USB Type-C UCSI Controller + 1aef GA102 High Definition Audio Controller 1b00 GP102 [TITAN X] 1b01 GP102 [GeForce GTX 1080 Ti 10GB] 1b02 GP102 [TITAN Xp] @@ -11873,6 +12018,7 @@ 1b07 GP102 [P102-100] 1b30 GP102GL [Quadro P6000] 1b38 GP102GL [Tesla P40] + 1b39 GP102GL [Tesla P10] 1b70 GP102GL 1b78 GP102GL 1b80 GP104 [GeForce GTX 1080] @@ -11927,8 +12073,8 @@ 1c2d GP106M 1c30 GP106GL [Quadro P2000] 1c31 GP106GL [Quadro P2200] - 1c35 GP106 - 1c36 GP106 + 1c35 GP106M [Quadro P2000 Mobile] + 1c36 GP106 [P106M] 1c60 GP106BM [GeForce GTX 1060 Mobile 6GB] 103c 8390 GeForce GTX 1060 Max-Q 6GB 1c61 GP106BM [GeForce GTX 1050 Ti Mobile] @@ -12001,6 +12147,7 @@ 1e04 TU102 [GeForce RTX 2080 Ti] 1e07 TU102 [GeForce RTX 2080 Ti Rev. A] 1462 3715 RTX 2080 Ti GAMING X TRIO + 1e09 TU102 [CMP 50HX] 1e2d TU102 [GeForce RTX 2080 Ti Engineering Sample] 1e2e TU102 [GeForce RTX 2080 Ti 12GB Engineering Sample] 1e30 TU102GL [Quadro RTX 6000/8000] @@ -12049,6 +12196,7 @@ 1f08 TU106 [GeForce RTX 2060 Rev. A] 1f09 TU106 [GeForce GTX 1660 SUPER] 1f0a TU106 [GeForce GTX 1650] + 1f0b TU106 [CMP 40HX] 1f10 TU106M [GeForce RTX 2070 Mobile] 1f11 TU106M [GeForce RTX 2060 Mobile] 1f12 TU106M [GeForce RTX 2060 Max-Q] @@ -12074,14 +12222,23 @@ 1f98 TU117M [GeForce MX450] 1f99 TU117M 1f9c TU117M [GeForce MX450] + 1f9d TU117M [GeForce GTX 1650 Mobile / Max-Q] 1fae TU117GL + 1fb0 TU117GLM [Quadro T1000 Mobile] + 1fb1 TU117GLM [Quadro T600 Mobile] + 1fb2 TU117GLM [Quadro T400 Mobile] 1fb8 TU117GLM [Quadro T2000 Mobile / Max-Q] 1fb9 TU117GLM [Quadro T1000 Mobile] + 1fbb TU117GLM [Quadro T500 Mobile] 1fbf TU117GL 1fd9 TU117BM [GeForce GTX 1650 Mobile Refresh] + 1fdd TU117BM [GeForce GTX 1650 Mobile Refresh] 1ff9 TU117GLM [Quadro T1000 Mobile] 20b0 GA100 [A100 SXM4 40GB] 20b1 GA100 [A100 PCIe 40GB] + 20b2 GA100 [A100 SXM4 80GB] + 20b6 GA100GL [PG506-232] + 20b7 GA100GL [A30 PCIe] 20be GA100 [GRID A100A] 20bf GA100 [GRID A100B] 20f1 GA100 [A100 PCIe 40GB] @@ -12090,34 +12247,73 @@ 2184 TU116 [GeForce GTX 1660] 2187 TU116 [GeForce GTX 1650 SUPER] 2188 TU116 [GeForce GTX 1650] + 2189 TU116 [CMP 30HX] 2191 TU116M [GeForce GTX 1660 Ti Mobile] 2192 TU116M [GeForce GTX 1650 Ti Mobile] 21ae TU116GL 21bf TU116GL + 21c2 TU116 21c4 TU116 [GeForce GTX 1660 SUPER] 21d1 TU116BM [GeForce GTX 1660 Ti Mobile] + 2200 GA102 2204 GA102 [GeForce RTX 3090] - 2206 GA102 [GeForce RTX 3080 10GB / 20GB] + 2205 GA102 [GeForce RTX 3080 20GB] + 2206 GA102 [GeForce RTX 3080] + 10de 1467 GA102 [GeForce RTX 3080] 10de 146d GA102 [GeForce RTX 3080 20GB] 1462 3892 RTX 3080 10GB GAMING X TRIO + 2208 GA102 [GeForce RTX 3080 Ti] + 220d GA102 [GeForce RTX 3080 Lite Hash Rate] 222b GA102 [GeForce RTX 3090 Engineering Sample] 222f GA102 [GeForce RTX 3080 11GB / 12GB Engineering Sample] 2230 GA102GL [RTX A6000] + 2231 GA102GL [RTX A5000] + 2235 GA102GL [A40] + 2236 GA102GL [A10] + 2237 GA102GL [A10G] 223f GA102GL + 228b GA104 High Definition Audio Controller + 2302 GA103 + 2321 GA103 2482 GA104 [GeForce RTX 3070 Ti] - 2484 GA104 [GeForce RTX 3070 8GB / 16GB] + 2483 GA104 + 2484 GA104 [GeForce RTX 3070] 10de 146b GA104 [GeForce RTX 3070] 10de 14ae GA104 [GeForce RTX 3070 16GB] 2486 GA104 [GeForce RTX 3060 Ti] - 249c GA104M [GeForce RTX 3070 Mobile / Max-Q] + 249c GA104M [GeForce RTX 3080 Mobile / Max-Q 8GB/16GB] 249d GA104M [GeForce RTX 3070 Mobile / Max-Q] + 249f GA104M 24ac GA104 [GeForce RTX 30x0 Engineering Sample] 24ad GA104 [GeForce RTX 3060 Engineering Sample] 24af GA104 [GeForce RTX 3070 Engineering Sample] + 24b0 GA104GL [RTX A4000] + 24b6 GA104GLM [RTX A5000 Mobile] + 24b7 GA104GLM [RTX A4000 Mobile] + 24b8 GA104GLM [RTX A3000 Mobile] 24bf GA104 [GeForce RTX 3070 Engineering Sample] - 24dc GA104 [GeForce RTX 3070 16GB Engineering Sample] + 24dc GA104M [GeForce RTX 3080 Mobile / Max-Q 8GB/16GB] + 24dd GA104M [GeForce RTX 3070 Mobile / Max-Q] + 2501 GA106 [GeForce RTX 3060] + 2503 GA106 [GeForce RTX 3060] + 2504 GA106 [GeForce RTX 3060 Lite Hash Rate] + 2505 GA106 + 2520 GA106M [GeForce RTX 3060 Mobile / Max-Q] + 2523 GA106M [GeForce RTX 3050 Ti Mobile / Max-Q] 252f GA106 [GeForce RTX 3060 Engineering Sample] + 2560 GA106M [GeForce RTX 3060 Mobile / Max-Q] + 2563 GA106M [GeForce RTX 3050 Ti Mobile / Max-Q] + 2583 GA107 [GeForce RTX 3050] + 25a0 GA107M [GeForce RTX 3050 Ti Mobile] + 25a2 GA107M [GeForce RTX 3050 Mobile] + 25a4 GA107 + 25a5 GA107M [GeForce RTX 3050 Mobile] 25af GA107 [GeForce RTX 3050 Engineering Sample] + 25b5 GA107GLM [RTX A4 Mobile] + 25b8 GA107GLM [RTX A2000 Mobile] + 25e0 GA107BM [GeForce RTX 3050 Ti Mobile] + 25e2 GA107BM [GeForce RTX 3050 Mobile] + 25e5 GA107BM [GeForce RTX 3050 Mobile] 10df Emulex Corporation 0720 OneConnect NIC (Skyhawk) 103c 1934 FlexFabric 20Gb 2-port 650M Adapter @@ -12178,6 +12374,7 @@ 1590 0213 StoreFabric SN1200E 1-Port 16Gb Fibre Channel Adapter 1590 0214 StoreFabric SN1200E 2-Port 16Gb Fibre Channel Adapter 1590 022e Synergy 5330C 2-Port 32Gb Fibre Channel Mezz Card + 193d 1060 NIC-FC730i-Mb-2P f011 Saturn: LightPulse Fibre Channel Host Adapter f015 Saturn: LightPulse Fibre Channel Host Adapter f085 LP850 Fibre Channel Host Adapter @@ -12212,6 +12409,7 @@ 10df f419 LPe35002-M2-L 2-Port 32Gb PCIe Fibre Channel Adapter 1590 02d5 StoreFabric SN1610E 1-Port 32Gb Fibre Channel Adapter 1590 02d6 StoreFabric SN1610E 2-Port 32Gb Fibre Channel Adapter + f500 LPe37000/LPe38000 Series 32Gb/64Gb Fibre Channel Adapter f700 LP7000 Fibre Channel Host Adapter f701 LP7000 Fibre Channel Host Adapter Alternate ID (JX1:2-3, JX2:1-2) f800 LP8000 Fibre Channel Host Adapter @@ -12319,6 +12517,7 @@ 8111 Twist3 Frame Grabber 10ec Realtek Semiconductor Co., Ltd. 0139 RTL-8139/8139C/8139C+ Ethernet Controller + 3000 Killer E3000 2.5GbE Controller 5208 RTS5208 PCI Express Card Reader 5209 RTS5209 PCI Express Card Reader 5227 RTS5227 PCI Express Card Reader @@ -12341,6 +12540,7 @@ 1028 06d6 Latitude 7275 tablet 1028 06dc Latitude E7470 1028 06e4 XPS 15 9550 + 1028 06e6 Latitude 11 5175 2-in-1 17aa 224f ThinkPad X1 Carbon 5th Gen 5260 RTS5260 PCI Express Card Reader 5286 RTS5286 PCI Express Card Reader @@ -12349,6 +12549,7 @@ 5288 RTS5288 PCI Express Card Reader 5289 RTL8411 PCI Express Card Reader 1043 1457 K55A Laptop + 5762 RTS5763DL NVMe SSD Controller 8029 RTL-8029(AS) 10b8 2011 EZ-Card (SMC1208) 10ec 8029 RTL-8029(AS) @@ -12421,6 +12622,8 @@ 8e2e 7000 KF-230TX 8e2e 7100 KF-230TX/2 a0a0 0007 ALN-325C + 8161 RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller + 10ec 8168 TP-Link TG-3468 v4.0 Gigabit PCI Express Network Adapter 8167 RTL-8110SC/8169SC Gigabit Ethernet 105b 0e10 RTL-8110SC-GR on a N15235/A74MX mainboard 1458 e000 GA-MA69G-S3H Motherboard @@ -12432,6 +12635,7 @@ 1028 0283 Vostro 220 1028 04b2 Vostro 3350 1028 04da Vostro 3750 + 1028 05d7 Alienware X51 R2 1028 06f2 Latitude 3470 1028 06f3 Latitude 3570 1028 0869 Vostro 3470 @@ -12447,6 +12651,9 @@ 1043 83a3 M4A785/P7P55 Motherboard 1043 8432 P8P67 and other motherboards 1043 8505 P8 series motherboard + 1043 8554 H81M-C Motherboard + 1043 859e AM1I-A Motherboard + 1043 8677 PRIME B450M-A Motherboard 105b 0d7c D270S/D250S Motherboard 10ec 8168 RTL8111/8168 PCI Express Gigabit Ethernet controller 144d c652 RTL8168 on a NP300E5C series laptop @@ -12458,6 +12665,7 @@ 1462 7522 X58 Pro-E 1462 7c37 X570-A PRO motherboard 1775 11cc CC11/CL11 + 17aa 3098 ThinkCentre E73 17aa 3814 Z50-75 17aa 3823 Lenovo V130-15IGM Laptop - Type 81HL 17aa 5124 ThinkPad E595 @@ -12465,6 +12673,7 @@ 7470 3468 TG-3468 Gigabit PCI Express Network Adapter 8086 2055 NUC Kit DN2820FYKH 8086 d615 Desktop Board D510MO/D525MW + ea50 ce19 mCOM10-L1900 8169 RTL8169 PCI Gigabit Ethernet Controller 1025 0079 Aspire 5024WLMi 10bd 3202 EP-320G-TX1 32-bit PCI Gigabit Ethernet Adapter @@ -12481,6 +12690,14 @@ 16ec 011f USR997903 1734 1091 D2030-A1 a0a0 0449 AK86-L motherboard + 816a RTL8111xP UART #1 + ea50 ce19 mCOM10-L1900 + 816b RTL8111xP UART #2 + ea50 ce19 mCOM10-L1900 + 816c RTL8111xP IPMI interface + ea50 ce19 mCOM10-L1900 + 816d RTL811x EHCI host controller + ea50 ce19 mCOM10-L1900 8171 RTL8191SEvA Wireless LAN Controller 8172 RTL8191SEvB Wireless LAN Controller 8173 RTL8192SE Wireless LAN Controller @@ -12543,6 +12760,7 @@ 5005 Alveo U250 7038 FPGA Card XC7VX690T 17aa 402f FPGA XC7VX690T-3FFG1157E + 8019 Memory controller 8380 Ellips ProfiXpress Profibus Master 8381 Ellips Santos Frame Grabber d154 Copley Controls CAN card (PCI-CAN-02) @@ -12780,6 +12998,7 @@ 3220 RocketRAID 3220 3320 RocketRAID 3320 4310 RocketRaid 4310 + 7505 SSD7505 PCIe Gen4 x16 4-Port M.2 NVMe RAID Controller 1104 RasterOps Corp. 1105 Sigma Designs, Inc. 1105 REALmagic Xcard MPEG 1/2/3/4 DVD Decoder @@ -12827,12 +13046,12 @@ 0336 K8M890CE Host Bridge 0340 PT900 Host Bridge 0351 K8T890CF Host Bridge - 0353 VX800 Host Bridge + 0353 VX800/820-Series Chipset Host-Bridge Controller 0364 CN896/VN896/P4M900 Host Bridge 1043 81ce P5VD2-VM mothervoard 0391 VT8371 [KX133] 0409 VX855/VX875 Host Bridge: Host Control - 0410 VX900 Host Bridge: Host Control + 0410 VX900 Series Host Bridge: Host Control 0415 VT6415 PATA IDE Host Controller 1043 838f Motherboard 0501 VT8501 [Apollo MVP4] @@ -12859,7 +13078,7 @@ # probably all K7VT2/4*/6 1849 0571 K7VT series Motherboards 0576 VT82C576 3V [Apollo Master] - 0581 CX700/VX700 RAID Controller + 0581 CX700/VX700/VX800/820-Series Serial ATA RAID-Controller # Upgrade bios to get correct ID: 5324 instead of 0581 1106 0581 Wrong IDE ID 0585 VT82C585VP [Apollo VP1/VPX] @@ -12917,7 +13136,7 @@ 1296 P4M800 Host Bridge 1308 PT894 Host Bridge 1314 CN700/VN800/P4M800CE/Pro Host Bridge - 1324 CX700/VX700 Host Bridge + 1324 CX700/VX700-Series Error Reporting 1327 P4M890 Host Bridge 1336 K8M890CE Host Bridge 1340 PT900 Host Bridge @@ -12925,7 +13144,7 @@ 1353 VX800/VX820 Error Reporting 1364 CN896/VN896/P4M900 Host Bridge 1409 VX855/VX875 Error Reporting - 1410 VX900 Error Reporting + 1410 VX900 Series Error Reporting 1571 VT82C576M/VT82C586 1595 VT82C595/97 [Apollo VP2/97] 1732 VT1732 [Envy24 II] PCI Multi-Channel Audio Controller @@ -12942,7 +13161,7 @@ 2296 P4M800 Host Bridge 2308 PT894 Host Bridge 2314 CN700/VN800/P4M800CE/Pro Host Bridge - 2324 CX700/VX700 Host Bridge + 2324 CX700/VX700-Series Host Interface Control 2327 P4M890 Host Bridge 2336 K8M890CE Host Bridge 2340 PT900 Host Bridge @@ -12950,22 +13169,23 @@ 2353 VX800/VX820 Host Bus Control 2364 CN896/VN896/P4M900 Host Bridge 2409 VX855/VX875 Host Bus Control - 2410 VX900 CPU Bus Controller + 2410 VX900 Series CPU Bus Controller 287a VT8251 PCI to PCI Bridge 287b VT8251 Host Bridge 287c VT8251 PCIE Root Port 287d VT8251 PCIE Root Port 287e VT8237/8251 Ultra VLINK Controller 3022 CLE266 - 3038 VT82xx/62xx UHCI USB 1.1 Controller + 3038 VT82xx/62xx/VX700/8x0/900 UHCI USB 1.1 Controller 0925 1234 onboard UHCI USB 1.1 Controller 1019 0985 P6VXA Motherboard 1019 0a81 L7VTA v1.0 Motherboard (KT400-8235) 1043 8080 A7V333 motherboard - 1043 808c VT6202 USB2.0 4 port controller + 1043 808c VT62xx USB1.1 4 port controller 1043 80a1 A7V8X-X motherboard 1043 80ed A7V600/K8V-X/A8V Deluxe motherboard 1179 0001 Magnia Z310 + 1234 0925 MVP3 USB Controller 1458 5004 GA-7VAX Mainboard 1462 5901 KT6 Delta-FIS2R (MS-6590) 1462 7020 K8T NEO 2 motherboard @@ -13083,7 +13303,7 @@ 3101 VT8653 Host Bridge 3102 VT8662 Host Bridge 3103 VT8615 Host Bridge - 3104 USB 2.0 + 3104 USB 2.0 EHCI-Compliant Host-Controller 0925 1234 onboard EHCI USB 2.0 Controller 1019 0a81 L7VTA v1.0 Motherboard (KT400-8235) 1043 808c A7V8X motherboard @@ -13196,11 +13416,11 @@ 3269 KT880 Host Bridge 3282 K8T800Pro Host Bridge 3287 VT8251 PCI to ISA Bridge - 3288 VT8237A/VT8251 HDA Controller + 3288 VX900/VT8xxx High Definition Audio Controller 19da a179 ZBOX VD01 3290 K8M890 Host Bridge 3296 P4M800 Host Bridge - 3324 CX700/VX700 Host Bridge + 3324 CX700/VX700-Series DRAM Bus Control 3327 P4M890 Host Bridge 3336 K8M890CE Host Bridge 3337 VT8237A PCI to ISA Bridge @@ -13209,8 +13429,9 @@ 3344 CN700/P4M800 Pro/P4M800 CE/VN800 Graphics [S3 UniChrome Pro] 3349 VT8251 AHCI/SATA 4-Port Controller 3351 VT3351 Host Bridge - 3353 VX800 PCI to PCI Bridge + 3353 VX800/820 PCI to PCI Bridge 3364 CN896/VN896/P4M900 Host Bridge + 3365 VT630x IEEE 1394 Host Controller [Fire II/M] 3371 CN896/VN896/P4M900 [Chrome 9 HC] 3372 VT8237S PCI to ISA Bridge 337a VT8237A PCI to PCI Bridge @@ -13219,12 +13440,12 @@ 1043 8374 M5A88-V EVO 1043 8384 P8P67 Deluxe Motherboard 3409 VX855/VX875 DRAM Bus Control - 3410 VX900 DRAM Bus Control + 3410 VX900 Series DRAM Bus Control 19da a179 ZBOX nano VD01 - 3432 VL80x xHCI USB 3.0 Controller + 3432 VL800/801 xHCI USB 3.0 Controller 3456 VX11 Standard Host Bridge 345b VX11 Miscellaneous Bus - 3483 VL805 USB 3.0 Host Controller + 3483 VL805/806 xHCI USB 3.0 Controller 3a01 VX11 Graphics [Chrome 645/640] 4149 VIA VT6420 (ATA133) Controller 4204 K8M800 Host Bridge @@ -13239,7 +13460,7 @@ 4296 P4M800 Host Bridge 4308 PT894 Host Bridge 4314 CN700/VN800/P4M800CE/Pro Host Bridge - 4324 CX700/VX700 Host Bridge + 4324 CX700/VX700-Series Power Management and Testing Control 4327 P4M890 Host Bridge 4336 K8M890CE Host Bridge 4340 PT900 Host Bridge @@ -13247,7 +13468,7 @@ 4353 VX800/VX820 Power Management Control 4364 CN896/VN896/P4M900 Host Bridge 4409 VX855/VX875 Power Management Control - 4410 VX900 Power Management and Chip Testing Control + 4410 VX900 Series Power Management and Chip Testing Control 19da a179 ZBOX nano VD01 5030 VT82C596 ACPI [Apollo PRO] 5122 VX855/VX875 Chrome 9 HCM Integrated Graphics @@ -13256,7 +13477,7 @@ 5287 VT8251 Serial ATA Controller 5290 K8M890 I/O APIC Interrupt Controller 5308 PT894 I/O APIC Interrupt Controller - 5324 VX800 Serial ATA and EIDE Controller + 5324 CX700M2/VX700/VX800/820-Series Serial ATA & EIDE-Controller 5327 P4M890 I/O APIC Interrupt Controller 5336 K8M890CE I/O APIC Interrupt Controller 5340 PT900 I/O APIC Interrupt Controller @@ -13265,7 +13486,7 @@ 5364 CN896/VN896/P4M900 I/O APIC Interrupt Controller 5372 VT8237/8251 Serial ATA Controller 5409 VX855/VX875 APIC and Central Traffic Control - 5410 VX900 APIC and Central Traffic Control + 5410 VX900 Series APIC and Central Traffic Control 6100 VT85C100A [Rhine II] 6287 SATA RAID Controller 6290 K8M890CE Host Bridge @@ -13273,7 +13494,7 @@ 6353 VX800/VX820 Scratch Registers 6364 CN896/VN896/P4M900 Security Device 6409 VX855/VX875 Scratch Registers - 6410 VX900 Scratch Registers + 6410 VX900 Series Scratch Registers 19da a179 ZBOX nano VD01 7122 VX900 Graphics [Chrome9 HD] 7204 K8M800 Host Bridge @@ -13291,7 +13512,7 @@ 7296 P4M800 Host Bridge 7308 PT894 Host Bridge 7314 CN700/VN800/P4M800CE/Pro Host Bridge - 7324 CX700/VX700 Host Bridge + 7324 CX700/VX700-Series North-South Module Interface Control 7327 P4M890 Host Bridge 7336 K8M890CE Host Bridge 7340 PT900 Host Bridge @@ -13299,17 +13520,17 @@ 7353 VX800/VX820 North-South Module Interface Control 7364 CN896/VN896/P4M900 Host Bridge 7409 VX855/VX875 North-South Module Interface Control - 7410 VX900 North-South Module Interface Control + 7410 VX900 Series North-South Module Interface Control 19da a179 ZBOX nano VD01 8231 VT8231 [PCI-to-ISA Bridge] 8235 VT8235 ACPI 8305 VT8363/8365 [KT133/KM133 AGP] - 8324 CX700/VX700 PCI to ISA Bridge + 8324 CX700/VX700-Series Bus Control and Power Management 8353 VX800/VX820 Bus Control and Power Management 8391 VT8371 [KX133 AGP] 8400 MVP4 8409 VX855/VX875 Bus Control and Power Management - 8410 VX900 Bus Control and Power Management + 8410 VX900 Series Bus Control and Power Management 19da a179 ZBOX VD01 8500 KLE133/PLE133/PLE133T 8501 VT8501 [Apollo MVP4 AGP] @@ -13325,19 +13546,19 @@ 8a26 KL133/KL133A/KM133/KM133A [S3 ProSavage] 8d01 PN133/PN133T [S3 Twister] 8d04 KM266/P4M266/P4M266A/P4N266 [S3 ProSavageDDR] - 9001 VX900 Serial ATA Controller + 9001 VX900 Series Serial-ATA Controller 9082 Standard AHCI 1.0 SATA Controller 9140 HDMI Audio Device 9201 USB3.0 Controller - 9530 Secure Digital Memory Card Controller - 95d0 SDIO Host Controller + 9530 VX800/820/900 Series Secure Digital Memory Card Controller + 95d0 VX800/820/900 Series SDIO Host Controller a208 PT890 PCI to PCI Bridge Controller a238 K8T890 PCI to PCI Bridge Controller a327 P4M890 PCI to PCI Bridge Controller - a353 VX8xx South-North Module Interface Control + a353 VX8xx/900 Series South-North Module Interface Control a364 CN896/VN896/P4M900 PCI to PCI Bridge Controller - a409 VX855/VX875 USB Device Controller - a410 VX900 PCI Express Root Port 0 + a409 VX855/VX875/VX900 Series USB Device Controller + a410 VX900 Series PCI Express Root Port 0 b091 VT8633 [Apollo Pro266 AGP] b099 VT8366/A/7 [Apollo KT266/A/333 AGP] b101 VT8653 AGP Bridge @@ -13349,34 +13570,35 @@ b168 VT8235 PCI Bridge b188 VT8237/8251 PCI bridge [K8M890/K8T800/K8T890 South] 147b 1407 KV8-MAX3 motherboard - b198 VT8237/VX700 PCI Bridge + b198 VT8237/CX700/VX700-Series PCI to PCI Bridge b213 VPX/VPX2 I/O APIC Interrupt Controller b353 VX855/VX875/VX900 PCI to PCI Bridge - b410 VX900 PCI Express Root Port 1 + b410 VX900 Series PCI Express Root Port 1 b999 [K8T890 North / VT8237 South] PCI Bridge c208 PT890 PCI to PCI Bridge Controller c238 K8T890 PCI to PCI Bridge Controller c327 P4M890 PCI to PCI Bridge Controller c340 PT900 PCI to PCI Bridge Controller - c353 VX800/VX820 PCI Express Root Port + c353 VX800/820-Series PCI-Express Root (PCI-to-PCI Virtual Bridge) c364 CN896/VN896/P4M900 PCI to PCI Bridge Controller c409 VX855/VX875 EIDE Controller - c410 VX900 PCI Express Root Port 2 + c410 VX900 Series PCI Express Root Port 2 d104 VT8237R USB UDCI Controller d208 PT890 PCI to PCI Bridge Controller d213 VPX/VPX2 PCI to PCI Bridge Controller d238 K8T890 PCI to PCI Bridge Controller d340 PT900 PCI to PCI Bridge Controller - d410 VX900 PCI Express Root Port 3 + d410 VX900 Series PCI Express Root Port 3 e208 PT890 PCI to PCI Bridge Controller e238 K8T890 PCI to PCI Bridge Controller e340 PT900 PCI to PCI Bridge Controller - e353 VX800/VX820 PCI Express Root Port - e410 VX900 PCI Express Physical Layer Electrical Sub-block + e353 VX800/820-Series PCI-Express Root Port 0 + e410 VX900 Series PCI Express Physical Layer Electrical Sub-block f208 PT890 PCI to PCI Bridge Controller f238 K8T890 PCI to PCI Bridge Controller f340 PT900 PCI to PCI Bridge Controller - f353 VX800/VX820 PCI Express Root Port + f353 VX800/820-Series PCI-Express Root Port 1 + f410 VX900 Series PCI UART Port 0-3 1107 Stratus Computers 0576 VIA VT82C570MV [Apollo] (Wrong vendor ID!) 1108 Proteon, Inc. @@ -14011,7 +14233,7 @@ 0002 Dual PCI to RapidIO Bridge 000b POET Serial RapidIO Bridge 000d POET PSDMS Device -1135 Fuji Xerox Co Ltd +1135 FUJIFILM Business Innovation Corp. 0001 Printer controller 1136 Momentum Data Systems 0002 PCI-JTAG @@ -14484,6 +14706,7 @@ 1172 Altera Corporation 00a7 Stratix V 0530 Stratix IV + 646c KT-500/KT-521 board 1173 Adobe Systems, Inc 1174 Bridgeport Machines 1175 Mitron Computer Inc. @@ -14494,6 +14717,7 @@ 1179 Toshiba Corporation 0102 Extended IDE Controller 0103 EX-IDE Type-B + 010e PXP04 NVMe SSD 010f NVMe Controller 0110 NVMe SSD Controller Cx5 1028 1ffb Express Flash NVMe 960G (RI) U.2 (CD5) @@ -14505,7 +14729,9 @@ 1d49 4039 Thinksystem U.2 CM5 NVMe SSD 1d49 403a Thinksystem AIC CM5 NVMe SSD 0113 BG3 NVMe SSD Controller + 1179 0001 Toshiba KBG30ZMS128G 128GB NVMe SSD 0115 XG4 NVMe SSD Controller + 011a XG6 NVMe SSD Controller 0404 DVD Decoder card 0406 Tecra Video Capture device 0407 DVD Decoder card (Version 2) @@ -14865,6 +15091,7 @@ 11aa Actel # Nee Galileo Technology, Inc. 11ab Marvell Technology Group Ltd. + 0100 88F3700 [Armada 3700 Family] ARM SoC 0146 GT-64010/64010A System Controller 0f53 88E6318 Link Street network controller 11ab MV88SE614x SATA II PCI-E controller @@ -15081,6 +15308,8 @@ 6480 MV64460/64461/64462 System Controller 1775 c200 C2K CompactPCI single board computer 6485 MV64460/64461/64462 System Controller, Revision B + 6820 88F6820 [Armada 385] ARM SoC + 6828 88F6828 [Armada 388] ARM SoC 7042 88SX7042 PCI-e 4-port SATA-II 16b8 434b Tempo SATA E4P 7810 MV78100 [Discovery Innovation] ARM SoC @@ -15096,7 +15325,7 @@ 11ad 0003 LNE100TX 11ad f003 LNE100TX 11ad ffff LNE100TX - 1385 f004 FA310TX + 1385 f004 FA310/TX LAN 10/100 PCI Ethernet Adapter 2646 f002 KNE110TX EtheRx Fast Ethernet c115 LNE100TX [Linksys EtherFast 10/100] 11ad c001 LNE100TX [ver 2.0] @@ -15413,6 +15642,7 @@ 8073 PM8073 Tachyon SPCve 12G 16-port SAS/SATA controller 8531 PM8531 PFX 24xG3 Fanout PCIe Switches 8546 PM8546 B-FEIP PSX 96xG3 PCIe Storage Switch + 8562 PM8562 Switchtec PFX-L 32xG3 Fanout-Lite PCIe Gen3 Switch 11f9 I-Cube Inc 11fa Kasan Electronics Company, Ltd. 11fb Datel Inc @@ -15801,6 +16031,7 @@ a000 2000 Parallel Port a000 6000 SPI a000 7000 Local Bus + ea50 1c10 RXi2-BP 125c Aurora Technologies, Inc. 0101 Saturn 4520P 0640 Aries 16000P @@ -15932,6 +16163,7 @@ 0820 SM820 Lynx3D 0910 SM910 2262 SM2262/SM2262EN SSD Controller + 2263 SM2263EN/SM2263XT SSD Controller 1270 Olympus Optical Co., Ltd. 1271 GW Instruments 1272 Telematics International @@ -16149,9 +16381,9 @@ 1281 Yokogawa Electric Corporation 1282 Davicom Semiconductor, Inc. 6585 DM562P V90 Modem - 9009 Ethernet 100/10 MBit + 9009 DM9009 Ethernet Controller 9100 21x4x DEC-Tulip compatible 10/100 Ethernet - 9102 21x4x DEC-Tulip compatible 10/100 Ethernet + 9102 DM9102 Fast Ethernet Controller # Subsystem ID is main ID reveresed. 0291 8212 DM9102A (DM9102AE, SM9102AF) Ethernet 100/10 MBit 9132 Ethernet 100/10 MBit @@ -16169,6 +16401,7 @@ 8888 IT8888F/G PCI to ISA Bridge with SMB [Golden Gate] 8889 IT8889F PCI to ISA Bridge 8892 IT8892E PCIe to PCI Bridge + 8086 200d DH61CR motherboard 8893 IT8893E PCIe to PCI Bridge e886 IT8330G 1284 Sahara Networks, Inc. @@ -16399,6 +16632,7 @@ 2304 PI7C9X2G304 EL/SL PCIe2 3-Port/4-Lane Packet Switch 2404 PI7C9X2G404 EL/SL PCIe2 4-Port/4-Lane Packet Switch 2608 PI7C9X2G608GP PCIe2 6-Port/8-Lane Packet Switch + ea50 cc10 RXi2-BP 400a PI7C9X442SL PCI Express Bridge Port 400e PI7C9X442SL USB OHCI Controller 400f PI7C9X442SL USB EHCI Controller @@ -16409,6 +16643,7 @@ 8150 PCI to PCI Bridge 8152 PI7C8152A/PI7C8152B/PI7C8152BI PCI-to-PCI Bridge 8154 PI7C8154A/PI7C8154B/PI7C8154BI PCI-to-PCI Bridge + 8619 PI7C9X2G1616PR PCIe2 16-Port/16-Lane Packet Switch e110 PI7C9X110 PCI Express to PCI bridge 1775 11cc CC11/CL11 CompactPCI Bridge e111 PI7C9X111SL PCIe-to-PCI Reversible Bridge @@ -16443,12 +16678,13 @@ 12ea Zuken 12eb Aureal Semiconductor 0001 Vortex 1 + 0000 0300 Terasound A3D PCI 104d 8036 AU8820 Vortex Digital Audio Processor 1092 2000 Sonic Impact A3D 1092 2100 Sonic Impact A3D 1092 2110 Sonic Impact A3D 1092 2200 Sonic Impact A3D - 122d 1002 AU8820 Vortex Digital Audio Processor + 122d 1002 SC 338-A3D 12eb 0001 AU8820 Vortex Digital Audio Processor 5053 3355 Montego 50b2 1111 XLerate @@ -16736,12 +16972,14 @@ 134f Algo System Co Ltd 1350 Systec Co. Ltd 1351 Sonix Inc -# nee Thales Idatys -1353 Vierling Communication SAS +# nee Vierling Communication SAS, nee Thales Idatys +1353 dbeeSet Technology 0002 Proserver 0003 PCI-FUT 0004 PCI-S0 0005 PCI-FUT-S0 + 0006 OTDU-1U (FPGA Zynq-7000) + 0007 OTDU-EX 1354 Dwave System Inc 1355 Kratos Analytical Ltd 1356 The Logical Co @@ -17450,6 +17688,8 @@ 1414 Microsoft Corporation 0001 MN-120 (ADMtek Centaur-C based) 0002 MN-130 (ADMtek Centaur-P based) +# Virtual Video Card Device for Windows Remote Desktop (RDP) + 008c Basic Render Driver 5353 Hyper-V virtual VGA 5801 XMA Decoder (Xenon) 5802 SATA Controller - CdRom (Xenon) @@ -17489,9 +17729,50 @@ 9513 OX16PCI954 (Quad 16950 UART) function 1 (parallel port) 9521 OX16PCI952 (Dual 16950 UART) 9523 OX16PCI952 Integrated Parallel Port - c158 OXPCIe952 Dual 16C950 UART +# The OXPCIe952 PCI Express Bridge to Dual Serial & Parallel Port chip is a multifunction device that encodes five reset straps and 1:0 function bits in bits 6:0 of the device ID. Hence it consumes a whole 128-entry block, which is however sparsely populated as obviously disabled functions do not appear in the configuration space. + c100 OXPCIe952 Parallel Port + c101 OXPCIe952 Legacy 950 UART + c104 OXPCIe952 Parallel Port + c105 OXPCIe952 Legacy 950 UART + c106 OXPCIe952 GPIO + c108 OXPCIe952 Parallel Port + c109 OXPCIe952 Legacy 950 UART + c10c OXPCIe952 Parallel Port + c10d OXPCIe952 Legacy 950 UART + c10e OXPCIe952 GPIO + c110 OXPCIe952 Parallel Port + c114 OXPCIe952 Parallel Port + c118 OXPCIe952 Parallel Port + c11b OXPCIe952 Native 950 UART + c11c OXPCIe952 Parallel Port + c11e OXPCIe952 GPIO + c11f OXPCIe952 Native 950 UART + c120 OXPCIe952 Legacy 950 UART + c124 OXPCIe952 Legacy 950 UART + c126 OXPCIe952 GPIO + c128 OXPCIe952 Legacy 950 UART + c12c OXPCIe952 Legacy 950 UART + c12e OXPCIe952 GPIO + c134 OXPCIe952 GPIO + c138 OXPCIe952 Native 950 UART + c13c OXPCIe952 GPIO + c13d OXPCIe952 Native 950 UART + c140 OXPCIe952 Legacy 950 UART #1 + c141 OXPCIe952 Legacy 950 UART #2 + c144 OXPCIe952 Legacy 950 UART #1 + c145 OXPCIe952 Legacy 950 UART #2 + c146 OXPCIe952 GPIO + c148 OXPCIe952 Legacy 950 UART #1 + c149 OXPCIe952 Legacy 950 UART #2 + c14c OXPCIe952 Legacy 950 UART #1 + c14d OXPCIe952 Legacy 950 UART #2 + c14e OXPCIe952 GPIO + c154 OXPCIe952 GPIO + c158 OXPCIe952 Dual Native 950 UART e4bf c504 CP4-SCAT Wireless Technologies Carrier Board e4bf d551 DU1-MUSTANG Dual-Port RS-485 Interface + c15c OXPCIe952 GPIO + c15d OXPCIe952 Dual Native 950 UART c308 EX-44016 16-port serial 1416 Multiwave Innovation pte Ltd 1417 Convergenet Technologies Inc @@ -18249,9 +18530,12 @@ a544 Exynos 8890 PCIe Root Complex a800 XP941 PCIe SSD a802 NVMe SSD Controller SM951/PM951 - a804 NVMe SSD Controller SM961/PM961 + 144d a801 PM963 2.5" NVMe PCIe SSD + a804 NVMe SSD Controller SM961/PM961/SM963 + 144d a801 SM963 2.5" NVMe PCIe SSD a808 NVMe SSD Controller SM981/PM981/PM983 1d49 403b Thinksystem U.2 PM983 NVMe SSD + a80a NVMe SSD Controller PM9A1/PM9A3/980PRO a820 NVMe SSD Controller 171X 1028 1f95 Express Flash NVMe XS1715 SSD 400GB 1028 1f96 Express Flash NVMe XS1715 SSD 800GB @@ -18315,6 +18599,22 @@ 1028 2097 EMC PowerEdge Express Flash Ent NVMe AGN SED RI U.2 Gen4 1.92TB 1028 2098 EMC PowerEdge Express Flash Ent NVMe AGN SED RI U.2 Gen4 3.84TB 1028 2099 EMC PowerEdge Express Flash Ent NVMe AGN SED RI U.2 Gen4 7.68TB + 1028 2118 Ent NVMe v2 AGN FIPS MU U.2 1.6TB + 1028 2119 Ent NVMe v2 AGN MU U.2 1.6TB + 1028 2120 Ent NVMe v2 AGN FIPS MU U.2 3.2T + 1028 2121 Ent NVMe v2 AGN MU U.2 3.2TB + 1028 2122 Ent NVMe v2 AGN FIPS MU U.2 6.4TB + 1028 2123 Ent NVMe v2 AGN MU U.2 6.4TB + 1028 2124 Ent NVMe v2 AGN FIPS MU U.2 6.4TB + 1028 2125 Ent NVMe v2 AGN MU U.2 12.8TB + 1028 2126 Ent NVMe v2 AGN FIPS RI U.2 1.92TB + 1028 2127 Ent NVMe v2 AGN RI U.2 1.92TB + 1028 2128 Ent NVMe v2 AGN FIPS RI U.2 3.84TB + 1028 2129 Ent NVMe v2 AGN RI U.2 3.84TB + 1028 2130 Ent NVMe v2 AGN FIPS RI U.2 7.68TB + 1028 2131 Ent NVMe v2 AGN RI U.2 7.68TB + 1028 2132 Ent NVMe v2 AGN FIPS RI U.2 15.36TB + 1028 2133 Ent NVMe v2 AGN RI U.2 15.36TB ecec Exynos 8895 PCIe Root Complex 144e OLITEC 144f Askey Computer Corp. @@ -18326,6 +18626,7 @@ 1456 Advanced Hardware Architectures 1457 Nuera Communications Inc 1458 Gigabyte Technology Co., Ltd + 3483 USB 3.0 Controller (VIA VL80x-based xHCI Controller) 1459 DOOIN Electronics 145a Escalate Networks Inc 145b PRAIM SRL @@ -18342,6 +18643,8 @@ e836 M115S Hybrid Analog/DVB PAL/SECAM/NTSC Tuner f436 AVerTV Hybrid+FM 1462 Micro-Star International Co., Ltd. [MSI] +# VIA Driver-inf + 3483 MSI USB 3.0 (VIA VL80x-based xHCI USB Controller) aaf0 Radeon RX 580 Gaming X 8G 1463 Fast Corporation 1464 Interactive Circuits & Systems Ltd @@ -18391,6 +18694,7 @@ 148a OPTO 148b INNOMEDIALOGIC Inc. 148c Tul Corporation / PowerColor + 2391 Radeon RX 590 [Red Devil] 148d DIGICOM Systems, Inc. 1003 HCF 56k Data/Fax Modem 148e OSI Plus Corporation @@ -18492,9 +18796,11 @@ 103c 1240 Myrinet M2L-PCI64/2-3.0 LANai 7.4 (HP OEM) 14c2 DTK Computer 14c3 MEDIATEK Corp. + 7612 MT7612E 802.11acbgn PCI Express Wireless Network Adapter 7630 MT7630e 802.11bgn Wireless Network Adapter # MT7612E too? 7662 MT7662E 802.11ac PCI Express Wireless Network Adapter + 7915 MT7915E 802.11ax PCI Express Wireless Network Adapter 14c4 IWASAKI Information Systems Co Ltd 14c5 Automation Products AB 14c6 Data Race Inc @@ -18763,11 +19069,13 @@ 103c 0890 NC6000 laptop 103c 099c NX6110/NC6120 10cf 1279 LifeBook E8010D - 165f NetXtreme BCM5720 2-port Gigabit Ethernet PCIe + 165f NetXtreme BCM5720 Gigabit Ethernet PCIe 1028 04f7 PowerEdge R320 server 1028 08fd PowerEdge R6515/R7515 LOM 1028 08ff PowerEdge Rx5xx LOM Board 1028 0900 PowerEdge C6525 LOM +# Dell 5720 LOM + 1028 0917 PowerEdge C6520 LOM 103c 1786 NC332T Adapter 103c 193d NC332i Adapter 103c 2133 NC332i Adapter @@ -18853,6 +19161,7 @@ 103c 339d Ethernet 10Gb 2-port 530SFP+ Adapter 193d 1003 530F-B 193d 1006 530F-L + 193d 100f NIC-ETH522i-Mb-2x10G 1690 NetXtreme BCM57760 Gigabit Ethernet PCIe 1691 NetLink BCM57788 Gigabit Ethernet PCIe 1028 04aa XPS 8300 @@ -18879,6 +19188,7 @@ 16a0 NetLink BCM5785 Fast Ethernet 16a1 BCM57840 NetXtreme II 10 Gigabit Ethernet 1043 866e PEB-10G/57840-2T 10GBase-T Network Adapter + 193d 100b NIC-ETH521i-Mb-4x10G 16a2 BCM57840 NetXtreme II 10/20-Gigabit Ethernet 103c 1916 FlexFabric 20Gb 2-port 630FLB Adapter 103c 1917 FlexFabric 20Gb 2-port 630M Adapter @@ -18998,12 +19308,12 @@ 16d4 BCM57402 NetXtreme-E Ethernet Partition 16d5 BCM57407 NetXtreme-E 10GBase-T Ethernet Controller 16d6 BCM57412 NetXtreme-E 10Gb RDMA Ethernet Controller + 14e4 1202 BCM957412M4122C OCP 1x25G Type1 wRoCE 14e4 4120 NetXtreme E-Series Advanced Dual-port 10Gb SFP+ Ethernet Network Daughter Card 14e4 4126 NetXtreme-E Dual-port 10G SFP+ Ethernet OCP 3.0 Adapter (BCM957412N4120C) 152d 8b20 BCM57412 NetXtreme-E 10Gb RDMA Ethernet Controller 152d 8b22 BCM57412 NetXtreme-E 25Gb RDMA Ethernet Controller 16d7 BCM57414 NetXtreme-E 10Gb/25Gb RDMA Ethernet Controller - 14e4 1202 BCM957412M4122C OCP 1x25G Type1 wRoCE 14e4 1402 BCM957414A4142CC 10Gb/25Gb Ethernet PCIe 14e4 1404 BCM957414M4142C OCP 2x25G Type1 wRoCE 14e4 4140 NetXtreme E-Series Advanced Dual-port 25Gb SFP28 Network Daughter Card @@ -19065,16 +19375,30 @@ 1750 BCM57508 NetXtreme-E 10Gb/25Gb/40Gb/50Gb/100Gb/200Gb Ethernet 14e4 2100 NetXtreme-E Dual-port 100G QSFP56 Ethernet PCIe4.0 x16 Adapter (BCM957508-P2100G) 14e4 5208 NetXtreme-E Dual-port 100G QSFP56 Ethernet OCP 3.0 Adapter (BCM957508-N2100G) + 14e4 d124 NetXtreme-E P2100D BCM57508 2x100G QSFP PCIE + 14e4 df24 BCM57508 NetXtreme-E NGM2100D 2x100G KR Mezz Ethernet 1751 BCM57504 NetXtreme-E 10Gb/25Gb/40Gb/50Gb/100Gb/200Gb Ethernet + 14e4 5045 NetXtreme-E BCM57504 4x25G OCP3.0 + 14e4 5250 NetXtreme-E BCM57504 4x25G KR Mezz + 14e4 d142 NetXtreme-E P425D BCM57504 4x25G SFP28 PCIE 1752 BCM57502 NetXtreme-E 10Gb/25Gb/40Gb/50Gb Ethernet 1800 BCM57502 NetXtreme-E Ethernet Partition 1801 BCM57504 NetXtreme-E Ethernet Partition 1802 BCM57508 NetXtreme-E Ethernet Partition + 14e4 df24 BCM57508 NetXtreme-E NGM2100D 2x100G KR Mezz Ethernet Partition 1803 BCM57502 NetXtreme-E RDMA Partition 1804 BCM57504 NetXtreme-E RDMA Partition - 1805 BCM57508 NetXtreme-E RDMA Partition + 1805 BCM57508 NetXtreme-E NGM2100D 2x100G KR Mezz RDMA Partition + 14e4 df24 NetXtreme-E NGM2100D BCM57508 2x100G KR Mezz RDMA Partition 1806 BCM5750X NetXtreme-E Ethernet Virtual Function + 14e4 df24 BCM57508 NetXtreme-E NGM2100D 2x100G KR Mezz Ethernet Virtual Function 1807 BCM5750X NetXtreme-E RDMA Virtual Function + 14e4 df24 BCM57508 NetXtreme-E NGM2100D 2x100G KR Mezz RDMA Virtual Function + 1808 BCM5750X NetXtreme-E Ethernet Virtual Function + 14e4 df24 BCM57508 NetXtreme-E NGM2100D 2x100G KR Mezz Ethernet Virtual Function + 1809 BCM5750X NetXtreme-E RDMA Virtual Function + 14e4 df24 BCM57508 NetXtreme-E NGM2100D 2x100G KR Mezz RDMA Virtual Function + 2711 BCM2711 PCIe Bridge 3352 BCM3352 3360 BCM3360 4210 BCM4210 iLine10 HomePNA 2.0 @@ -19276,6 +19600,7 @@ 4410 BCM4413 iLine32 HomePNA 2.0 4411 BCM4413 V.90 56k modem 4412 BCM4412 10/100BaseT + 4415 BCM4359 802.11ac Dual-Band Wireless Network Controller 441f BCM4361 802.11ac Dual-Band Wireless Network Controller 4420 BCM4361 802.11ac 2.4 GHz Wireless Network Controller 4421 BCM4361 802.11ac 5 GHz Wireless Network Controller @@ -19546,6 +19871,7 @@ 0070 6902 WinTV HVR-4000-HD 0070 7801 WinTV HVR-1800 MCE 0070 9001 Nova-T DVB-T + 0070 9002 Nova-T DVB-T Model 909 0070 9200 Nova-SE2 DVB-S 0070 9202 Nova-S-Plus DVB-S 0070 9402 WinTV-HVR1100 DVB-T/Hybrid @@ -19836,6 +20162,7 @@ 9260 RCIM-II Real-Time Clock & Interrupt Module 9271 RCIM-III Real-Time Clock & Interrupt Module (PCIe) 9272 Pulse Width Modulator Card + 9273 RCIM-IV Real-Time Clock & Interrupt Module (PCIe) 9277 5 Volt Delta Sigma Converter Card 9278 10 Volt Delta Sigma Converter Card 9287 Analog Output Card @@ -20127,12 +20454,20 @@ 15b3 0021 MCX4421A-ACQN ConnectX-4 Lx EN OCP,2x25G 15b3 0025 ConnectX-4 Lx 25 GbE Dual Port SFP28 rNDC 193d 100a 620F-B +# NIC-ETH540F-LP-2P SFP+ Ethernet Card + 193d 1023 NIC-ETH540F-LP-2P + 193d 1031 NIC-ETH640i-Mb-2x25G +# NIC-ETH640F-3S-2P OCP3.0 Card + 193d 1083 NIC-ETH640F-3S-2P +# NIC-ETH540F-3S-2P OCP3.0 2x10G Card + 193d 1084 NIC-ETH540F-3S-2P 1016 MT27710 Family [ConnectX-4 Lx Virtual Function] 1017 MT27800 Family [ConnectX-5] 15b3 0006 ConnectX®-5 EN network interface card, 100GbE single-port QSFP28, PCIe3.0 x16, tall bracket; MCX515A-CCAT 15b3 0007 Mellanox ConnectX®-5 MCX516A-CCAT 15b3 0020 ConnectX®-5 EN network interface card, 10/25GbE dual-port SFP28, PCIe3.0 x8, tall bracket ; MCX512A-ACAT 15b3 0068 ConnectX®-5 EN network interface card for OCP2.0, Type 1, with host management, 25GbE dual-port SFP28, PCIe3.0 x8, no bracket Halogen free ; MCX542B-ACAN + 193d 1051 NIC-IB1040i-Mb-2P 1018 MT27800 Family [ConnectX-5 Virtual Function] 1019 MT28800 Family [ConnectX-5 Ex] 15b3 0008 ConnectX-5 Ex EN network interface card, 100GbE dual-port QSFP28, PCIe4.0 x16, tall bracket; MCX516A-CDAT @@ -20153,6 +20488,10 @@ 1979 MT2910 Family [ConnectX-7 PCIe Bridge] 197a MT43162 Family [BlueField-3 Lx SoC PCIe Bridge] 197b MT43244 Family [BlueField-3 SoC PCIe Bridge] + 2020 MT2892 Family [ConnectX-6 Dx Emulated PCIe Bridge] + 2021 MT42822 Family [BlueField-2 SoC Emulated PCIe Bridge] + 2023 MT2910 Family [ConnectX-7 Emulated PCIe Bridge] + 2024 MT43244 Family [BlueField-3 SoC Emulated PCIe Bridge] 4117 MT27712A0-FDCF-AE 1bd4 0039 SN10XMP2P25 1bd4 003a 25G SFP28 SP EO251FM9 Adapter @@ -20253,11 +20592,17 @@ 15b7 Sandisk Corp 2001 Skyhawk Series NVME SSD 5001 WD Black NVMe SSD - 5002 WD Black 2018 / PC SN720 NVMe SSD - 5003 WD Black 2018 / PC SN520 NVMe SSD - 5006 WD Black 2019/PC SN750 NVMe SSD + 5002 WD Black 2018/SN750 / PC SN720 NVMe SSD + 5003 WD Blue SN500 / PC SN520 NVMe SSD + 5004 PC SN520 NVMe SSD + 5005 PC SN520 NVMe SSD + 5006 WD Black SN750 / PC SN730 NVMe SSD 5009 WD Blue SN550 NVMe SSD 15b7 5009 WD Blue SN550 NVMe SSD + 500b PC SN530 NVMe SSD + 1414 500b Xbox Series X + 500d WD Ultrastar DC SN340 NVMe SSD + 5011 WD Black SN850 15b8 ADDI-DATA GmbH 1001 APCI1516 SP controller (16 digi outputs) 1003 APCI1032 SP controller (32 digi inputs w/ opto coupler) @@ -20563,6 +20908,9 @@ 2086 CryptoServer Se-Series Hardware Security Module c040 CryptoServer CSe-Series Hardware Security Module c051 CryptoServer Se-Series Gen2 Hardware Security Module + c070 u.trust Anchor Hardware Security Module cs7.2 Series + c071 u.trust Anchor Hardware Security Module cs7.3 Series + c072 u.trust Anchor Hardware Security Module cs7.3 Series Virtual Function # nee Atheros Communications, Inc. 168c Qualcomm Atheros 0007 AR5210 Wireless Network Adapter [AR5000 802.11a] @@ -21008,6 +21356,7 @@ ab08 21x4x DEC-Tulip compatible 10/100 Ethernet ab09 21x4x DEC-Tulip compatible 10/100 Ethernet 173b Altima (nee Broadcom) + 0001 AC1002 PCI Gigabit Ethernet controller 03e8 AC1000 Gigabit Ethernet 03e9 AC1001 Gigabit Ethernet 03ea AC9100 Gigabit Ethernet @@ -21055,6 +21404,10 @@ 0245 PCA7428CE_F1 - Analog Inputs isolated 0303 PCD-7006C Digital Input & Output PCI Card 0800 PCD8006 - PCIe digital Inputs/Outputs + 0840 PCA-8428 General-purpose multifunctional PCIe card with 8 analog inputs and 2 analog outputs + 0841 PCA-8429 General-purpose multifunctional PCIe card with 8 analog inputs + 0842 PCA-8438 General-purpose multifunctional PCIe card with 16 analog inputs and 2 analog outputs + 0843 PCA-8439 General-purpose multifunctional PCIe card with 16 analog inputs ff00 CTU CAN FD PCIe Card 1761 Pickering Interfaces Ltd 1771 InnoVISION Multimedia Ltd. @@ -21065,7 +21418,9 @@ 0004 Octeon (and older) FIPS 0005 Octeon CN38XX Network Processor Pass 3.x 0006 RoHS - 0010 Nitrox XL NPX + 0010 CN15XX/CN16XX [Nitrox PX] + 0011 CNN35XX [Nitrox III] + 0012 CNN55XX [Nitrox V] 0020 Octeon CN31XX Network Processor 0030 Octeon CN30XX Network Processor 0040 Octeon CN58XX Network Processor @@ -21232,8 +21587,10 @@ 8083 GL880 USB 1.1 UHCI controller 8084 GL880 USB 2.0 EHCI controller 9750 GL9750 SD Host Controller + 9755 GL9755 SD Host Controller e763 GL9763E eMMC Controller 17aa Lenovo + 3181 ThinkCentre M75n IoT 402b Intel 82599ES 10Gb 2-port Server Adapter X520-2 17ab Phillips Components 17af Hightech Information System Ltd. @@ -21256,13 +21613,15 @@ 1385 6d00 WPNT511 RangeMax 240 Mbps Wireless CardBus Adapter 1737 0054 WPC54GX4 v1 802.11g Wireless-G Notebook Adapter with SRX400 0105 MSM8998 PCIe Root Complex - 0108 SM8150/SA8195P PCIe Root Complex - 0300 MDM9x35 LTE Modem - 0301 MDM9640 PCIe Root Complex - 0302 MDM9x55 LTE Modem [Snapdragon X12] + 0108 SM8150 PCIe Root Complex + 0109 SA8195P PCIe Root Complex + 0300 MDM9x35 LTE Modem [Snapdragon X7] + 0301 MDM9x45 LTE Modem [Snapdragon X12] + 0302 MDM9x55 LTE Modem [Snapdragon X16] 0400 Datacenter Technologies QDF2432 PCI Express Root Port 0401 Datacenter Technologies QDF2400 PCI Express Root Port 1000 QCS405 PCIe Root Complex + 1101 QCA6390 Wireless Network Adapter [AX500-DBS (2x2)] 17cc NetChip Technology, Inc 2280 USB 2.0 17cd Cadence Design Systems, Inc. @@ -21743,6 +22102,8 @@ 0185 NT40A01 Network Adapter 01a5 NT200A01 Network Adapter 01c5 NT200A02 Network Adapter + 01d5 NT50B01 Network Adapter + 01e5 NT100A01 Network Adapter 18f6 NextIO 1000 [Nexsis] Switch Virtual P2P PCIe Bridge 1001 [Texsis] Switch Virtual P2P PCIe Bridge @@ -22137,6 +22498,7 @@ 0250 JMC250 PCI Express Gigabit Ethernet Controller 0260 JMC260 PCI Express Fast Ethernet Controller 0368 JMB368 IDE controller + 0585 JMB58x AHCI SATA controller 2360 JMB360 AHCI Controller 2361 JMB361 AHCI/IDE 1462 7235 P965 Neo MS-7235 mainboard @@ -22281,13 +22643,25 @@ 19e5 d303 Hi1822 SP522 (2*8G FC) 19e5 d306 Hi1822 SP523 (2*8G FC) 1710 iBMA Virtual Network Adapter - 1711 Hi1710 [iBMC Intelligent Management system chip w/VGA support] + 1711 Hi171x Series [iBMC Intelligent Management system chip w/VGA support] 1822 Hi1822 Family (4*25GE) 19e5 d129 Hi1822 SP570 (4*25GE) 19e5 d136 Hi1822 SP580 (4*25GE) 19e5 d141 Hi1822 SP583 (4*25GE) 19e5 d146 Hi1822 SP585 (4*25GE) + 3714 ES3000 V5 NVMe PCIe SSD + 19e5 5312 NVMe SSD ES3500P V5 2000GB 2.5" U.2 371e Hi1822 Family Virtual Bridge + 3754 ES3000 V6 NVMe PCIe SSD + 19e5 6122 NVMe SSD ES3600P V6 1600GB 2.5" U.2 + 19e5 6123 NVMe SSD ES3600P V6 3200GB 2.5" U.2 + 19e5 6124 NVMe SSD ES3600P V6 6400GB 2.5" U.2 + 19e5 6141 NVMe SSD ES3800P V6 800GB 2.5" U.2 + 19e5 6142 NVMe SSD ES3800P V6 1600GB 2.5" U.2 + 19e5 6212 NVMe SSD ES3500P V6 1920GB 2.5" U.2 + 19e5 6213 NVMe SSD ES3500P V6 3840GB 2.5" U.2 + 19e5 6214 NVMe SSD ES3500P V6 7680GB 2.5" U.2 + 19e5 6215 NVMe SSD ES3500P V6 15360GB 2.5" U.2 375e Hi1822 Family Virtual Function 379e Hi1822 Family Virtual Function a120 HiSilicon PCIe Root Port with Gen4 @@ -22382,13 +22756,17 @@ 1a4a SLAC National Accelerator Lab TID-AIR 1000 MCOR Power Supply Controller 1010 AMC EVR - Stockholm Timing Board - 1020 Cluster On Board (COB) Ethernet Switch + 1020 PGPCard - Gen3 Cameralink Interface + 1030 PGPCard - Gen3 GIGe Interface 2000 PGPCard - 4 Lane 2001 PGPCard - 8 Lane Plus EVR 2010 PCI-Express EVR -# PC-260-101-03 - 2020 PGP-GEN3 PCIe + 2011 PCI-Express EVR - TPR Version + 2020 PGP-GEN3 PCIe - 8 Lane Plus EVR 2030 AXI Stream DAQ PCIe card + 2040 EXO PCIe TEM + 3000 COB DTM V1 + 3001 COB DTM V2 1a51 Hectronic AB 1a55 Rohde & Schwarz DVS GmbH 0010 SDStationOEM @@ -22583,6 +22961,7 @@ 1052 Virtio input # virtio 1.0 1053 Virtio socket + 105a Virtio file system 1110 Inter-VM shared memory 1af4 1100 QEMU Virtual Machine 1af5 Netezza Corp. @@ -22595,10 +22974,12 @@ 1b13 Jaton Corp 1b1a K&F Computing Research Co. 0e70 GRAPE +1b1c Corsair 1b21 ASMedia Technology Inc. 0611 ASM1061 SATA IDE Controller 0612 ASM1062 Serial ATA Controller 1849 0612 Motherboard + 1040 ASM1040 XHCI Controller 1042 ASM1042 SuperSpeed USB Host Controller 1043 1059 K53SM motherboard 1043 8488 P8B WS Motherboard @@ -22606,11 +22987,14 @@ 1080 ASM1083/1085 PCIe to PCI Bridge 1849 1080 Motherboard 1142 ASM1042A USB 3.0 Host Controller - 1184 ASM1184e PCIe Switch Port - 1849 1184 ASM1184e PCIe Switch + 1182 ASM1182e 2-Port PCIe x1 Gen2 Packet Switch + 1b21 118f ASM1182e 2-Port PCIe x1 Gen2 Packet Switch + 1184 ASM1184e 4-Port PCIe x1 Gen2 Packet Switch + 1849 1184 ASM1184e 4-Port PCIe x1 Gen2 Packet Switch 1242 ASM1142 USB 3.1 Host Controller 1343 ASM1143 USB 3.1 Host Controller 2142 ASM2142 USB 3.1 Host Controller + 1462 7a72 H270 PC MATE 3242 ASM3242 USB 3.2 Host Controller 1b26 Netcope Technologies, a.s. c132 COMBO-LXT155 @@ -22642,6 +23026,7 @@ 000b QEMU PCIe Expander bridge 000c QEMU PCIe Root port 000d QEMU XHCI Host Controller + 0010 QEMU NVM Express Controller 0100 QXL paravirtual graphic card 1af4 1100 QEMU Virtual Machine 1b37 Signal Processing Devices Sweden AB @@ -22676,8 +23061,12 @@ 0601 NumaChip N601 0602 NumaChip N602 1b4b Marvell Technology Group Ltd. +# device 1b4b:0100 reports incorrect vendor id due to hw erratum (correct is 11ab) + 0100 88F3700 [Armada 3700 Family] ARM SoC 0640 88SE9128 SATA III 6Gb/s RAID Controller 2241 88NR2241 Non-Volatile memory controller + 1028 2112 BOSS-N1 Monolithic + 1028 2113 BOSS-N1 Modular 1d49 0306 ThinkSystem M.2 NVMe 2-Bay RAID Enablement Kit 1d49 0307 ThinkSystem 7mm NVMe 2-Bay Rear RAID Enablement Kit 9120 88SE9120 SATA 6Gb/s Controller @@ -22690,12 +23079,14 @@ 9172 88SE9172 SATA 6Gb/s Controller 9178 88SE9170 PCIe SATA 6Gb/s Controller 917a 88SE9172 SATA III 6Gb/s RAID Controller + 9182 88SE9182 PCIe 2.0 x2 2-port SATA 6 Gb/s Controller 9183 88SS9183 PCIe SSD Controller 9192 88SE9172 SATA III 6Gb/s RAID Controller 91a0 88SE912x SATA 6Gb/s Controller [IDE mode] 91a4 88SE912x IDE Controller + 9215 88SE9215 PCIe 2.0 x1 4-port SATA 6 Gb/s Controller 9220 88SE9220 PCIe 2.0 x2 2-port SATA 6 Gb/s RAID Controller - 9230 88SE9230 PCIe SATA 6Gb/s Controller + 9230 88SE9230 PCIe 2.0 x2 4-port SATA 6 Gb/s RAID Controller 1028 1fd6 BOSS-S1 Adapter 1028 1fdf BOSS-S1 Modular 1028 1fe2 BOSS-S1 Adapter @@ -22747,6 +23138,17 @@ 1b94 Signatec / Dynamic Signals Corp e400 PX14400 Dual Xilinx Virtex5 based Digitizer 1b96 Western Digital + 2200 Ultrastar DC SN630 NVMe SSD + 2201 Ultrastar DC SN630 NVMe SSD + 2300 Ultrastar DC SN840 NVMe SSD + 2400 Ultrastar DC SN640 NVMe SSD + 2401 Ultrastar DC SN640 NVMe SSD + 2402 Ultrastar DC SN640 NVMe SSD + 2404 Ultrastar DC SN640 NVMe SSD + 2500 Ultrastar DC SN840 NVMe SSD + 2600 Ultrastar DC ZN540 ZNS NVMe SSD + 3714 PC SN730 NVMe SSD + 3734 PC SN730 NVMe SSD 1b9a XAVi Technologies Corp. 1baa QNAP Systems, Inc. 1bad ReFLEX CES @@ -22804,6 +23206,8 @@ # Kersey 2.5" TCG 1bb1 0152 Nytro 5520 TCG 1bb1 01a1 Nytro XP7102 + 5012 FireCuda 510 SSD + 5016 FireCuda 520 SSD 1bb3 Bluecherry 4304 BC-04120A MPEG4 4 port video encoder / decoder 4309 BC-08240A MPEG4 4 port video encoder / decoder @@ -22818,6 +23222,16 @@ 1bbf Maxeler Technologies Ltd. 0003 MAX3 0004 MAX4 +1bc0 Innodisk Corporation + 1001 PCIe 3TG6-P Controller + 1002 PCIe 3TE6 Controller + 1160 PCIe 3TE2 Controller + 1321 PCIe 4TG-P Controller + 1322 PCIe 4TE Controller + 2262 PCIe 3TG3-P Controller + 5208 PCIe 3TE7 Controller + 5216 PCIe 3TE8 Controller + 5236 PCIe 4TG2-P Controller 1bcf NEC Corporation 001c Vector Engine 1.0 1bd0 Astronics Corporation @@ -22825,9 +23239,17 @@ 1002 PM1553-5 (PC/104+ MIL-STD-1553 Interface Card) 1004 AB3000 Series Rugged Computer 1005 PE1000 (Multi-Protocol PCIe/104 Interface Card) + 1006 webCS Wireless Aircraft Communications Server + 1007 AB3000 Series Rugged Computer (Series N) + 1008 ME1000 mPCIe Avionics Interface Card + 100a NG1 Series Avionics Converter 1101 OmniBus II PCIe Multi-Protocol Interface Card 1102 OmniBusBox II Multi-Protocol Interface Core 1103 OmniBus II cPCIe/PXIe Multi-Protocol Interface Card + 1200 NG3 Series Mil-Std-1553 Interface + 1201 NG3 Series ARINC 429 Interface + 1202 NG3 Series Avionics Discrete & Serial Interface + 1203 NG3 Series Avionics Discrete Interface 1bd4 Inspur Electronic Information Industry Co., Ltd. 0911 Arria10_PCIe_F10A1150 1bee IXXAT Automation GmbH @@ -22860,6 +23282,7 @@ 001b FD720 001c FD922 001d Vega + 001f FD940 1c28 Lite-On IT Corp. / Plextor 0122 M6e PCI Express SSD [Marvell 88SS9183] # previously Fiberblaze @@ -22880,6 +23303,8 @@ 00e1 PacketMover 2x100Gb [Tivoli] 00e3 PacketMover 2x10Gb [Tivoli] 00e5 PacketMover 2x10Gb [Corfu] + 1000 SmartNIC N5010 4x100Gb + 1001 SmartNIC N5011 w/2xE810 4x100Gb a000 FBC2CGG3 Capture 2x40Gb [Mango_02] a001 FBC2CGG3 Capture 2x100Gb [Mango_02] a003 FBC2CGG3 Capture 16x10Gb [Mango] @@ -22920,16 +23345,21 @@ 1284 PC300 NVMe Solid State Drive 512GB 1285 PC300 NVMe Solid State Drive 1TB 1327 BC501 NVMe Solid State Drive 512GB + 1339 BC511 1504 SC300 512GB M.2 2280 SATA Solid State Drive + 1527 PC401 NVMe Solid State Drive 256GB 243b PE6110 NVMe Solid State Drive 1c5c 0100 PE6110 NVMe Solid State Drive 2839 PE8000 Series NVMe Solid State Drive 1c5c 0100 PE8000 Series NVMe Solid State Drive 1c5f Beijing Memblaze Technology Co. Ltd. - 000d PBlaze5 520/526 AIC - 003d PBlaze5 920/926 AIC - 010d PBlaze5 520/526 U.2 - 013d PBlaze5 920/926 U.2 + 000d PBlaze5 520/526 + 003d PBlaze5 920/926 + 003e PBlaze6 6920 + 1c5f 0a31 NVMe SSD PBlaze6 6920 3840GB 2.5" U.2 + 1c5f 0a41 NVMe SSD PBlaze6 6920 7680GB 2.5" U.2 + 1c5f 4a31 NVMe SSD PBlaze6 6920 3200GB 2.5" U.2 + 1c5f 4a41 NVMe SSD PBlaze6 6920 6400GB 2.5" U.2 0540 PBlaze4 NVMe SSD 0550 PBlaze5 700/900 0555 PBlaze5 510/516 @@ -22946,6 +23376,10 @@ 0001 Hunter PCI Express 1c8c Mobiveil, Inc. 1cb0 Shannon Systems + 8266 Andalusia Series SSD + 1cb0 2021 Andalusia Series OCS U.2 SSD + 1cb0 2121 Andalusia Series ZNS U.2 SSD + 1cb0 2f21 Andalusia Series NVMe U.2 SSD d000 Venice NVMe SSD 1cb0 2010 Venice-E Series OCS U.2 1cb0 2011 Venice Series OCS U.2 @@ -22985,6 +23419,7 @@ 0305 Simulyzer-RT CompactPCI Serial CAN-1 card # supports 8x CAN (-FD) interfaces 0306 Simulyzer-RT CompactPCI Serial CAN-2 card (CAN-FD) + 0307 Simulyzer-RT CompactPCI Serial DIO-2 card [Xilinx Zynq UltraScale+] 1cd7 Nanjing Magewell Electronics Co., Ltd. 0010 Pro Capture Endpoint 0014 PRO CAPTURE AIO 4K PLUS @@ -23006,12 +23441,14 @@ 0009 ExaNIC X25 000a ExaNIC X100 000b ExaNIC V9P + 000c ExaNIC V9P-3 0100 ExaDISK FX1 1cf0 Akitio 1cf7 Subspace Dynamics 1d00 Pure Storage 1d05 Tongfang Hongkong Limited 1d0f Amazon.com, Inc. + 8061 NVMe EBS Controller cd01 NVMe SSD Controller ec20 Elastic Network Adapter (ENA) efa0 Elastic Fabric Adapter (EFA) @@ -23142,6 +23579,12 @@ 1014 AR-MAN-U280 [Manitou Class Accelerator for U280] 1015 AR-ARK-BBDEV-FX0 [Arkville 32B DPDK Baseband Device] 1016 AR-ARK-BBDEV-FX1 [Arkville 64B DPDK Baseband Device] + 1017 AR-ARK-FX1 [Arkville 64B Multi-Homed Primary Endpoint] + 1018 AR-ARK-FX1 [Arkville 64B Multi-Homed Secondary Endpoint] + 1019 AR-ARK-FX1 [Arkville 64B Multi-Homed Tertiary Endpoint] + 101a AR-ARK-SRIOV-FX0 [Arkville 32B Primary Physical Function] + 101b AR-ARK-SRIOV-FX1 [Arkville 64B Primary Physical Function] + 101c AR-ARK-SRIOV-VF [Arkville Virtual Function] 4200 A5PL-E1-10GETI [10 GbE Ethernet Traffic Instrument] 1d72 Xiaomi 1d78 DERA Storage @@ -23159,15 +23602,19 @@ 1d78 3105 D5457 U.2 3.2TB NVMe SSD 1d78 3107 D5457 U.2 6.4TB NVMe SSD 1d7c Aerotech, Inc. +# Fiber-optic HyperWire motion control bus from Aerotech. + 0001 HyperWire Adapter 1d82 NETINT Technologies Inc. 0101 Codensity D400 SSD 0102 Codensity D408 PCIe Gen4 NVMe SSD 0202 Codensity T408 Video Encoding-Decoding Accelerator -1d87 Fuzhou Rockchip Electronics Co., Ltd +# nee Fuzhou Rockchip Electronics Co., Ltd +1d87 Rockchip Electronics Co., Ltd 0100 RK3399 PCI Express Root Port 1808 RK1808 Neural Network Processor Card + 3566 RK3568 Remote Signal Processor 1d8f Enyx -1d93 YADRO (KNS Group) +1d93 YADRO 1d94 Chengdu Haiguang IC Design Co., Ltd. 1450 Root Complex 1451 I/O Memory Management Unit @@ -23202,15 +23649,19 @@ 0001 Colossus GC2 [C2] 0002 Colossus GC1 [S1] 1d97 Shenzhen Longsys Electronics Co., Ltd. + 2263 SM2263EN/SM2263XT-based OEM SSD 1d9b Facebook, Inc. 0010 Networking DOM Engine 0011 IO Bridge 1da1 Teko Telecom S.r.l. 1da2 Sapphire Technology Limited + e26a Radeon R7 250 1da3 Habana Labs Ltd. 0001 HL-1000 AI Inference Accelerator [Goya] # PCIe accelerator card for Deep Learning training tasks 1000 HL-2000 AI Training Accelerator [Gaudi] +# PCIe accelerator card for Deep Learning training tasks with secured firmware + 1010 HL-2000 AI Training Accelerator [Gaudi secured] 1db2 ATP ELECTRONICS INC 1dbb NGD Systems, Inc. 1dbf Guizhou Huaxintong Semiconductor Technology Co., Ltd @@ -23222,61 +23673,68 @@ 1dd8 4000 Naples 100Gb 2-port QSFP28 x16 8GB 1dd8 4001 Naples 100Gb 2-port QSFP28 x16 4GB 1dd8 4002 Naples 25Gb 2-port SFP28 x8 4GB - 1dd8 4007 DSP DSC-25 10/25G 2p OCP Card - 1dd8 4008 DSC-25 10/25G 2-port SFP28 x8 4GB RAM 8GB eMMC + 1dd8 4007 DSP DSC-25 Ent 10/25G OCP3 Card + 1dd8 4008 DSP DSC-25 10/25G 2p SFP28 Card 1dd8 400a DSC-100 40/100G 2-port 8G RAM 16G eMMC G1 Services Card 1dd8 400c DSC-25 10/25G 2-port 4G RAM 8G eMMC G1 Services Card - 1dd8 400d DSP DSC-100 100G 2p QSFP28 Card + 1dd8 400d DSP DSC-100 Ent 100Gb Card + 1dd8 400e DSC-25 10/25G 2-port 4G RAM 8G eMMC G1 Services Card 1001 DSC Virtual Downstream Port 1dd8 4000 Naples 100Gb 2-port QSFP28 x16 8GB 1dd8 4001 Naples 100Gb 2-port QSFP28 x16 4GB 1dd8 4002 Naples 25Gb 2-port SFP28 x8 4GB - 1dd8 4007 DSP DSC-25 10/25G 2p OCP Card - 1dd8 4008 DSC-25 10/25G 2-port SFP28 x8 4GB RAM 8GB eMMC + 1dd8 4007 DSP DSC-25 Ent 10/25G OCP3 Card + 1dd8 4008 DSP DSC-25 10/25G 2p SFP28 Card 1dd8 400a DSC-100 40/100G 2-port 8G RAM 16G eMMC G1 Services Card 1dd8 400c DSC-25 10/25G 2-port 4G RAM 8G eMMC G1 Services Card - 1dd8 400d DSP DSC-100 100G 2p QSFP28 Card + 1dd8 400d DSP DSC-100 Ent 100Gb Card + 1dd8 400e DSC-25 10/25G 2-port 4G RAM 8G eMMC G1 Services Card 1002 DSC Ethernet Controller 1dd8 4000 Naples 100Gb 2-port QSFP28 x16 8GB 1dd8 4001 Naples 100Gb 2-port QSFP28 x16 4GB 1dd8 4002 Naples 25Gb 2-port SFP28 x8 4GB - 1dd8 4007 DSP DSC-25 10/25G 2p OCP Card - 1dd8 4008 DSC-25 10/25G 2-port SFP28 x8 4GB RAM 8GB eMMC + 1dd8 4007 DSP DSC-25 Ent 10/25G OCP3 Card + 1dd8 4008 DSP DSC-25 10/25G 2p SFP28 Card 1dd8 400a DSC-100 40/100G 2-port 8G RAM 16G eMMC G1 Services Card 1dd8 400c DSC-25 10/25G 2-port 4G RAM 8G eMMC G1 Services Card - 1dd8 400d DSP DSC-100 100G 2p QSFP28 Card + 1dd8 400d DSP DSC-100 Ent 100Gb Card + 1dd8 400e DSC-25 10/25G 2-port 4G RAM 8G eMMC G1 Services Card 1003 DSC Ethernet Controller VF 1dd8 4000 Naples 100Gb 2-port QSFP28 x16 8GB 1dd8 4001 Naples 100Gb 2-port QSFP28 x16 4GB 1dd8 4002 Naples 25Gb 2-port SFP28 x8 4GB - 1dd8 4007 DSP DSC-25 10/25G 2p OCP Card - 1dd8 4008 DSC-25 10/25G 2-port SFP28 x8 4GB RAM 8GB eMMC + 1dd8 4007 DSP DSC-25 Ent 10/25G OCP3 Card + 1dd8 4008 DSP DSC-25 10/25G 2p SFP28 Card 1dd8 400a DSC-100 40/100G 2-port 8G RAM 16G eMMC G1 Services Card 1dd8 400c DSC-25 10/25G 2-port 4G RAM 8G eMMC G1 Services Card - 1dd8 400d DSP DSC-100 100G 2p QSFP28 Card + 1dd8 400d DSP DSC-100 Ent 100Gb Card + 1dd8 400e DSC-25 10/25G 2-port 4G RAM 8G eMMC G1 Services Card 1004 DSC Management Controller 1dd8 4000 Naples 100Gb 2-port QSFP28 x16 8GB 1dd8 4001 Naples 100Gb 2-port QSFP28 x16 4GB 1dd8 4002 Naples 25Gb 2-port SFP28 x8 4GB - 1dd8 4007 DSP DSC-25 10/25G 2p OCP Card - 1dd8 4008 DSC-25 10/25G 2-port SFP28 x8 4GB RAM 8GB eMMC + 1dd8 4007 DSP DSC-25 Ent 10/25G OCP3 Card + 1dd8 4008 DSP DSC-25 10/25G 2p SFP28 Card 1dd8 400a DSC-100 40/100G 2-port 8G RAM 16G eMMC G1 Services Card 1dd8 400c DSC-25 10/25G 2-port 4G RAM 8G eMMC G1 Services Card - 1dd8 400d DSP DSC-100 100G 2p QSFP28 Card + 1dd8 400d DSP DSC-100 Ent 100Gb Card + 1dd8 400e DSC-25 10/25G 2-port 4G RAM 8G eMMC G1 Services Card 1007 DSC Storage Accelerator 1dd8 4000 Naples 100Gb 2-port QSFP28 x16 8GB 1dd8 4001 Naples 100Gb 2-port QSFP28 x16 4GB 1dd8 4002 Naples 25Gb 2-port SFP28 x8 4GB - 1dd8 4007 DSP DSC-25 10/25G 2p OCP Card - 1dd8 4008 DSC-25 10/25G 2-port SFP28 x8 4GB RAM 8GB eMMC + 1dd8 4007 DSP DSC-25 Ent 10/25G OCP3 Card + 1dd8 4008 DSP DSC-25 10/25G 2p SFP28 Card 1dd8 400a DSC-100 40/100G 2-port 8G RAM 16G eMMC G1 Services Card 1dd8 400c DSC-25 10/25G 2-port 4G RAM 8G eMMC G1 Services Card - 1dd8 400d DSP DSC-100 100G 2p QSFP28 Card + 1dd8 400d DSP DSC-100 Ent 100Gb Card + 1dd8 400e DSC-25 10/25G 2-port 4G RAM 8G eMMC G1 Services Card 1de0 Groq - 0000 Q100 Tensor Streaming Processor +# rename due to conflict with a term in use by another company for an entirely different product. + 0000 TSP100 Tensor Streaming Processor 1de1 Tekram Technology Co.,Ltd. 0391 TRM-S1040 [DC-315 / DC-395 series] - 2020 DC-390 + 2020 DC-390 Series SCSI Adapter [AMD Am53C974] 690c 690c dc29 DC290 1de5 Eideticom, Inc @@ -23293,6 +23751,42 @@ e00a eMAG PCI Express Root Port 5 e00b eMAG PCI Express Root Port 6 e00c eMAG PCI Express Root Port 7 +# Root Complex A (RCA) + e100 Altra PCI Express Root Complex A +# RCA port 0 + e101 Altra PCI Express Root Port a0 +# RCA port 1 + e102 Altra PCI Express Root Port a1 +# RCA port 2 + e103 Altra PCI Express Root Port a2 +# RAC port 3 + e104 Altra PCI Express Root Port a3 +# RCA port 4 + e105 Altra PCI Express Root Port a4 +# RCA port 5 + e106 Altra PCI Express Root Port a5 +# RCA port 6 + e107 Altra PCI Express Root Port a6 +# RCA port 7 + e108 Altra PCI Express Root Port a7 +# Root Complex B (RCB) + e110 Altra PCI Express Root Complex B +# RCB port 0 + e111 Altra PCI Express Root Port b0 +# RCB port 1 + e112 Altra PCI Express Root Port b1 +# RCB port 2 + e113 Altra PCI Express Root Port b2 +# RCB port 3 + e114 Altra PCI Express Root Port b3 +# RCB port 4 + e115 Altra PCI Express Root Port b4 +# RCB port 5 + e116 Altra PCI Express Root Port b5 +# RCB port 6 + e117 Altra PCI Express Root Port b6 +# RCB port 7 + e118 Altra PCI Express Root Port b7 1df3 Ethernity Networks 0201 ACE-NIC40 Programmable Network Accelerator 1df3 0001 ENA1040 @@ -23316,6 +23810,12 @@ 0206 ACE-NIC200 Programmable Network Accelerator 1df3 0000 Maintenance Mode 1df3 0001 ENA2200F + 0207 ACE-NIC50RN Programmable Network Accelerator + 1df3 0000 Maintenance Mode + 1df3 0001 ENA2050RN + 0208 ACE-NIC100RN Programmable Network Accelerator + 1df3 0000 Maintenance Mode + 1df3 0001 ENA2100RN 1df7 opencpi.org 0001 ml605 0002 alst4 @@ -23344,6 +23844,8 @@ 1028 210f Dell Ent NVMe FIPS CM6 MU 3.2TB 1028 2110 Dell Ent NVMe FIPS CM6 MU 6.4TB 1e0f 0001 Generic NVMe CM6 RI 3.84TB + 0009 NVMe SSD + 1e0f 0001 Toshiba RC500 NVMe SSD 500GB 1e17 Arnold & Richter Cine Technik GmbH & Co. Betriebs KG 1e24 Squirrels Research Labs 0101 Acorn CLE-101 @@ -23359,9 +23861,39 @@ 1e26 Fujitsu Client Computing Limited 1e36 Shanghai Enflame Technology Co. Ltd 0001 T10 [CloudBlazer] + 0002 T11 [CloudBlazer] + 0003 T10(QSFP-DD) [CloudBlazer] + 8011 I10 [CloudBlazer] + 8012 I10L [CloudBlazer] # nee Thinci, Inc 1e38 Blaize, Inc 0102 Xplorer X1600 +1e3b Shenzhen DAPU Microelectronics Co., Ltd + 1098 Haishen NVMe SSD + 1e3b 0001 Enterprise NVMe SSD U.2 0.8TB (H2100) + 1e3b 0002 Enterprise NVMe SSD U.2 0.96TB (H2200) + 1e3b 0004 Enterprise NVMe SSD U.2 1.6TB (H2100) + 1e3b 0005 Enterprise NVMe SSD U.2 1.92TB (H2200) + 1e3b 0009 Enterprise NVMe SSD U.2 0.8TB (H3100) + 1e3b 000a Enterprise NVMe SSD U.2 0.96TB (H3200) + 1e3b 000c Enterprise NVMe SSD U.2 1.6TB (H3100) + 1e3b 000d Enterprise NVMe SSD U.2 1.92TB (H3200) + 1e3b 0014 Enterprise NVMe SSD U.2 3.2TB (H3100) + 1e3b 0015 Enterprise NVMe SSD U.2 3.84TB (H3200) + 1e3b 0021 Enterprise NVMe SSD U.2 6.4TB (H3100) + 1e3b 0022 Enterprise NVMe SSD U.2 7.68TB (H3200) + 1e3b 0061 Enterprise NVMe SSD HHHL 0.8TB (H2100) + 1e3b 0062 Enterprise NVMe SSD HHHL 0.96TB (H2200) + 1e3b 0064 Enterprise NVMe SSD HHHL 1.6TB (H2100) + 1e3b 0065 Enterprise NVMe SSD HHHL 1.92TB (H2200) + 1e3b 006c Enterprise NVMe SSD HHHL 0.8TB (H3100) + 1e3b 006d Enterprise NVMe SSD HHHL 0.96TB (H3200) + 1e3b 006f Enterprise NVMe SSD HHHL 1.6TB (H3100) + 1e3b 0070 Enterprise NVMe SSD HHHL 1.92TB (H3200) + 1e3b 007c Enterprise NVMe SSD HHHL 3.2TB (H3100) + 1e3b 007d Enterprise NVMe SSD HHHL 3.84TB (H3200) + 1e3b 007f Enterprise NVMe SSD HHHL 6.4TB (H3100) + 1e3b 0080 Enterprise NVMe SSD HHHL 7.68TB (H3200) 1e3d Burlywood, Inc 1e49 Yangtze Memory Technologies Co.,Ltd 1e4b MAXIO Technology (Hangzhou) Ltd. @@ -23373,11 +23905,13 @@ 1601 NVMe SSD Controller MAP1601 1e4c GSI Technology # Associative Processing Unit (APU) - 0010 APU [Leda-G] + 0010 APU [Leda] 1e4c 0120 SE120 1e57 Beijing Panyi Technology Co., Ltd 0100 The device has already been deleted. 0000 0100 PY8800 64GB Accelerator +1e60 Hailo Technologies Ltd. + 2864 Hailo-8 AI Processor 1e6b Axiado Corp. 1e7b Dataland 1e7c Brainchip Inc @@ -23389,9 +23923,21 @@ # aka SED Systems 1e94 Calian SED 1e95 Solid State Storage Technology Corporation +1ea0 Tencent Technology (Shenzhen) Company Limited + 2a16 Cloud Intelligent Inference Controller +1eab Hefei DATANG Storage Technology Co.,LTD. + 300a NVMe SSD Controller 300A + 300b NVMe SSD Controller 300B 1eae XFX Limited 1eb1 VeriSilicon Inc 1001 Video Accelerator +1ebd EMERGETECH Company Ltd. + 0101 Seirios 2063 Video Codec +1ed3 Yeston +1ed8 Digiteq Automotive + 0101 FG4 PCIe Frame Grabber +1ed9 Myrtle.ai +1ee9 SUSE LLC # nee Tumsan Oy 1fc0 Ascom (Finland) Oy 0300 E2200 Dual E1/Rawpipe Card @@ -23473,7 +24019,11 @@ 2348 Racore 2010 8142 100VG/AnyLAN 2646 Kingston Technology Company, Inc. - 2263 A2000, M.2, 500GB + 0010 HyperX Predator PCIe AHCI SSD + 2262 KC2000 NVMe SSD + 2263 A2000 NVMe SSD + 5008 U-SNS8154P3 NVMe SSD + 500d OM3PDP3 NVMe SSD 270b Xantel Corporation 270f Chaintech Computer Co. Ltd 2711 AVID Technology Inc. @@ -23638,7 +24188,8 @@ 7053 CH353 PCI Dual Serial and Parallel Ports Controller 7073 CH356 PCI Quad Serial and Parallel Ports Controller 7173 CH355 PCI Quad Serial Port Controller -434e CAST Navigation LLC +434e Cornelis Networks +43bc Tiger Lake-H PCIe Root Port #5 4444 Internext Compression Inc 0016 iTVC16 (CX23416) Video Decoder 0070 0003 WinTV PVR 250 @@ -24224,6 +24775,7 @@ 0100 2nd Generation Core Processor Family DRAM Controller 1028 04aa XPS 8300 1043 844d P8P67/P8H67 Series Motherboard + 8086 200d DH61CR motherboard 0101 Xeon E3-1200/2nd Generation Core Processor Family PCI Express Root Port 1028 04b2 Vostro 3350 106b 00dc MacBookPro8,2 [Core i7, 15", 2011] @@ -24303,21 +24855,31 @@ 1043 844d P8B WS Motherboard 0172 Xeon E3-1200 v2/3rd Gen Core processor Graphics Controller 0176 3rd Gen Core processor Graphics Controller + 0201 Arctic Sound 0284 Comet Lake PCH-LP LPC Premium Controller/eSPI Controller 02a3 Comet Lake PCH-LP SMBus Host Controller 02a4 Comet Lake SPI (flash) Controller 02a6 Comet Lake North Peak + 02b0 Comet Lake PCI Express Root Port #9 + 02b1 Comet Lake PCI Express Root Port #10 + 02b3 Comet Lake PCI Express Root Port #12 + 02b4 Comet Lake PCI Express Root Port #13 + 02b8 Comet Lake PCI Express Root Port #1 + 02bc Comet Lake PCI Express Root Port #5 + 02c5 Comet Lake Serial IO I2C Host Controller 02c8 Comet Lake PCH-LP cAVS 02d3 Comet Lake SATA AHCI Controller 02e0 Comet Lake Management Engine Interface 02e8 Serial IO I2C Host Controller 02e9 Comet Lake Serial IO I2C Host Controller + 02ea Comet Lake PCH-LP LPSS: I2C Controller #2 02ed Comet Lake PCH-LP USB 3.1 xHCI Host Controller 02ef Comet Lake PCH-LP Shared SRAM 02f0 Comet Lake PCH-LP CNVi WiFi 8086 0034 Wireless-AC 9560 160MHz 8086 0070 Wi-Fi 6 AX201 160MHz 8086 0074 Wi-Fi 6 AX201 160MHz + 8086 4070 Wireless-AC 9462 80MHz 02f5 Comet Lake PCH-LP SCS3 02f9 Comet Lake Thermal Subsytem 02fc Comet Lake Integrated Sensor Solution @@ -24350,7 +24912,9 @@ 0406 Haswell Integrated Graphics Controller 040a Xeon E3-1200 v3 Processor Integrated Graphics Controller 0412 Xeon E3-1200 v3/4th Gen Core Processor Integrated Graphics Controller + 1028 05d7 Alienware X51 R2 103c 1998 EliteDesk 800 G1 + 17aa 3098 ThinkCentre E73 17aa 309f ThinkCentre M83 0416 4th Gen Core Processor Integrated Graphics Controller 17aa 220e ThinkPad T440p @@ -24410,9 +24974,12 @@ 06ab Comet Lake PCH Serial IO SPI Controller #1 06ac Comet Lake PCI Express Root Port #21 06b0 Comet Lake PCI Express Root Port #9 + 06bd Comet Lake PCIe Port #6 06c0 Comet Lake PCI Express Root Port #17 06c8 Comet Lake PCH cAVS + 06d2 Comet Lake SATA AHCI Controller 06e0 Comet Lake HECI Controller + 06e3 Comet Lake Keyboard and Text (KT) Redirection 06e8 Comet Lake PCH Serial IO I2C Controller #0 06e9 Comet Lake PCH Serial IO I2C Controller #1 06ea Comet Lake PCH Serial IO I2C Controller #2 @@ -24895,7 +25462,9 @@ 1028 1fe7 Express Flash NVMe 3.2TB 2.5" U.2 (P4600) 1028 1fe8 Express Flash NVMe 2.0TB HHHL AIC (P4600) 1028 1fe9 Express Flash NVMe 4.0TB HHHL AIC (P4600) - 0b60 NVMe DC SSD [3DNAND, Beta Rock Controller] + 0b26 Thunderbolt 4 Bridge [Goshen Ridge 2020] + 0b27 Thunderbolt 4 USB Controller [Goshen Ridge 2020] + 0b60 NVMe DC SSD [3DNAND, Sentinel Rock Controller] 1028 2060 NVMe SED MU U.2 1.6TB (P5600) 1028 2061 NVMe SED MU U.2 3.2TB (P5600) 1028 2062 NVMe SED MU U.2 6.4TB (P5600) @@ -24908,6 +25477,10 @@ 1028 2102 NVMe RI U.2 1.92TB (P5500) 1028 2103 NVMe RI U.2 3.84TB (P5500) 1028 2104 NVMe RI U.2 7.68TB (P5500) + 8086 8008 NVMe Datacenter SSD [3DNAND] SE 2.5" U.2 (P5510) + 8086 8d08 NVMe Datacenter SSD [3DNAND] VE 2.5" U.2 (P5316) + 8086 8d1d NVMe Datacenter SSD [3DNAND] VE E1.L 9.5/18mm (P5316) + 0bd0 Ponte Vecchio 2T 0be0 Atom Processor D2xxx/N2xxx Integrated Graphics Controller 0be1 Atom Processor D2xxx/N2xxx Integrated Graphics Controller 105b 0d7c D270S/D250S Motherboard @@ -24935,7 +25508,9 @@ 0bf6 Atom Processor D2xxx/N2xxx DRAM Controller 0bf7 Atom Processor D2xxx/N2xxx DRAM Controller 0c00 4th Gen Core Processor DRAM Controller + 1028 05d7 Alienware X51 R2 103c 1998 EliteDesk 800 G1 + 17aa 3098 ThinkCentre E73 17aa 309f ThinkCentre M83 0c01 Xeon E3-1200 v3/4th Gen Core Processor PCI Express x16 Controller 0c04 Xeon E3-1200 v3/4th Gen Core Processor DRAM Controller @@ -25686,7 +26261,7 @@ 103c 2159 Ethernet 10Gb 2-port 562i Adapter 108e 7b11 Ethernet Server Adapter X520-2 1170 004c 82599 DP 10G Mezzanine Adapter - 15d9 0611 AOC-STGN-I2S [REV 1.01] + 15d9 0611 AOC-STGN-i2S 1734 11a9 10 Gigabit Dual Port Network Connection 17aa 1071 ThinkServer X520-2 AnyFabric 17aa 4007 82599ES 10-Gigabit SFI/SFP+ Network Connection @@ -25723,6 +26298,9 @@ 8086 4532 Desktop Board D815EEA2/D815EFV 8086 4541 D815EEA Motherboard 8086 4557 D815EGEW Mainboard + 1136 Thunderbolt 4 Bridge [Maple Ridge 4C 2020] + 1137 Thunderbolt 4 NHI [Maple Ridge 4C 2020] + 1138 Thunderbolt 4 USB Controller [Maple Ridge 4C 2020] 1161 82806AA PCI64 Hub Advanced Programmable Interrupt Controller 8086 1161 82806AA PCI64 Hub APIC 1162 Xscale 80200 Big Endian Companion Chip @@ -25933,6 +26511,10 @@ 123f 82466GX Integrated Hot-Plug Controller (IHPC) 1240 82752 (752) AGP Graphics Accelerator 124b 82380FB (MPCI2) Mobile Docking Controller + 124c Ethernet Connection E823-L for backplane + 124d Ethernet Connection E823-L for SFP + 124e Ethernet Connection E823-L/X557-AT 10GBASE-T + 124f Ethernet Connection E823-L 1GbE 1250 430HX - 82439HX TXC [Triton II] 1360 82806AA PCI64 Hub PCI Bridge 1361 82806AA PCI64 Hub Controller (HRes) @@ -25952,6 +26534,7 @@ 1503 82579V Gigabit Network Connection 1043 849c P8P67 Deluxe Motherboard 10cf 161c LIFEBOOK E752 + 8086 200d DH61CR motherboard 1507 Ethernet Express Module X520-P2 1508 82598EB Gigabit BX Network Connection 1509 82580 Gigabit Network Connection @@ -25984,6 +26567,7 @@ 151b CVL2510 Thunderbolt Controller [Light Peak 2C 2010] 151c 82599 10 Gigabit TN Network Connection 108e 7b13 Dual 10GBASE-T LP + 151d Ethernet Connection E823-L for QSFP 1520 I350 Ethernet Controller Virtual Function 1521 I350 Gigabit Network Connection 1028 0602 Gigabit 2P I350-t LOM @@ -26012,12 +26596,15 @@ 1093 775b PCIe-8237 Ethernet Adapter 10a9 802a UV2-BaseIO dual-port GbE 1137 023e 1GigE I350 LOM + 15d9 0000 AOC-SGP-i4 15d9 0652 Dual Port i350 GbE MicroLP [AOC-CGP-i2] 17aa 1074 ThinkServer I350-T4 AnyFabric 17aa 4005 I350 Gigabit Network Connection 18d4 0c07 I350 1Gb 2-port RJ45 OCP Mezz Card MOP41-I-1GT2 193d 1005 360T-B 193d 1007 360T-L +# NIC-ETH360T-3S-4P OCP3.0 4x1G Base-T Card + 193d 1080 NIC-ETH360T-3S-4P 1bd4 001d 1G base-T QP EP014Ti1 Adapter 1bd4 0035 1G base-T QP EP014Ti1 Adapter 8086 0001 Ethernet Server Adapter I350-T4 @@ -26170,6 +26757,7 @@ 156f Ethernet Connection I219-LM 1028 06dc Latitude E7470 103c 8079 EliteBook 840 G3 + 17aa 2247 ThinkPad T570 1570 Ethernet Connection I219-V 1571 Ethernet Virtual Function 700 Series 1572 Ethernet Controller X710 for 10GbE SFP+ @@ -26188,7 +26776,12 @@ 17aa 0000 ThinkServer X710 AnyFabric for 10GbE SFP+ 17aa 4001 ThinkServer X710-4 AnyFabric for 10GbE SFP+ 17aa 4002 ThinkServer X710-2 AnyFabric for 10GbE SFP+ + 193d 1020 NIC-ETH561F-sL-4x10G + 193d 1021 NIC-ETH561F-sL-2x10G +# NIC-ETH561F-3S-2P OCP3.0 2x10G SFP+ Card + 193d 1081 NIC-ETH561F-3S-2P 19e5 d11c Ethernet 2-port X710 10Gb SFP+ Adapter SP330 + 1bd4 0042 10G SFP+ DP EP102Fi4 Adapter 1bd4 0056 Ethernet Network Adapter X710-BM2 for OCP NIC 3.0 8086 0000 Ethernet Converged Network Adapter X710 8086 0001 Ethernet Converged Network Adapter X710-4 @@ -26221,6 +26814,7 @@ 1577 DSL6540 Thunderbolt 3 NHI [Alpine Ridge 4C 2015] 1578 DSL6540 Thunderbolt 3 Bridge [Alpine Ridge 4C 2015] 157b I210 Gigabit Network Connection + ea50 cc10 RXi2-BP 157c I210 Gigabit Backplane Connection 157d DSL5110 Thunderbolt 2 NHI (Low Power) [Win Ridge 2C 2014] 157e DSL5110 Thunderbolt 2 Bridge (Low Power) [Win Ridge 2C 2014] @@ -26233,6 +26827,7 @@ 1059 0170 RD-01213 10GbE interface 1590 0000 Ethernet 2-port 563i Adapter 1590 00f8 Ethernet 2-port 563i Adapter + 193d 100e NIC-ETH561i-Mb-4x10G 8086 0000 Ethernet Converged Network Adapter XL710-Q2 1583 Ethernet Controller XL710 for 40GbE QSFP+ 1028 0000 Ethernet 40G 2P XL710 QSFP+ rNDC @@ -26317,6 +26912,8 @@ 1591 Ethernet Controller E810-C for backplane 1592 Ethernet Controller E810-C for QSFP 1137 02bf E810CQDA2 2x100 GbE QSFP28 PCIe NIC + 193d 1050 NIC-ETH1060F-LP-2P 2x100GbE Ethernet PCIe Card + 8086 0001 Ethernet Network Adapter E810-C-Q1 8086 0002 Ethernet Network Adapter E810-C-Q2 8086 0004 Ethernet Network Adapter E810-C-Q2 8086 0005 Ethernet Network Adapter E810-C-Q1 for OCP3.0 @@ -26325,6 +26922,8 @@ 8086 000a Ethernet Network Adapter E810-C-Q1 for OCP 8086 000b Ethernet 100G 2P E810-C Adapter 8086 000c Ethernet 100G 2P E810-C OCP + 8086 000d Ethernet Network Adapter E810-L-Q2 for OCP 3.0 + 8086 000e Ethernet Network Adapter E810-2C-Q2 1593 Ethernet Controller E810-C for SFP 1137 02c3 E810XXVDA4 4x25/10 GbE SFP28 PCIe NIC 8086 0002 Ethernet Network Adapter E810-L-2 @@ -26369,6 +26968,7 @@ 15b6 DSL6540 USB 3.1 Controller [Alpine Ridge] 15b7 Ethernet Connection (2) I219-LM 15b8 Ethernet Connection (2) I219-V + 1462 7a72 H270 PC MATE 15b9 Ethernet Connection (3) I219-LM 15bb Ethernet Connection (7) I219-LM 15bc Ethernet Connection (7) I219-V @@ -26438,6 +27038,10 @@ 1137 0000 X710TLG GbE RJ45 PCIe NIC 1137 02c1 X710T2LG 2x10 GbE RJ45 PCIe NIC 1137 02c2 X710T4LG 4x10 GbE RJ45 PCIe NIC + 1137 02d9 Ethernet Network Adapter X710-T2L OCP 3.0 + 1137 02da Ethernet Network Adapter X710-T4L OCP 3.0 +# NIC-ETH565T-3S-2P OCP3.0 2x10G Base-T Card + 193d 1082 NIC-ETH565T-3S-2P 8086 0000 Ethernet Network Adapter X710-TL 8086 0001 Ethernet Network Adapter X710-T4L 8086 0002 Ethernet Network Adapter X710-T4L @@ -26503,18 +27107,20 @@ 18a0 C4xxx Series QAT 18a1 C4XXX Series QAT Virtual Function 1900 Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers - 1901 6th-9th Gen Core Processor PCIe Controller (x16) + 1901 6th-10th Gen Core Processor PCIe Controller (x16) 1902 HD Graphics 510 1903 Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem 1028 06d6 Latitude 7275 tablet 1028 06dc Latitude E7470 1028 06e4 XPS 15 9550 + 1028 06e6 Latitude 11 5175 2-in-1 103c 825b OMEN-17-w001nv 17aa 225d ThinkPad T480 1904 Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers 1028 06dc Latitude E7470 1028 06f3 Latitude 3570 103c 8079 EliteBook 840 G3 + 17aa 2247 ThinkPad T570 17aa 382a B51-80 Laptop 1905 Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor PCIe Controller (x8) 1906 HD Graphics 510 @@ -26523,12 +27129,14 @@ 1909 Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor PCIe Controller (x4) 190c Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers 1028 06d6 Latitude 7275 tablet + 1028 06e6 Latitude 11 5175 2-in-1 190f Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers 1910 Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers 1028 06e4 XPS 15 9550 103c 825b OMEN-17-w001nv 1911 Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th/8th Gen Core Processor Gaussian Mixture Model 1028 0869 Vostro 3470 + 1462 7a72 H270 PC MATE 17aa 2247 ThinkPad T570 17aa 224f ThinkPad X1 Carbon 5th Gen 17aa 225d ThinkPad T480 @@ -26537,15 +27145,18 @@ 1028 06dc Latitude E7470 1028 06f3 Latitude 3570 103c 8079 EliteBook 840 G3 + 17aa 2247 ThinkPad T570 1918 Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers 1919 Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Imaging Unit 1028 06d6 Latitude 7275 tablet + 1028 06e6 Latitude 11 5175 2-in-1 191b HD Graphics 530 1028 06e4 XPS 15 9550 103c 825b OMEN-17-w001nv 191d HD Graphics P530 191e HD Graphics 515 1028 06d6 Latitude 7275 tablet + 1028 06e6 Latitude 11 5175 2-in-1 191f Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Host Bridge/DRAM Registers 1921 HD Graphics 520 1926 Iris Graphics 540 @@ -26657,6 +27268,7 @@ 1c02 6 Series/C200 Series Chipset Family 6 port Desktop SATA AHCI Controller 1028 04aa XPS 8300 1043 844d P8 series motherboard + 8086 200d DH61CR motherboard 8086 7270 Server Board S1200BT Family 1c03 6 Series/C200 Series Chipset Family 6 port Mobile SATA AHCI Controller 1028 04a3 Precision M4600 @@ -26707,6 +27319,7 @@ 17aa 21cf ThinkPad T520 # Realtek ALC888 audio codec 8086 2008 DQ67SW board + 8086 200d DH61CR motherboard 8086 7270 Apple MacBookPro8,2 [Core i7, 15", 2011] 1c22 6 Series/C200 Series Chipset Family SMBus Controller 1028 04a3 Precision M4600 @@ -26715,6 +27328,7 @@ 1028 04da Vostro 3750 1043 844d P8 series motherboard 17aa 21cf ThinkPad T520 + 8086 200d DH61CR motherboard 8086 7270 Server Board S1200BT Family / Apple MacBook Pro 8,1/8,2 1c24 6 Series/C200 Series Chipset Family Thermal Management Controller 1c25 6 Series/C200 Series Chipset Family DMI to PCI Bridge @@ -26725,6 +27339,7 @@ 1028 04da Vostro 3750 1043 844d P8 series motherboard 17aa 21cf ThinkPad T520 + 8086 200d DH61CR motherboard 8086 7270 Server Board S1200BT Family / Apple MacBook Pro 8,1/8,2 1c27 6 Series/C200 Series Chipset Family USB Universal Host Controller #1 8086 7270 Apple MacBookPro8,2 [Core i7, 15", 2011] @@ -26737,6 +27352,7 @@ 1028 04da Vostro 3750 1043 844d P8 series motherboard 17aa 21cf ThinkPad T520 + 8086 200d DH61CR motherboard 8086 7270 Server Board S1200BT Family / Apple MacBook Pro 8,1/8,2 1c33 6 Series/C200 Series Chipset Family LAN Controller 1c35 6 Series/C200 Series Chipset Family VECI Controller @@ -26747,6 +27363,7 @@ 1028 04da Vostro 3750 1043 844d P8 series motherboard 17aa 21cf ThinkPad T520 + 8086 200d DH61CR motherboard 8086 7270 Apple MacBookPro8,2 [Core i7, 15", 2011] 1c3b 6 Series/C200 Series Chipset Family MEI Controller #2 1c3c 6 Series/C200 Series Chipset Family IDE-r Controller @@ -26790,6 +27407,7 @@ 1c5a Upgraded Q67 Express Chipset LPC Controller 1c5b 6 Series/C200 Series Chipset Family LPC Controller 1c5c H61 Express Chipset LPC Controller + 8086 200d DH61CR motherboard 1c5d 6 Series/C200 Series Chipset Family LPC Controller 1c5e 6 Series/C200 Series Chipset Family LPC Controller 1c5f 6 Series/C200 Series Chipset Family LPC Controller @@ -26829,6 +27447,7 @@ 15d9 066b X9SRL-F 1d2d C600/X79 series chipset USB2 Enhanced Host Controller #2 1028 04f7 C602J on PowerEdge R320 server + 103c 18a9 HP DL360e G8 15d9 066b X9SRL-F 1d33 C600/X79 series chipset LAN Controller 1d35 C600/X79 series chipset VECI Controller @@ -27055,6 +27674,7 @@ 1f26 Atom processor C2000 RAID SATA2 Controller 1f27 Atom processor C2000 RAID SATA2 Controller 1f2c Atom processor C2000 USB Enhanced Host Controller + 0200 1028 Atom C2338 on Dell 0K8Y0N motherboard 1f2e Atom processor C2000 RAID SATA2 Controller 1f2f Atom processor C2000 RAID SATA2 Controller 1f30 Atom processor C2000 2-Port IDE SATA3 Controller @@ -27252,6 +27872,7 @@ 147b 0507 TH7II-RAID 8086 4532 Desktop Board D815EEA2/D815EFV 8086 4557 D815EGEW Mainboard + 8086 4d44 D850EMV2 motherboard 8086 5744 S845WD1-E mainboard 2443 82801BA/BAM SMBus Controller 1014 01c6 Netvista A40/A40p @@ -27293,6 +27914,7 @@ 147b 0507 TH7II-RAID 8086 4557 D815EGEW Mainboard 8086 4656 Desktop Board D815EFV + 8086 4d44 D850EMV2 motherboard 2446 82801BA/BAM AC'97 Modem Controller 1025 1016 Travelmate 612 TX 104d 80df Vaio PCG-FX403 @@ -27367,6 +27989,7 @@ 15d9 3280 Supermicro P4SBE Mainboard 8086 4532 Desktop Board D815EEA2/D815EFV 8086 4557 D815EGEW Mainboard + 8086 4d44 D850EMV2 motherboard 8086 5744 S845WD1-E mainboard 244c 82801BAM ISA Bridge (LPC) 244e 82801 PCI Bridge @@ -27869,6 +28492,7 @@ 1cb8 0002 Omni-Path HFI Adapter 100 Series, 1 Port, PCIe x16, TC6600 Fixed Port 1cb8 0003 Omni-Path HFI Adapter 100 Series, 2 Port, 2 PCIe x16, Earth Simulation QSFP28 1cb8 0004 Omni-Path HFI Adapter 100 Series, 1 Port, PCIe x16, TC4600E QSFP28 + 434e 0001 Omni-Path HFI 100 Series, 1 Port, OCP 3.0 Adapter 8086 2628 Omni-Path HFI Adapter 100 Series, 1 Port, PCIe x16 8086 2629 Omni-Path HFI Adapter 100 Series, 1 Port, PCIe x8 8086 262a Omni-Path HFI Adapter 100 Series, 2 Ports, Split PCIe x16 @@ -27897,6 +28521,9 @@ 250f 82820 820 (Camino) Chipset AGP Bridge 2520 82805AA MTH Memory Translator Hub 2521 82804AA MRH-S Memory Repeater Hub for SDRAM + 2522 NVMe Optane Memory Series + 8086 3806 Optane Memory 16GB + 8086 3810 Optane Memory M10 16GB 2526 Wireless-AC 9260 2530 82850 850 (Tehama) Chipset Host Bridge (MCH) 1028 00c7 Dimension 8100 @@ -27987,6 +28614,7 @@ 103c 0934 Compaq nw8240/nx8220 103c 0944 Compaq nc6220 Notebook PC 103c 099c NX6110/NC6120 + 1043 82d9 Asus Eee PC 900 104d 81b7 Vaio VGN-S3XP a304 81b7 Vaio VGN-S3XP e4bf 0ccd CCD-CALYPSO @@ -28402,7 +29030,22 @@ 8086 3904 NVMe Datacenter SSD [Optane] x4 AIC (P4800X) 8086 3905 NVMe Datacenter SSD [Optane] 15mm 2.5" U.2 (P4800X) 2723 Wi-Fi 6 AX200 - 8086 2723 Wireless AX200 + 1a56 1654 Killer™ Wi-Fi 6 AX1650x (AX200NGW) + 8086 0084 Wi-Fi 6 AX200NGW + 2725 Wi-Fi 6 AX210/AX211/AX411 160MHz + 8086 0020 Wi-Fi 6 AX210 160MHz + 8086 0024 Wi-Fi 6 AX210 160MHz + 8086 0090 Wi-Fi 6 AX211 160MHz + 8086 00b0 Wi-Fi 6 AX411 160MHz + 8086 0310 Wi-Fi 6 AX210 160MHz + 8086 0510 Wi-Fi 6 AX210 160MHz + 8086 0a10 Wi-Fi 6 AX210 160MHz + 8086 2020 Wi-Fi 6 AX210 160MHz + 8086 4020 Wi-Fi 6 AX210 160MHz + 8086 6020 Wi-Fi 6 AX210 160MHz + 8086 6024 Wi-Fi 6 AX210 160MHz + 8086 e020 Wi-Fi 6 AX210 160MHz + 8086 e024 Wi-Fi 6 AX210 160MHz 2770 82945G/GZ/P/PL Memory Controller Hub 1028 01ad OptiPlex GX620 103c 2a3b Pavilion A1512X @@ -28429,6 +29072,7 @@ 277c 82975X Memory Controller Hub 1043 8178 P5WDG2 WS Professional motherboard 277d 82975X PCI Express Root Port + 2780 82915G/GV/GL/910GL [Grantsdale] Graphics Device 2782 82915G Integrated Graphics Controller 1043 2582 P5GD1-VW Mainboard 1734 105b Scenic W620 @@ -29390,6 +30034,7 @@ 1028 022f Inspiron 1525 103c 30c0 Compaq 6710b 103c 30c1 Compaq 6910p + 103c 30c5 Compaq 8510p 103c 30cc Pavilion dv6700 103c 30d9 Presario C700 1043 1017 X58LE @@ -29445,6 +30090,7 @@ 2a41 Mobile 4 Series Chipset PCI Express Graphics Port e4bf cc4d CCM-BOOGIE 2a42 Mobile 4 Series Chipset Integrated Graphics Controller + 1028 02aa Dell Inspiron 1545 17aa 2112 ThinkPad T400 e4bf cc4d CCM-BOOGIE 2a43 Mobile 4 Series Chipset Integrated Graphics Controller @@ -29860,8 +30506,8 @@ 8086 4210 Dual Band Wireless AC 3165 3166 Dual Band Wireless-AC 3165 Plus Bluetooth 8086 4210 Dual Band Wireless-AC 3165 - 3184 UHD Graphics 605 - 3185 UHD Graphics 605 + 3184 GeminiLake [UHD Graphics 605] + 3185 GeminiLake [UHD Graphics 600] 318c Celeron/Pentium Silver Processor Dynamic Platform and Thermal Framework Processor Participant 318e Celeron/Pentium Silver Processor NorthPeak 3190 Celeron/Pentium Silver Processor Gaussian Mixture Model @@ -29871,6 +30517,8 @@ 17aa 380b V130-15IGM Laptop (Lenovo) - Type 81HL 319a Celeron/Pentium Silver Processor Trusted Execution Engine Interface 31a2 Celeron/Pentium Silver Processor Integrated Sensor Solution + 31a8 Celeron/Pentium Silver Processor USB 3.0 xHCI Controller + 1849 31a8 Celeron/Pentium Silver Processor USB 3.0 xHCI Controller 31ac Celeron/Pentium Silver Processor Serial IO I2C Host Controller 31ae Celeron/Pentium Silver Processor Serial IO I2C Host Controller 31bc Celeron/Pentium Silver Processor Serial IO UART Host Controller @@ -29887,7 +30535,11 @@ 31d9 Gemini Lake PCI Express Root Port 31da Gemini Lake PCI Express Root Port 31db Gemini Lake PCI Express Root Port - 31dc AC 1550i Wireless + 31dc Gemini Lake PCH CNVi WiFi + 1a56 1552 Killer(R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) + 8086 0034 Wireless-AC 9560 + 31e3 Celeron/Pentium Silver Processor SATA Controller + 31e8 Celeron/Pentium Silver Processor LPC Controller 31ee Celeron/Pentium Silver Processor Serial IO UART Host Controller 31f0 Gemini Lake Host Bridge 3200 GD31244 PCI-X SATA HBA @@ -29973,19 +30625,25 @@ 34aa Ice Lake-LP Serial IO SPI Controller #0 34ab Ice Lake-LP Serial IO SPI Controller #1 34b0 Ice Lake-LP PCI Express Root Port #9 + 34b7 Ice Lake-LP PCI Express Root Port #16 34bc Ice Lake-LP PCI Express Root Port #5 34c5 Ice Lake-LP Serial IO I2c Controller #4 34c6 Ice Lake-LP Serial IO I2c Controller #5 - 34c8 Smart Sound Technology Audio Controller + 34c8 Ice Lake-LP Smart Sound Technology Audio Controller 34d3 Ice Lake-LP SATA Controller [AHCI mode] - 34e0 Management Engine Interface + 34e0 Ice Lake-LP Management Engine 34e8 Ice Lake-LP Serial IO I2C Controller #0 34e9 Ice Lake-LP Serial IO I2C Controller #1 34ea Ice Lake-LP Serial IO I2C Controller #2 34eb Ice Lake-LP Serial IO I2C Controller #3 34ed Ice Lake-LP USB 3.1 xHCI Host Controller - 34f0 Killer Wi-Fi 6 AX1650i 160MHz Wireless Network Adapter (201NGW) + 34ef Ice Lake-LP DRAM Controller + 34f0 Ice Lake-LP PCH CNVi WiFi + 1a56 1552 Killer(R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) + 8086 0074 Wi-Fi 6 AX201 + 8086 0264 Wireless-AC 9461 34f8 Ice Lake-LP SD Controller + 34fc Ice Lake-LP Integrated Sensor Solution 3500 6311ESB/6321ESB PCI Express Upstream Port 103c 31fe ProLiant DL140 G3 15d9 9680 X7DBN Motherboard @@ -30599,16 +31257,17 @@ 3e81 8th Gen Core Processor PCIe Controller (x16) 3e85 8th Gen Core Processor PCIe Controller (x8) 3e89 8th Gen Core Processor PCIe Controller (x4) - 3e91 8th Gen Core Processor Gaussian Mixture Model - 3e92 UHD Graphics 630 (Desktop) + 3e90 CoffeeLake-S GT1 [UHD Graphics 610] + 3e91 CoffeeLake-S GT2 [UHD Graphics 630] + 3e92 CometLake-S GT2 [UHD Graphics 630] 1028 0869 Vostro 3470 - 3e93 UHD Graphics 610 - 3e96 HD Graphics P630 - 3e98 UHD Graphics 630 (Desktop 9 Series) - 3e9b UHD Graphics 630 (Mobile) - 3ea0 UHD Graphics 620 (Whiskey Lake) + 3e93 CoffeeLake-S GT1 [UHD Graphics 610] + 3e96 CoffeeLake-S GT2 [UHD Graphics P630] + 3e98 CoffeeLake-S GT2 [UHD Graphics 630] + 3e9b CoffeeLake-H GT2 [UHD Graphics 630] + 3ea0 WhiskeyLake-U GT2 [UHD Graphics 620] 1028 089e Inspiron 5482 - 3ea5 Iris Plus Graphics 655 + 3ea5 CoffeeLake-U GT3e [Iris Plus Graphics 655] 3ec2 8th Gen Core Processor Host Bridge/DRAM Registers 1028 0869 Vostro 3470 1043 8694 PRIME H310M-D @@ -30636,6 +31295,7 @@ 4032 5400 Chipset IOxAPIC 4035 5400 Chipset FBD Registers 4036 5400 Chipset FBD Registers + 4041 NVMe Datacenter SSD [Optane] 4100 Moorestown Graphics and Video 4108 Atom Processor E6xx Integrated Graphics Controller 4109 Atom Processor E6xx Integrated Graphics Controller @@ -30649,6 +31309,13 @@ 4115 Atom Processor E6xx PCI Host Bridge #2 4116 Atom Processor E6xx PCI Host Bridge #3 4117 Atom Processor E6xx PCI Host Bridge #4 + 4140 NVMe Datacenter SSD [Optane] + 1028 2134 NVMe Datacenter SSD [Optane] SED 400GB 2.5" U.2 (P5800X) + 1028 2135 NVMe Datacenter SSD [Optane] SED 800GB 2.5" U.2 (P5800X) + 1028 2136 NVMe Datacenter SSD [Optane] SED 1.6TB 2.5" U.2 (P5800X) + 1028 2137 NVMe Datacenter SSD [Optane] 400GB 2.5" U.2 (P5800X) + 1028 2138 NVMe Datacenter SSD [Optane] 800GB 2.5" U.2 (P5800X) + 1028 2139 NVMe Datacenter SSD [Optane] 1.6TB 2.5" U.2 (P5800X) 4220 PRO/Wireless 2200BG [Calexico2] Network Connection 103c 0934 Compaq nw8240/nx8220 103c 12f6 nc6120/nc6220/nw8240/nx8220 @@ -30738,9 +31405,49 @@ 8086 1216 WiMAX/WiFi Link 5150 ABG 8086 1311 WiMAX/WiFi Link 5150 AGN 8086 1316 WiMAX/WiFi Link 5150 ABG + 438b Tiger Lake-H LPC/eSPI Controller + 43a3 Tiger Lake-H SMBus Controller + 43a4 Tiger Lake-H SPI Controller + 43b0 Tiger Lake-H PCI Express Root Port #9 + 43bc Tiger Lake-H PCI Express Root Port #5 + 43c8 Tiger Lake-H HD Audio Controller + 43e0 Tiger Lake-H Management Engine Interface + 43e8 Tiger Lake-H Serial IO I2C Controller #0 + 43ed Tiger Lake-H USB 3.2 Gen 2x1 xHCI Host Controller + 43ef Tiger Lake-H Shared SRAM + 43f0 Tiger Lake PCH CNVi WiFi + 8086 0034 Wireless-AC 9560 + 8086 0074 Wi-Fi 6 AX201 160MHz + 8086 0264 Wireless-AC 9461 + 8086 02a4 Wireless-AC 9462 444e Turbo Memory Controller 467f Volume Management Device NVMe RAID Controller + 4680 AlderLake-S GT1 + 46a0 AlderLake-P GT2 + 46c0 AlderLake-M GT1 + 4905 DG1 [Iris Xe MAX Graphics] + 4906 DG1 [Iris Xe Pod] + 4907 SG1 [Server GPU SG-18M] + 4908 DG1 [Iris Xe Graphics] 4c3d Volume Management Device NVMe RAID Controller + 4c8a RocketLake-S GT1 [UHD Graphics 750] + 4c8b RocketLake-S GT1 [UHD Graphics 730] + 4c90 RocketLake-S GT1 [UHD Graphics P750] + 4c9a RocketLake-S [UHD Graphics] + 4da3 JaserLake SMBus + 4da4 JaserLake SPI (flash) Controller + 4de0 Management Engine Interface + 4de8 Serial IO I2C Host Controller + 4de9 Serial IO I2C Host Controller + 4df0 Wi-Fi 6 AX201 160MHz + 4e03 Dynamic Tuning service + 4e19 JasperLake IPU + 4e55 JasperLake [UHD Graphics] + 4e61 JasperLake [UHD Graphics] + 4e71 JasperLake [UHD Graphics] + 4f80 DG2 + 4f81 DG2 + 4f82 DG2 5001 LE80578 5002 LE80578 Graphics Processor Unit 5009 LE80578 Video Display Controller @@ -30793,6 +31500,7 @@ 8086 0001 EtherExpress PRO/100 Server Ethernet Adapter 530d 80310 (IOP) IO Processor 5502 Ethernet Controller (2) I225-LMvP + 5504 Ethernet Controller I226-K 5845 QEMU NVM Express Controller 1af4 1100 QEMU Virtual Machine 5900 Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers @@ -30807,9 +31515,11 @@ 590c Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers 590f Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers 1462 7a68 B250 KRAIT GAMING (MS-7A68) + 1462 7a72 H270 PC MATE 5910 Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers 5911 Xeon E3-1200 v6/7th Gen Core Processor Gaussian Mixture Model 5912 HD Graphics 630 + 1462 7a72 H270 PC MATE 5914 Xeon E3-1200 v6/7th Gen Core Processor Host Bridge/DRAM Registers 17aa 225d ThinkPad T480 5916 HD Graphics 620 @@ -31190,6 +31900,7 @@ 1993 0ded mGuard-PCI AV#2 1993 0dee mGuard-PCI AV#1 1993 0def mGuard-PCI AV#0 + 8603 Ice Lake-LP Dynamic Tuning Processor Participant 87c0 UHD Graphics 617 8800 Platform Controller Hub EG20T PCI Express Port 8801 Platform Controller Hub EG20T Packet Hub @@ -31218,8 +31929,10 @@ 8818 Platform Controller Hub EG20T Controller Area Network (CAN) Controller 8819 Platform Controller Hub EG20T IEEE 1588 Hardware Assist 8a0d Ice Lake Thunderbolt 3 NHI #1 + 8a12 Ice Lake-LP Processor Host Bridge/DRAM Registers 8a13 Ice Lake Thunderbolt 3 USB Controller 8a17 Ice Lake Thunderbolt 3 NHI #0 + 8a19 Image Signal Processor 8a1d Ice Lake Thunderbolt 3 PCI Express Root Port #0 8a1f Ice Lake Thunderbolt 3 PCI Express Root Port #1 8a21 Ice Lake Thunderbolt 3 PCI Express Root Port #2 @@ -31232,7 +31945,9 @@ 8c00 8 Series/C220 Series Chipset Family 4-port SATA Controller 1 [IDE mode] 8c01 8 Series Chipset Family 4-port SATA Controller 1 [IDE mode] - Mobile 8c02 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] + 1028 05d7 Alienware X51 R2 103c 1998 EliteDesk 800 G1 + 17aa 3098 ThinkCentre E73 17aa 309f ThinkCentre M83 8c03 8 Series/C220 Series Chipset Family 6-port SATA Controller 1 [AHCI mode] 103c 1909 ZBook 15 @@ -31249,6 +31964,7 @@ 103c 1998 EliteDesk 800 G1 1043 8534 ASUS H81I-PLUS 17aa 220e ThinkPad T440p + 17aa 3098 ThinkCentre E73 8c11 8 Series/C220 Series Chipset Family PCI Express Root Port #1 8c12 8 Series/C220 Series Chipset Family PCI Express Root Port #2 103c 1998 EliteDesk 800 G1 @@ -31261,47 +31977,59 @@ 8c18 8 Series/C220 Series Chipset Family PCI Express Root Port #5 8c19 8 Series/C220 Series Chipset Family PCI Express Root Port #5 8c1a 8 Series/C220 Series Chipset Family PCI Express Root Port #6 + 17aa 3098 ThinkCentre E73 8c1b 8 Series/C220 Series Chipset Family PCI Express Root Port #6 8c1c 8 Series/C220 Series Chipset Family PCI Express Root Port #7 8c1d 8 Series/C220 Series Chipset Family PCI Express Root Port #7 8c1e 8 Series/C220 Series Chipset Family PCI Express Root Port #8 8c1f 8 Series/C220 Series Chipset Family PCI Express Root Port #8 8c20 8 Series/C220 Series Chipset High Definition Audio Controller + 1028 05d7 Alienware X51 R2 103c 1909 ZBook 15 103c 1998 EliteDesk 800 G1 17aa 220e ThinkPad T440p 17aa 309f ThinkCentre M83 8c21 8 Series/C220 Series Chipset High Definition Audio Controller 8c22 8 Series/C220 Series Chipset Family SMBus Controller + 1028 05d7 Alienware X51 R2 103c 1909 ZBook 15 103c 1998 EliteDesk 800 G1 17aa 220e ThinkPad T440p + 17aa 3098 ThinkCentre E73 17aa 309f ThinkCentre M83 8c23 8 Series Chipset Family CHAP Counters 8c24 8 Series Chipset Family Thermal Management Controller 8c26 8 Series/C220 Series Chipset Family USB EHCI #1 + 1028 05d7 Alienware X51 R2 103c 1909 ZBook 15 103c 1998 EliteDesk 800 G1 17aa 220e ThinkPad T440p 17aa 2210 ThinkPad T540p + 17aa 3098 ThinkCentre E73 17aa 309f ThinkCentre M83 2210 17aa ThinkPad T540p 8c2d 8 Series/C220 Series Chipset Family USB EHCI #2 + 1028 05d7 Alienware X51 R2 103c 1909 ZBook 15 103c 1998 EliteDesk 800 G1 17aa 220e ThinkPad T440p + 17aa 3098 ThinkCentre E73 17aa 309f ThinkCentre M83 8c31 8 Series/C220 Series Chipset Family USB xHCI + 1028 05d7 Alienware X51 R2 103c 1909 ZBook 15 103c 1998 EliteDesk 800 G1 17aa 220e ThinkPad T440p + 17aa 3098 ThinkCentre E73 17aa 309f ThinkCentre M83 8c33 8 Series/C220 Series Chipset Family LAN Controller 8c34 8 Series/C220 Series Chipset Family NAND Controller 8c3a 8 Series/C220 Series Chipset Family MEI Controller #1 + 1028 05d7 Alienware X51 R2 103c 1909 ZBook 15 103c 1998 EliteDesk 800 G1 17aa 220e ThinkPad T440p + 17aa 3098 ThinkCentre E73 17aa 309f ThinkCentre M83 8c3b 8 Series/C220 Series Chipset Family MEI Controller #2 8c3c 8 Series/C220 Series Chipset Family IDE-r Controller @@ -31318,6 +32046,7 @@ 8c48 8 Series/C220 Series Chipset Family LPC Controller 8c49 HM86 Express LPC Controller 8c4a H87 Express LPC Controller + 1028 05d7 Alienware X51 R2 8c4b HM87 Express LPC Controller 8c4c Q85 Express LPC Controller 17aa 309f ThinkCentre M83 @@ -31340,6 +32069,7 @@ 8c5a 8 Series/C220 Series Chipset Family LPC Controller 8c5b 8 Series/C220 Series Chipset Family LPC Controller 8c5c H81 Express LPC Controller + 17aa 3098 ThinkCentre E73 8c5d 8 Series/C220 Series Chipset Family LPC Controller 8c5e 8 Series/C220 Series Chipset Family LPC Controller 8c5f 8 Series/C220 Series Chipset Family LPC Controller @@ -31458,25 +32188,46 @@ 9622 Integrated RAID 9641 Integrated RAID 96a1 Integrated RAID + 9a01 11th Gen Core Processor PCIe Controller #1 + 9a03 TigerLake-LP Dynamic Tuning Processor Participant 9a09 11th Gen Core Processor PCIe Controller 9a0b Volume Management Device NVMe RAID Controller - 9a13 Tiger Lake-LP Thunderbolt USB Controller + 9a0d Tigerlake Telemetry Aggregator Driver + 9a0f 11th Gen Core Processor PCIe Controller #0 + 9a11 GNA Scoring Accelerator module + 9a13 Tiger Lake-LP Thunderbolt 4 USB Controller 9a14 11th Gen Core Processor Host Bridge/DRAM Registers - 9a1b Tiger Lake-LP Thunderbolt NHI #0 - 9a1d Tiger Lake-LP Thunderbolt NHI #1 - 9a23 Tiger Lake-LP Thunderbolt PCI Express Root Port #0 - 9a25 Tiger Lake-LP Thunderbolt PCI Express Root Port #1 - 9a27 Tiger Lake-LP Thunderbolt PCI Express Root Port #2 - 9a29 Tiger Lake-LP Thunderbolt PCI Express Root Port #3 + 9a17 Tiger Lake-H Thunderbolt 4 USB Controller + 9a1b Tiger Lake-LP Thunderbolt 4 NHI #0 + 9a1d Tiger Lake-LP Thunderbolt 4 NHI #1 + 9a1f Tiger Lake-H Thunderbolt 4 NHI #0 + 9a21 Tiger Lake-H Thunderbolt 4 NHI #1 + 9a23 Tiger Lake-LP Thunderbolt 4 PCI Express Root Port #0 + 9a25 Tiger Lake-LP Thunderbolt 4 PCI Express Root Port #1 + 9a26 11th Gen Core Processor Host Bridge/DRAM Registers + 9a27 Tiger Lake-LP Thunderbolt 4 PCI Express Root Port #2 + 9a29 Tiger Lake-LP Thunderbolt 4 PCI Express Root Port #3 + 9a2b Tiger Lake-H Thunderbolt 4 PCI Express Root Port #0 + 9a2d Tiger Lake-H Thunderbolt 4 PCI Express Root Port #1 + 9a2f Tiger Lake-H Thunderbolt 4 PCI Express Root Port #2 + 9a31 Tiger Lake-H Thunderbolt 4 PCI Express Root Port #3 9a33 Tiger Lake Trace Hub - 9a49 UHD Graphics - 9b41 UHD Graphics + 9a36 11th Gen Core Processor Host Bridge/DRAM Registers + 9a49 TigerLake-LP GT2 [Iris Xe Graphics] + 9a60 TigerLake-H GT1 [UHD Graphics] + 9a68 TigerLake-H GT1 [UHD Graphics] + 9b41 CometLake-U GT2 [UHD Graphics] + 1028 09bd Latitude 7310 9b44 10th Gen Core Processor Host Bridge/DRAM Registers + 9b53 Comet Lake-S 6c Host Bridge/DRAM Controller 9b54 10th Gen Core Processor Host Bridge/DRAM Registers 9b61 Comet Lake-U v1 4c Host Bridge/DRAM Controller + 9b63 10th Gen Core Processor Host Bridge/DRAM Registers 9b64 10th Gen Core Processor Host Bridge/DRAM Registers - 9bc4 UHD Graphics - 9bc8 UHD Graphics 630 + 9bc4 CometLake-H GT2 [UHD Graphics] + 9bc5 CometLake-S GT2 [UHD Graphics 630] + 9bc8 CometLake-S GT2 [UHD Graphics 630] + 9bca Comet Lake UHD Graphics 9c00 8 Series SATA Controller 1 [IDE mode] 9c01 8 Series SATA Controller 1 [IDE mode] 9c02 8 Series SATA Controller 1 [AHCI mode] @@ -31585,6 +32336,7 @@ 9d03 Sunrise Point-LP SATA Controller [AHCI mode] 1025 115f Acer Aspire E5-575G 1028 06dc Latitude E7470 + 1028 06e6 Latitude 11 5175 2-in-1 1028 06f3 Latitude 3570 103c 8079 EliteBook 840 G3 17aa 225d ThinkPad T480 @@ -31600,6 +32352,7 @@ 9d16 Sunrise Point-LP PCI Express Root Port #7 9d17 Sunrise Point-LP PCI Express Root Port #8 9d18 Sunrise Point-LP PCI Express Root Port #9 + 17aa 2247 ThinkPad T570 17aa 382a B51-80 Laptop 9d19 Sunrise Point-LP PCI Express Root Port #10 9d1a Sunrise Point-LP PCI Express Root Port #11 @@ -31607,8 +32360,10 @@ 1025 115f Acer Aspire E5-575G 1028 06d6 Latitude 7275 tablet 1028 06dc Latitude E7470 + 1028 06e6 Latitude 11 5175 2-in-1 1028 06f3 Latitude 3570 103c 8079 EliteBook 840 G3 + 17aa 2247 ThinkPad T570 17aa 224f ThinkPad X1 Carbon 5th Gen 17aa 225d ThinkPad T480 17aa 382a B51-80 Laptop @@ -31616,6 +32371,7 @@ 1025 115f Acer Aspire E5-575G 1028 06d6 Latitude 7275 tablet 1028 06dc Latitude E7470 + 1028 06e6 Latitude 11 5175 2-in-1 1028 06f3 Latitude 3570 103c 8079 EliteBook 840 G3 17aa 2247 ThinkPad T570 @@ -31631,6 +32387,7 @@ 1025 115f Acer Aspire E5-575G 1028 06d6 Latitude 7275 tablet 1028 06dc Latitude E7470 + 1028 06e6 Latitude 11 5175 2-in-1 1028 06f3 Latitude 3570 103c 8079 EliteBook 840 G3 17aa 2247 ThinkPad T570 @@ -31640,6 +32397,7 @@ 1025 115f Acer Aspire E5-575G 1028 06d6 Latitude 7275 tablet 1028 06dc Latitude E7470 + 1028 06e6 Latitude 11 5175 2-in-1 1028 06f3 Latitude 3570 103c 8079 EliteBook 840 G3 17aa 2247 ThinkPad T570 @@ -31648,12 +32406,15 @@ 17aa 382a B51-80 Laptop 9d32 CSI-2 Host Controller 1028 06d6 Latitude 7275 tablet + 1028 06e6 Latitude 11 5175 2-in-1 9d35 Sunrise Point-LP Integrated Sensor Hub 1028 06d6 Latitude 7275 tablet + 1028 06e6 Latitude 11 5175 2-in-1 9d3a Sunrise Point-LP CSME HECI #1 1025 115f Acer Aspire E5-575G 1028 06d6 Latitude 7275 tablet 1028 06dc Latitude E7470 + 1028 06e6 Latitude 11 5175 2-in-1 1028 06f3 Latitude 3570 103c 8079 EliteBook 840 G3 17aa 2247 ThinkPad T570 @@ -31662,14 +32423,17 @@ 17aa 382a B51-80 Laptop 9d3d Sunrise Point-LP Active Management Technology - SOL 103c 8079 EliteBook 840 G3 + 17aa 2247 ThinkPad T570 9d43 Sunrise Point-LP LPC Controller 17aa 382a B51-80 Laptop 9d46 LPC/eSPI Controller 1028 06d6 Latitude 7275 tablet + 1028 06e6 Latitude 11 5175 2-in-1 9d48 Sunrise Point-LP LPC Controller 1028 06dc Latitude E7470 1028 06f3 Latitude 3570 103c 8079 EliteBook 840 G3 + 17aa 2247 ThinkPad T570 9d4e Sunrise Point LPC Controller/eSPI Controller 17aa 225d ThinkPad T480 9d50 Sunrise Point LPC Controller @@ -31681,14 +32445,17 @@ 9d60 Sunrise Point-LP Serial IO I2C Controller #0 1025 115f Acer Aspire E5-575G 1028 06d6 Latitude 7275 tablet + 1028 06e6 Latitude 11 5175 2-in-1 1028 06f3 Latitude 3570 103c 8079 EliteBook 840 G3 17aa 225d ThinkPad T480 8086 9d60 100 Series PCH/Sunrise Point PCH I2C0 [Skylake/Kaby Lake LPSS I2C] 9d61 Sunrise Point-LP Serial IO I2C Controller #1 1028 06d6 Latitude 7275 tablet + 1028 06e6 Latitude 11 5175 2-in-1 9d62 Sunrise Point-LP Serial IO I2C Controller #2 1028 06d6 Latitude 7275 tablet + 1028 06e6 Latitude 11 5175 2-in-1 9d63 Sunrise Point-LP Serial IO I2C Controller #3 9d64 Sunrise Point-LP Serial IO I2C Controller #4 9d65 Sunrise Point-LP Serial IO I2C Controller #5 @@ -31696,8 +32463,10 @@ 9d70 Sunrise Point-LP HD Audio 1028 06d6 Latitude 7275 tablet 1028 06dc Latitude E7470 + 1028 06e6 Latitude 11 5175 2-in-1 1028 06f3 Latitude 3570 103c 8079 EliteBook 840 G3 + 17aa 2247 ThinkPad T570 17aa 382a B51-80 Laptop 9d71 Sunrise Point-LP HD Audio 1025 1094 Acer Aspire E5-575G @@ -31763,6 +32532,7 @@ a0a9 Tiger Lake-LP Serial IO UART Controller #1 a0ab Tiger Lake-LP Serial IO SPI Controller #1 a0b0 Tiger Lake-LP PCI Express Root Port #9 + a0bd Tigerlake PCH-LP PCI Express Root Port #6 a0bf Tiger Lake-LP PCI Express Root Port #8 a0c5 Tiger Lake-LP Serial IO I2C Controller #4 a0c6 Tiger Lake-LP Serial IO I2C Controller #5 @@ -31950,16 +32720,20 @@ a252 Lewisburg SSATA Controller [AHCI mode] a256 Lewisburg SSATA Controller [RAID mode] a282 200 Series PCH SATA controller [AHCI mode] + 1462 7a72 H270 PC MATE a286 200 Series PCH SATA controller [RAID mode] a290 200 Series PCH PCI Express Root Port #1 a291 200 Series PCH PCI Express Root Port #2 a292 200 Series PCH PCI Express Root Port #3 a293 200 Series PCH PCI Express Root Port #4 a294 200 Series PCH PCI Express Root Port #5 + 1462 7a72 H270 PC MATE a295 200 Series PCH PCI Express Root Port #6 a296 200 Series PCH PCI Express Root Port #7 + 1462 7a72 H270 PC MATE a297 200 Series PCH PCI Express Root Port #8 a298 200 Series PCH PCI Express Root Port #9 + 1462 7a72 H270 PC MATE a299 200 Series PCH PCI Express Root Port #10 a29a 200 Series PCH PCI Express Root Port #11 a29b 200 Series PCH PCI Express Root Port #12 @@ -31969,7 +32743,9 @@ a29f 200 Series PCH PCI Express Root Port #16 a2a0 200 Series/Z370 Chipset Family P2SB a2a1 200 Series/Z370 Chipset Family Power Management Controller + 1462 7a72 H270 PC MATE a2a3 200 Series/Z370 Chipset Family SMBus Controller + 1462 7a72 H270 PC MATE a2a4 200 Series/Z370 Chipset Family SPI Controller a2a5 200 Series/Z370 Chipset Family Gigabit Ethernet Controller a2a6 200 Series/Z370 Chipset Family Trace Hub @@ -31978,10 +32754,14 @@ a2a9 200 Series/Z370 Chipset Family Serial IO SPI Controller #0 a2aa 200 Series/Z370 Chipset Family Serial IO SPI Controller #1 a2af 200 Series/Z370 Chipset Family USB 3.0 xHCI Controller + 1462 7a72 H270 PC MATE a2b1 200 Series PCH Thermal Subsystem + 1462 7a72 H270 PC MATE a2ba 200 Series PCH CSME HECI #1 + 1462 7a72 H270 PC MATE a2bb 200 Series PCH CSME HECI #2 a2c4 200 Series PCH LPC Controller (H270) + 1462 7a72 H270 PC MATE a2c5 200 Series PCH LPC Controller (Z270) a2c6 200 Series PCH LPC Controller (Q270) a2c7 200 Series PCH LPC Controller (Q250) @@ -32003,6 +32783,8 @@ a2ed 200 Series PCH PCI Express Root Port #23 a2ee 200 Series PCH PCI Express Root Port #24 a2f0 200 Series PCH HD Audio + 1462 7a72 H270 PC MATE + 1462 fa72 H270 PC MATE a304 H370 Chipset LPC/eSPI Controller 1028 0869 Vostro 3470 a305 Z390 Chipset LPC/eSPI Controller @@ -32016,6 +32798,7 @@ a324 Cannon Lake PCH SPI Controller 1028 0869 Vostro 3470 a328 Cannon Lake PCH Serial IO UART Host Controller + a32b Cannon Lake PCH SPI Host Controller a32c Cannon Lake PCH PCI Express Root Port #21 a32d Cannon Lake PCH PCI Express Root Port #22 a32e Cannon Lake PCH PCI Express Root Port #23 @@ -32056,12 +32839,15 @@ a36d Cannon Lake PCH USB 3.1 xHCI Host Controller 1028 0869 Vostro 3470 a36f Cannon Lake PCH Shared SRAM - a370 Wireless-AC 9560 [Jefferson Peak] + a370 Cannon Lake PCH CNVi WiFi 1a56 1552 Killer(R) Wireless-AC 1550i Wireless Network Adapter (9560NGW) + 8086 0034 Wireless-AC 9560 a379 Cannon Lake PCH Thermal Controller 1028 0869 Vostro 3470 a382 400 Series Chipset Family SATA AHCI Controller + a3a1 Memory controller a3a3 Comet Lake PCH-V SMBus Host Controller + a3af Comet Lake PCH-V USB Controller a3b1 Comet Lake PCH-V Thermal Subsystem a620 6400/6402 Advanced Memory Buffer (AMB) abc0 Omni-Path Fabric Switch Silicon 100 Series @@ -32102,29 +32888,60 @@ d157 Core Processor System Control and Status Registers d158 Core Processor Miscellaneous Registers f1a5 SSD 600P Series +# M.2 22 x 80mm, NVMe + 8086 390a SSDPEKKW256G7 256GB f1a6 SSD Pro 7600p/760p/E 6100p Series 8086 390b SSD Pro 7600p/760p/E 6100p Series [NVM Express] f1a8 SSD 660P Series 8088 Beijing Wangxun Technology Co., Ltd. 0101 WX1860A2 Gigabit Ethernet Controller 8088 0201 Dual-Port Ethernet Network Adaptor SF200T + 8088 4201 Dual-Port Ethernet Network Adaptor SF200T (WOL) + 8088 8201 Dual-Port Ethernet Network Adaptor SF200T (NCSI) + 8088 c201 Dual-Port Ethernet Network Adaptor SF200T (WOL, NCSI) 0102 WX1860A2S Gigabit Ethernet Controller 8088 0210 Dual-Port Ethernet Network Adaptor SF200T-S 0103 WX1860A4 Gigabit Ethernet Controller 8088 0401 Qual-Port Ethernet Network Adaptor SF400T 8088 0440 Qual-Port Ethernet Network Adaptor SF400-OCP + 8088 4103 Quad-Port Ethernet Network Adaptor SF400T (WOL) + 8088 8103 Quad-Port Ethernet Network Adaptor SF400T (NCSI) + 8088 c103 Quad-Port Ethernet Network Adaptor SF400T (WOL, NCSI) 0104 WX1860A4S Gigabit Ethernet Controller 8088 0410 Qual-Port Ethernet Network Adaptor SF400T-S 0105 WX1860AL2 Gigabit Ethernet Controller 8088 0202 Dual-Port Ethernet Network Adaptor SF200HT + 8088 4202 Dual-Port Ethernet Network Adaptor SF200HT (WOL) + 8088 8202 Dual-Port Ethernet Network Adaptor SF200HT (NCSI) + 8088 c202 Dual-Port Ethernet Network Adaptor SF200HT (WOL, NCSI) 0106 WX1860AL2S Gigabit Ethernet Controller 8088 0220 Dual-Port Ethernet Network Adaptor SF200HT-S 0107 WX1860AL4 Gigabit Ethernet Controller 8088 0402 Qual-Port Ethernet Network Adaptor SF400HT + 8088 4402 Quad-Port Ethernet Network Adaptor SF400HT (WOL) + 8088 8402 Quad-Port Ethernet Network Adaptor SF400HT (NCSI) + 8088 c402 Quad-Port Ethernet Network Adaptor SF400HT (WOL, NCSI) 0108 WX1860AL4S Gigabit Ethernet Controller 8088 0420 Qual-Port Ethernet Network Adaptor SF400HT-S + 0109 WX1860-LC Gigabit Ethernet Controller + 010a WX1860A1 Gigabit Ethernet Controller +# add new device ID + 010b WX1860AL1 Gigabit Ethernet Controller + 8088 0102 Single-Port Ethernet Network Adaptor SF100HT + 8088 4102 Single-Port Ethernet Network Adaptor SF100HT (WOL) + 8088 8102 Single-Port Ethernet Network Adaptor SF100HT (NCSI) + 8088 c102 Single-Port Ethernet Network Adaptor SF100HT (WOL, NCSI) + 0111 WX1860A2 Ethernet Controller Virtual Function + 0113 WX1860A4 Ethernet Controller Virtual Function + 0115 WX1860AL2 Ethernet Controller Virtual Function + 0117 WX1860AL4 Ethernet Controller Virtual Function + 0119 WX1860-LC Gigabit Ethernet Controller Virtual Function + 011a WX1860A1 Gigabit Ethernet Controller Virtual Function + 011b WX1860AL1 Gigabit Ethernet Controller Virtual Function + 1000 Ethernet Controller RP1000 Virtual Function for 10GbE SFP+ 1001 Ethernet Controller RP1000 for 10GbE SFP+ 8088 0000 Ethernet Network Adaptor RP1000 for 10GbE SFP+ + 2000 Ethernet Controller RP2000 Virtual Function for 10GbE SFP+ 2001 Ethernet Controller RP2000 for 10GbE SFP+ 8088 2000 Ethernet Network Adaptor RP2000 for 10GbE SFP+ 80ee InnoTek Systemberatung GmbH @@ -32138,6 +32955,8 @@ 1011 vSMP Foundation MEX/FLX controller [vSMP CTL] 8800 Trigem Computer Inc. 2008 Video assistant component +8820 Stryker Corporation + 2724 Mako Front Side Motor Controller [cPCI] 8866 T-Square Design Inc. 8888 Silicon Magic 8912 TRX @@ -32647,6 +33466,7 @@ 0001 SG2010 PCI over Starfabric Bridge 0002 SG2010 PCI to Starfabric Gateway 0003 SG1010 Starfabric Switch and PCI Bridge +9a11 Tiger Lake-H Gaussian & Neural Accelerator 9d32 Beijing Starblaze Technology Co. Ltd. 0000 STAR1000 PCIe NVMe SSD Controller 1001 STAR1000P PCIe NVMe SSD Controller @@ -32743,6 +33563,7 @@ bdbd Blackmagic Design c001 TSI Telsys c0a9 Micron/Crucial Technology 2263 P1 NVMe PCIe SSD + 540a P2 NVMe PCIe SSD c0de Motorola c0fe Motion Engineering, Inc. ca3b Cambrionix Ltd. @@ -32866,7 +33687,7 @@ deda XIMEA 4021 MT camera e000 Winbond e000 W89C940 -e159 Tiger Jet Network Inc. +e159 Tiger Jet Network Inc. / ICP DAS 0001 Tiger3XX Modem/ISDN interface 0059 0001 128k ISDN-S/T Adapter 0059 0003 128k ISDN-U Adapter @@ -32897,6 +33718,7 @@ ea01 Eagle Technology 0046 PCI-766 Analog Output Card 0052 PCI-703 Analog I/O Card 0800 PCI-800 Digital I/O Card +ea50 Emerson Automation Solutions # The main chip of all these devices is by Xilinx -> It could also be a Xilinx ID. ea60 RME 9896 Digi32 @@ -33010,6 +33832,7 @@ f1d0 AJA Video eb23 Kona 1 eb24 Kona HDMI eb25 Corvid 44 12g + eb26 T-Tap Pro efac Xena SD-MM/SD-22-MM facd Xena HD-MM f5f5 F5 Networks, Inc. @@ -33166,6 +33989,9 @@ C 08 Generic system peripheral 05 SD Host controller 06 IOMMU 80 System peripheral + 99 Timing Card +# PTP Grandmaster Source Clock + 01 TAP Timing Card C 09 Input device controller 00 Keyboard controller 01 Digitizer Pen diff --git a/src/hwdata/usb.ids b/src/hwdata/usb.ids index 02e2ef420..a578a525e 100644 --- a/src/hwdata/usb.ids +++ b/src/hwdata/usb.ids @@ -9,8 +9,8 @@ # The latest version can be obtained from # http://www.linux-usb.org/usb.ids # -# Version: 2020.08.26 -# Date: 2020-08-26 20:34:09 +# Version: 2021.06.06 +# Date: 2021-06-06 20:34:10 #
# Vendors, devices and interfaces. Please keep sorted. @@ -593,6 +593,7 @@ 6217 Color LaserJet 4700 6302 PhotoSmart 318/612 6317 Color LaserJet 4730mfp + 632a LaserJet M203-M206 6402 PhotoSmart 715 (ptp) 6411 PhotoSmart C8100 series 6417 LaserJet 5200 @@ -781,6 +782,7 @@ 5642 Storage Device 5661 M5661 MP3 player 5667 M5667 MP3 player + 8841 Newmine Camera 9665 Gateway Webcam 0403 Future Technology Devices International, Ltd 0000 H4SMK 7 Port Hub / Bricked Counterfeit FT232 Serial (UART) IC @@ -798,6 +800,7 @@ 6014 FT232H Single HS USB-UART/FIFO IC 6015 Bridge(I2C/SPI/UART/FIFO) 601f Myriad-RF LimeSDR-Mini + 6ee0 EZO Carrier Board 6f70 HB-RF-USB 8028 Dev board JTAG (FT232H based) 8040 4 Port Hub @@ -820,8 +823,10 @@ 9090 SNAP Stick 200 9132 LCD and Temperature Interface 9133 CallerID + 9134 Virtual keyboard 9135 Rotary Pub alarm 9136 Pulsecounter + 9137 Ledbutton interface 9e90 Marvell OpenRD Base/Client 9f08 CIB-1894 Conclusion SmartLink Box: 9f80 Ewert Energy Systems CANdapter @@ -925,6 +930,7 @@ f7c0 ZeitControl Cardsystems TagTracer MIFARE f850 USB-UIRT (Universal Infrared Receiver+Transmitter) f918 Ant8 Logic Probe + f9d9 Wetterempfanger 147.3kHz fa00 Matrix Orbital USB Serial fa01 Matrix Orbital MX2 or MX3 fa02 Matrix Orbital MX4 or MX5 @@ -1014,6 +1020,7 @@ 00c0 Wireless Remocon 00f7 Smart Display PK-SD10 011d e228 Mobile Phone + 0193 RVT-R Writer 0203 HID Audio Controls 021d Aterm WL54SU2 802.11g Wireless Adapter [Atheros AR5523] 0248 Aterm PA-WL54GU @@ -1374,6 +1381,7 @@ 3220 Sound Blaster Tactic(3D) Sigma sound card 3232 Sound Blaster Premium HD [SBX] 3237 SB X-Fi Surround 5.1 Pro + 3241 Sound Blaster JAM 3263 SB X-Fi Surround 5.1 Pro 3f00 E-Mu Xboard 25 MIDI Controller 3f02 E-Mu 0202 @@ -1441,6 +1449,7 @@ 4088 Live! Cam Chat HD [VF0700] 4095 Live! Cam Sync HD [VF0770] 4097 Live! Cam Chat HD [VF0700] + 4099 Creative VF0800 [RealSense Camera SR300] 4100 Nomad Jukebox 2 4101 Nomad Jukebox 3 4102 NOMAD MuVo^2 @@ -1523,6 +1532,7 @@ 0155 5800 XpressMusic (Multimedia mode) 0156 5800 XpressMusic (Storage mode) 0157 5800 XpressMusic (Imaging mode) + 0189 N810 Internet Tablet WiMAX 0199 6700 Classic (msc) 019a 6700 Classic (PC Suite) 019b 6700 Classic (mtp) @@ -1530,7 +1540,7 @@ 01b1 6303 classic Phone (Mass storage mode) 01b2 6303 classic Phone (Printing and media mode) 01c7 N900 (Storage Mode) - 01c8 N900 (PC-Suite Mode) + 01c8 N900/N950 (PC-Suite Mode) 0228 5530 XpressMusic 023a 6730 Classic 026a N97 (mass storage) @@ -1550,7 +1560,8 @@ 03c1 C7-00 (Media transfer mode) 03c2 Sim 03cd C7-00 (Nokia Suite mode) - 03d1 N950 + 03d1 N950 (Storage Mode) + 03d2 N950 (PC Suite mode) 0400 7600 Phone Parent 0401 6650 GSM Phone 0402 6255 Phone Parent @@ -1581,7 +1592,7 @@ 0423 6682 Phone Parent 0428 6230i Modem 0429 6230i MultiMedia Card - 0431 770 Internet Tablet + 0431 770/N800 Internet Tablet 0432 N90 Phone Parent 0435 E70 (IP Passthrough/RNDIS mode) 0436 E60 (IP Passthrough/RNDIS mode) @@ -1615,7 +1626,9 @@ 04f9 6300 (PC Suite mode) 0508 E65 (PC Suite mode) 0509 E65 (Storage mode) - 0518 N9 Phone + 0518 N9 (Storage mode) + 0519 N9 (RNDIS/Ethernet mode) + 051a N9 (PC Suite mode) 054d C2-01 0600 Digital Pen SU-1B 0610 CS-15 (Internet Stick 3G modem) @@ -2000,6 +2013,7 @@ b651 Ferrari GT Rumble Force Wheel b653 RGT Force Feedback Clutch Racing Wheel b654 Ferrari GT Force Feedback Wheel + b677 T150 Racing Wheel b678 T.Flight Rudder Pedals b679 T-Rudder b687 TWCS Throttle @@ -2528,6 +2542,7 @@ 09a0 RTL8153B GigE [Surface Ethernet Adapter] 09c0 Surface Type Cover 0a00 Lumia 950 Dual SIM (RM-1118) + 0b12 Xbox Wireless Controller (model 1914) 930a ISOUSB.SYS Intel 82930 Isochronous IO Test Board ffca Catalina fff8 Keyboard @@ -2679,11 +2694,18 @@ 0837 BCC950 ConferenceCam 0840 QuickCam Express 0843 Webcam C930e + 0845 ConferenceCam CC3000e Camera + 0846 ConferenceCam CC3000e Speakerphone + 084b ConferenceCam Connect Video 0850 QuickCam Web + 0857 Logi Group Speakerphone 085c C922 Pro Stream Webcam + 085e BRIO Ultra HD Webcam 0870 QuickCam Express + 0882 Logi Group Speakerphone 0890 QuickCam Traveler - 0892 OrbiCam + 0892 C920 HD Pro Webcam + 0893 StreamCam 0894 CrystalCam 0895 QuickCam for Dell Notebooks 0896 OrbiCam @@ -2792,6 +2814,7 @@ 0a5b G933 Wireless Headset Dongle 0a5d G933 Headset Battery Charger 0a66 [G533 Wireless Headset Dongle] + 0a8f H390 headset with microphone 0b02 C-UV35 [Bluetooth Mini-Receiver] (HID proxy mode) 8801 Video Camera b014 Bluetooth Mouse M336/M337/M535 @@ -2871,6 +2894,7 @@ c083 G403 Prodigy Gaming Mouse c084 G203 Gaming Mouse c08b G502 SE HERO Gaming Mouse + c092 G203 LIGHTSYNC Gaming Mouse c101 UltraX Media Remote c110 Harmony 785/880/885 Remote c111 Harmony 525 Remote @@ -2930,6 +2954,7 @@ c24e G500s Laser Gaming Mouse c24f G29 Driving Force Racing Wheel [PS3] c260 G29 Driving Force Racing Wheel [PS4] + c262 G920 Driving Force Racing Wheel c281 WingMan Force c283 WingMan Force 3D c285 WingMan Strike Force 3D @@ -2977,6 +3002,7 @@ c332 G502 Proteus Spectrum Optical Mouse c335 G910 Orion Spectrum Mechanical Keyboard c33a G413 Gaming Keyboard + c33f G815 Mechanical Keyboard c401 TrackMan Marble Wheel c402 Marble Mouse (2-button) c403 Turbo TrackMan Marble FX @@ -3017,6 +3043,7 @@ c534 Unifying Receiver c537 Cordless Mouse Receiver c53a PowerPlay Wireless Charging System + c53d G631 Keyboard c603 3Dconnexion Spacemouse Plus XT c605 3Dconnexion CADman c606 3Dconnexion Spacemouse Classic @@ -3297,6 +3324,8 @@ 5001 Cabo I Camera 5002 VideoCam CABO II 5003 VideoCam + 8018 Expert Wireless Trackball Mouse (K72359WW) + 8068 Pro Fit Ergo Vertical Wireless Trackball 047e Agere Systems, Inc. (Lucent) 0300 ORiNOCO Card 1001 USS720 Parallel Port @@ -3317,6 +3346,7 @@ c008 Audio 655 DSP c00e Blackwire C310 headset c03b HD1 + ca01 Calisto 800 Series da60 DA60 0480 Toshiba America Inc 0001 InTouch Module @@ -3358,6 +3388,7 @@ 0408 FS-1320D Printer 0640 ECOSYS M6026cdn 069b ECOSYS M2635dn + 06b4 ECOSYS M5526cdw 0483 STMicroelectronics 0137 BeWAN ADSL USB ST (blue or green) 0138 Unicorn II (ST70138B + MTC-20174TQ chipset) @@ -3696,6 +3727,7 @@ 04ac Xerox Travel Scanner 100 04bb strobe 400 scanner 04cd Xerox Travel Scanner 150 + 04ee Duplex Combo Scanner 04a8 Multivideo Labs, Inc. 0101 Hub 0303 Peripheral Switch @@ -3902,6 +3934,7 @@ 190d CanoScan 9000F Mark II 190e CanoScan LiDE 120 190f CanoScan LiDE 220 + 1913 CanoScan LiDE 300 2200 CanoScan LiDE 25 2201 CanoScan FB320U 2202 CanoScan FB620U @@ -4363,6 +4396,7 @@ 32b4 EOS Rebel T6 32bb EOS M5 32bf PowerShot SX420 IS + 32c0 PowerShot ELPH 190IS 32c1 PowerShot ELPH 180 / IXUS 175 32c2 PowerShot SX720 HS 32c5 EOS M6 @@ -4439,6 +4473,8 @@ 040e DSC D70s (ptp) 040f D200 (mass storage mode) 0410 D200 (ptp) + 0411 D80 (mass storage mode) + 0412 D80 (MTP/PTP mode) 0413 D40 (mass storage mode) 041e D60 digital camera (mass storage mode) 0422 D700 (ptp) @@ -4492,6 +4528,7 @@ 04b4 Cypress Semiconductor Corp. 0001 Mouse 0002 CY7C63x0x Thermometer + 0008 CDC ACM serial port 0033 Mouse 0060 Wireless optical mouse 00f3 FX3 micro-controller (DFU mode) @@ -4501,6 +4538,7 @@ 0130 MyIRC Remote Receiver 0306 Telephone Receiver 0407 Optical Skype Mouse + 0818 AE-SMKD92-* [Thumb Keyboard] 0bad MetaGeek Wi-Spy 1002 CY7C63001 R100 FM Radio 1006 Human Interface Device @@ -4731,6 +4769,7 @@ 0e03 Thermal Receipt Printer [TM-T20] 1114 XP-440 [Expression Home Small-in-One Printer] 1129 ET-4750 [WorkForce ET-4750 EcoTank All-in-One] + 1168 Workforce WF-7820/7840 Series 04b9 Rainbow Technologies, Inc. 0300 SafeNet USB SuperPro/UltraPro 1000 iKey 1000 Token @@ -4848,6 +4887,7 @@ 11f3 fi-6130Z 125a PalmSecure Sensor Device - MP 132e fi-7160 + 159f ScanSnap iX1500 200f Sigma DP2 (Mass Storage) 2010 Sigma DP2 (PictBridge) 201d SATA 3.0 6Gbit/s Adaptor [GROOVY] @@ -4967,6 +5007,7 @@ 01d3 FinePix A920 (PTP) 01d4 FinePix F50fd (PTP) 01d5 FinePix F47 (PTP) + 01e7 Fujifilm A850 Digital Camera 01f7 FinePix J250 (PTP) 01fd A160 023e FinePix AX300 @@ -4974,6 +5015,7 @@ 0241 FinePix S3200 Digital Camera 0278 FinePix JV300 02c5 FinePix S9900W Digital Camera (PTP) + 02e0 X-T200 Digital Camera 5006 ASK-300 04cc ST-Ericsson 1122 Hub @@ -5063,6 +5105,7 @@ 0006 Wired Keyboard (78/79 key) [RPI Wired Keyboard 5] 0022 Portable Keyboard 0348 Keyboard + 0407 Keyboard [TEX Shinobi] 048e Optical Mouse 0499 Optical Mouse 1135 Mouse [MGK-15BU/MLK-15BU] @@ -5090,9 +5133,15 @@ a09f E-Signal LUOM G10 Mechanical Gaming Mouse a100 Mouse [HV-MS735] a11b Mouse [MX-3200] + a153 Optical Gaming Mouse a29f Microarray fingerprint reader b534 LGT8F328P Microprocessor e002 MCU + fc2a Gaming Mouse [Redragon M709] + fc30 Gaming Mouse [Redragon M711] + fc38 Gaming Mouse [Redragon M602-RGB] + fc4d Gaming Mouse [Redragon M908] + fc55 Venus MMO Gaming Mouse 04da Panasonic (Matsushita) 0901 LS-120 Camera 0912 SDR-S10 @@ -5598,6 +5647,7 @@ b1ac HP Laptop Integrated Webcam [2 MP Fixed] b1b4 Lenovo Integrated Camera b1b9 Asus Integrated Webcam + b1bb 2.0M UVC WebCam b1cf Lenovo Integrated Camera b1d6 CNF9055 Toshiba Webcam b1d8 1.3M Webcam @@ -5626,6 +5676,8 @@ b444 Lenovo Integrated Webcam b49f Bluetooth (RTL8723BE) b563 Integrated Camera + b5ab Integrated Camera + b5ac Integrated IR Camera b5ce Integrated Camera b5cf Integrated IR Camera b5db HP Webcam @@ -5647,6 +5699,7 @@ 02f4 2.4G Cordless Mouse 0381 Touchscreen 04a0 Dream Cheeky Stress/Panic Button + 0c28 fingerprint sensor [FeinTech FPS00200] 2234 Touchscreen 04f4 Harting Elektronik, Inc. 04f5 Fujitsu-ICL Systems, Inc. @@ -5691,6 +5744,8 @@ 002b HL-5250DN Printer 002c Printer 002d Printer + 0037 HL-3040CN series + 0038 HL-3070CW series 0039 HL-5340 series 0041 HL-2250DN Laser Printer 0042 HL-2270DW Laser Printer @@ -5871,6 +5926,7 @@ 01eb MFC-7320 01ec MFC-9640CW 01f4 MFC-5890CN + 0204 DCP-165C 020a MFC-8670DN 020c DCP-9042CDN 020d MFC-9450CDN @@ -6149,6 +6205,19 @@ 03bc MFC-L2700DN 03bd DCP-J762N 03fd ADS-2700W + 043f MFC-L3770CDW + 0440 MFC-9350CDW + 0441 MFC-L3750CDW + 0442 MFC-L3745CDW + 0443 MFC-L3735CDN + 0444 MFC-9150CDN + 0445 MFC-L3730CDN + 0446 MFC-L3710CW + 0447 DCP-9030CDN + 0448 DCP-L3550CDW + 044a HL-L3290CDW + 044b DCP-L3510CDW + 044c DCP-L3551CDW 1000 Printer 1002 Printer 2002 PTUSB Printing @@ -6173,6 +6242,7 @@ 204d QL-720NW Label Printer (mass storage mode) 2061 PT-P700 P-touch Label Printer 2064 PT-P700 P-touch Label Printer RemovableDisk + 2074 PT-D600 P-touch Label Printer 209b QL-800 Label Printer 209c QL-810W Label Printer 209d QL-820NWB Label Printer @@ -6433,12 +6503,14 @@ a4a2 Linux-USB Ethernet/RNDIS Gadget a4a3 Linux-USB user-mode isochronous source/sink a4a4 Linux-USB user-mode bulk source/sink - a4a5 Pocketbook Pro 903 / Mobius 2 Action Cam / xDuoo X3 / PocketBook Pro 602 + a4a5 Linux-USB File-backed Storage Gadget a4a6 Linux-USB Serial Gadget a4a7 Linux-USB Serial Gadget (CDC ACM mode) a4a8 Linux-USB Printer Gadget a4a9 Linux-USB OBEX Gadget a4aa Linux-USB CDC Composite Gadge (Ethernet and ACM) + a4ab Linux-USB Multifunction Composite Gadget + a4ac Linux-USB HID Gadget 0526 Temic MHS S.A. 0527 ALTRA 0528 ATI Technologies, Inc. @@ -6768,9 +6840,11 @@ 0689 Walkman NWZ-B173F 06bb WALKMAN NWZ-F805 06c3 RC-S380 + 07c3 ILCE-6000 (aka Alpha-6000) in Mass Storage mode 07c4 ILCE-6000 (aka Alpha-6000) in Mass Storage mode 082f Walkman NWZW Series 0847 WG-C10 Portable Wireless Server + 0877 UP-D898/X898 series 0884 MDR-ZX770BN [Wireless Noise Canceling Stereo Headset] 088c Portable Headphone Amplifier 08b7 ILCE-6000 (aka Alpha-6000) in MTP mode @@ -6782,8 +6856,12 @@ 0c02 ILCE-7M3 [A7III] in Mass Storage mode 0c03 ILCE-7M3 [A7III] in MTP mode 0c34 ILCE-7M3 [A7III] in PC Remote mode + 0c7f WH-CH700N [Wireless Noise-Canceling Headphones] 0cd3 WH-1000XM3 [Wireless Noise-Canceling Headphones] 0cda PlayStation Classic controller + 0ce0 WF-1000XM3 [Wireless Noise-Canceling Headphones] + 0cf0 MRW-G1 + 0d58 WH-1000XM4 [Wireless Noise-Canceling Headphones] 1000 Wireless Buzz! Receiver 054d Try Corp. 054e Proside Corp. @@ -6828,6 +6906,7 @@ 2213 CS682 2-Port USB 2.0 DVI KVM Switch 2221 Winbond Hermon 2404 4-port switch + 2419 Virtual mouse/keyboard device 2600 IDE Bridge 2701 CE700A KVM Extender 4000 DSB-650 10Mbps Ethernet [klsi] @@ -7158,7 +7237,19 @@ 0001 Monitor 0002 HID Monitor Controls 0003 Device Bay Controller + 4000 FlexScan EV3237 4001 Monitor + 4002 USB HID Monitor + 4014 FlexScan EV2750 + 4026 FlexScan EV2451 + 4027 FlexScan EV2456 + 4036 FlexScan EV2785 + 4037 FlexScan EV3285 + 4044 FlexScan EV2457 + 4059 FlexScan EV2760 + 405b FlexScan EV2460 + 405f FlexScan EV2795 + 4065 FlexScan EV3895 056e Elecom Co., Ltd 0002 29UO Mouse 0057 Micro Grast Pop M-PGDL @@ -7926,6 +8017,7 @@ 9230 Camera 9320 Camera 9331 Camera + 9332 Camera - 1080p 9422 Camera 9520 Camera 05a4 Ortek Technology, Inc. @@ -8146,6 +8238,7 @@ 8204 Built-in Bluetooth 2.0+EDR HCI 8205 Bluetooth HCI 8206 Bluetooth HCI + 8207 Built-in Bluetooth 820a Bluetooth HID Keyboard 820b Bluetooth HID Mouse 820f Bluetooth HCI @@ -8156,6 +8249,7 @@ 8218 Bluetooth Host Controller 821a Bluetooth Host Controller 821f Built-in Bluetooth 2.0+EDR HCI + 8233 iBridge 8240 Built-in IR Receiver 8241 Built-in IR Receiver 8242 Built-in IR Receiver @@ -8696,6 +8790,7 @@ f102 VX7012 TV Box f103 VX7012 TV Box f104 VX7012 TV Box + f12a Digital Microscope fd21 3M TL20 Temperature Logger fe00 Razer Mouse 05e4 Red Wing Corp. @@ -8752,6 +8847,7 @@ 05fc Harman 0001 Soundcraft Si Multi Digital Card 0010 Soundcraft Si MADI combo card + 0021 Soundcraft Signature 12 MTK 7849 Harman/Kardon SoundSticks 05fd InterAct, Inc. 0239 SV-239 HammerHead Digital @@ -8786,6 +8882,7 @@ 0002 Sino Wealth keyboard/mouse 2.4 GHz receiver 00f1 Keyboard (Labtec Ultra Flat Keyboard) 00f2 Keyboard (Labtec Ultra Flat Keyboard) + 1002 Mobius actioncam (webcam mode) 6871 Mouse 8611 NTK96550 based camera 0604 Jean Co., Ltd @@ -9487,6 +9584,12 @@ 00f7 OKI B4600 Mono Printer 015e OKIPOS 411/412 POS Printer 01c9 OKI B430 Mono Printer + 01db MC860 Multifunction Printer + 01dc MC860 Multifunction Printer + 01dd MC860 Multifunction Printer + 01de MC860 Multifunction Printer + 01df CX2633 Multifunction Printer + 01e0 ES8460 Multifunction Printer 020b OKI ES4140 Mono Printer 02bb OKI PT390 POS Printer 0383 MC563 Multifunction Printer @@ -20352,6 +20455,12 @@ 1101 Generic Display Device (Mass storage mode) c101 Generic Display Device 1de6 MICRORISC s.r.o. +1df7 SDRplay + 2500 RSP1 + 3000 RSP1a + 3010 RSP2/RSP2pro + 3020 RSPduo + 3030 RSPdx 1e0e Qualcomm / Option f000 iCON 210 UMTS Surfstick 1e10 Point Grey Research, Inc. @@ -22447,6 +22556,9 @@ 32b3 TEXA d1a6 TXT Multihub d1a7 TXT Multihub +3310 MUDITA Sp. z o.o. + 0100 Pure + 0101 Pure tethering 3333 InLine 3333 2 port KVM switch model 60652K 3334 AEI @@ -22458,6 +22570,9 @@ ffff Mio DigiWalker Sync 3344 Leaguer Microelectronics (LME) 3744 OEM PC Remote +3384 System76 + 0000 Thelio Io (thelio-io) + 0001 Launch Configurable Keyboard (launch_1) 348f ISY 2322 Wireless Presenter 3504 Micro Star diff --git a/src/initscripts/networking/red.down/10-miniupnpd b/src/initscripts/networking/red.down/10-miniupnpd deleted file mode 100644 index eaf2239e9..000000000 --- a/src/initscripts/networking/red.down/10-miniupnpd +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -[ -x /etc/init.d/miniupnpd ] && \ - /etc/init.d/miniupnpd stop &>/dev/null - -exit 0 diff --git a/src/initscripts/networking/red.up/10-miniupnpd b/src/initscripts/networking/red.up/10-miniupnpd deleted file mode 100644 index 54431331b..000000000 --- a/src/initscripts/networking/red.up/10-miniupnpd +++ /dev/null @@ -1,6 +0,0 @@ -#!/bin/bash - -[ -x /etc/init.d/miniupnpd ] && \ - /etc/init.d/miniupnpd start &>/dev/null - -exit 0 diff --git a/src/initscripts/packages/asterisk b/src/initscripts/packages/asterisk deleted file mode 100644 index ef5b5f9d5..000000000 --- a/src/initscripts/packages/asterisk +++ /dev/null @@ -1,69 +0,0 @@ -#!/bin/sh -######################################################################## -# Begin $rc_base/init.d/asterisk -# -# Description : Asterisk Script -# -# Authors : Michael Tremer (mitch@ipfire.org) -# -# Version : 01.00 -# -# Notes : -# -######################################################################## - -. /etc/sysconfig/rc -. ${rc_functions} - -case "${1}" in - start) - boot_mesg "Starting Asterisk PBX..." - loadproc /usr/sbin/asterisk -p - ;; - - stop) - boot_mesg "Stopping Asterisk PBX..." - asterisk -rx "core stop gracefully" >/dev/null 2>&1 - evaluate_retval - ;; - - reload) - boot_mesg "Reloading Asterisk PBX..." - asterisk -rx "reload" >/dev/null 2>&1 - evaluate_retval - ;; - - restart) - ${0} stop - sleep 1 - ${0} start - ;; - - status) - statusproc /usr/sbin/asterisk > /tmp/ast 2>&1 - STAT=$(cat /tmp/ast) - rm -f /tmp/ast - echo $STAT - EX_Z=$(echo $STAT | grep "not" | wc -l) - exit $EX_Z - ;; - - remod) - case "${2}" in - sip)asterisk -rx "sip reload" >/dev/null 2>&1 ;; - iax)asterisk -rx "iax2 reload" >/dev/null 2>&1 ;; - ext)asterisk -rx "dialplan reload" >/dev/null 2>&1 ;; - *) echo "Usage: ${0} remod {sip|iax|ext}"; exit 1 ;; - esac - ;; - - test) touch /tmp/test$$ - ;; - - *) - echo "Usage: ${0} {start|stop|reload|restart|status|remod}" - exit 1 - ;; -esac - -# End $rc_base/init.d/asterisk diff --git a/src/initscripts/packages/bluetooth b/src/initscripts/packages/bluetooth deleted file mode 100644 index e3ee1b130..000000000 --- a/src/initscripts/packages/bluetooth +++ /dev/null @@ -1,68 +0,0 @@ -#!/bin/sh -# Begin $rc_base/init.d/bluetooth - -# Based on sysklogd script from LFS-3.1 and earlier. -# Rewritten by Gerard Beekmans - gerard@linuxfromscratch.org - -. /etc/sysconfig/rc -. $rc_functions - -eval $(/usr/local/bin/readhash /var/ipfire/bluetooth/settings) - -case "$1" in - start) - boot_mesg "Starting Bluetooth daemon..." - loadproc /usr/sbin/hcid - sleep 1 - - if [ "$PASSKEY_AGENT" == "on" ]; then - boot_mesg "Starting Bluetooth passkey-agent..." - loadproc /usr/bin/passkey-agent --default $PWD & - fi - - if [ "$RFCOMM0_BIND" == "on" ]; then - boot_mesg "Bind rfcomm0 to cellphone/modem ${RFCOMM0_DEVICE//-/:}/$RFCOMM0_CHANNEL ..." - rfcomm bind /dev/rfcomm0 ${RFCOMM0_DEVICE//-/:} $RFCOMM0_CHANNEL - evaluate_retval - fi - if [ "$RFCOMM1_BIND" == "on" ]; then - boot_mesg "Bind rfcomm1 to cellphone/modem ${RFCOMM1_DEVICE//-/:}/${RFCOMM1_CHANNEL} ..." - rfcomm bind /dev/rfcomm1 ${RFCOMM1_DEVICE//-/:} $RFCOMM1_CHANNEL - evaluate_retval - fi - exit 0; - - ;; - - stop) - if [ -e /dev/rfcomm0 ]; then - boot_mesg "Release rfcomm0..." - rfcomm release rfcomm0 - fi - if [ -e /dev/rfcomm1 ]; then - boot_mesg "Release rfcomm1..." - rfcomm release rfcomm1 - fi - boot_mesg "Stopping Bluetooth daemon..." - killproc /usr/sbin/hcid - exit 0; - ;; - - restart) - $0 stop - sleep 1 - $0 start - ;; - - status) - statusproc /usr/sbin/hcid - statusproc /usr/bin/passkey-agent - ;; - - *) - echo "Usage: $0 {start|stop|restart|status}" - exit 1 - ;; -esac - -# End $rc_base/init.d/bluetooth diff --git a/src/initscripts/packages/dnsdist b/src/initscripts/packages/dnsdist index c94f429ab..35cc3c653 100644 --- a/src/initscripts/packages/dnsdist +++ b/src/initscripts/packages/dnsdist @@ -11,8 +11,22 @@
[ -r "/etc/sysconfig/dnsdist" ] && . /etc/sysconfig/dnsdist
+check_config() { + if ! /usr/bin/dnsdist --check-config >/dev/null; then + boot_mesg "dnsdist configuration file contains errors" "${FAILURE}" + echo_failure + return 1 + fi + + return 0 +} + case "${1}" in start) + if ! check_config; then + exit 1 + fi + boot_mesg "Starting dnsdist..."
# Increasing maximum number of open files @@ -29,11 +43,19 @@ case "${1}" in ;;
reload) + if ! check_config; then + exit 1 + fi + boot_mesg "Reloading dnsdist..." reloadproc /usr/bin/dnsdist ;;
restart) + if ! check_config; then + exit 1 + fi + ${0} stop sleep 1 ${0} start diff --git a/src/initscripts/packages/lcd4linux b/src/initscripts/packages/lcd4linux deleted file mode 100644 index 34f8c8b46..000000000 --- a/src/initscripts/packages/lcd4linux +++ /dev/null @@ -1,46 +0,0 @@ -#!/bin/sh -# Begin $rc_base/init.d/lcd4linux - - -. /etc/sysconfig/rc -. $rc_functions - -case "$1" in - start) - boot_mesg "Starting lcd4linux..." - if [ ! -f /etc/lcd4linux.conf ]; then - boot_mesg "No configuration file found, not starting." - exit 1 - fi - - loadproc /usr/bin/lcd4linux - ;; - - stop) - boot_mesg "Stopping lcd4linux..." - killproc /usr/bin/lcd4linux - ;; - - reload) - boot_mesg "Reloading lcd4linux..." - reloadproc /usr/bin/lcd4linux - ;; - - restart) - $0 stop - sleep 3 - $0 start - ;; - - status) - statusproc /usr/bin/lcd4linux - ;; - - *) - echo "Usage: $0 {start|stop|reload|restart|status}" - exit 1 - ;; -esac - - -# End $rc_base/init.d/lcd4linux diff --git a/src/initscripts/packages/miniupnpd b/src/initscripts/packages/miniupnpd deleted file mode 100644 index 1fd02a25a..000000000 --- a/src/initscripts/packages/miniupnpd +++ /dev/null @@ -1,69 +0,0 @@ -#!/bin/sh -######################################################################## -# Begin $rc_base/init.d/miniupnpd -# -# Description : Miniupnp daemon -# -# Authors : Michael Tremer michael.tremer@ipfire.org -# -######################################################################## - -. /etc/sysconfig/rc -. ${rc_functions} - -if [ ! -e /etc/miniupnpd/id ]; then - uuidgen > /etc/miniupnpd/id -fi - -UUID=$(cat /etc/miniupnpd/id) - -EXT_DEV=$(cat /var/ipfire/red/iface) -EXT_IP4=$(cat /var/ipfire/red/local-ipaddress) - -. /var/ipfire/ethernet/settings - -for i in GREEN_ADDRESS BLUE_ADDRESS; do - [ -n "${!i}" ] && LISTEN_IP="${LISTEN_IP} -a ${!i}" -done - -function flush_iptables() { - # Flush iptables to remove all entries that were left - iptables -F UPNPFW - iptables -t nat -F UPNPFW -} - -case "${1}" in - start) - boot_mesg "Starting miniupnpd..." - - flush_iptables - - loadproc miniupnpd -f /etc/miniupnpd/miniupnpd.conf \ - -i ${EXT_DEV} -o ${EXT_IP4} ${LISTEN_IP} \ - -u ${UUID} - ;; - - stop) - boot_mesg "Stopping miniupnpd..." - killproc miniupnpd - - flush_iptables - ;; - - restart) - ${0} stop - sleep 1 - ${0} start - ;; - - status) - statusproc miniupnpd - ;; - - *) - echo "Usage: ${0} {start|stop|restart|status}" - exit 1 - ;; -esac - -# End $rc_base/init.d/miniupnpd diff --git a/src/initscripts/packages/motion b/src/initscripts/packages/motion deleted file mode 100644 index f5fa9c677..000000000 --- a/src/initscripts/packages/motion +++ /dev/null @@ -1,42 +0,0 @@ -#!/bin/sh - -. /etc/sysconfig/rc -. $rc_functions - -case "$1" in - start) - boot_mesg "Starting motion webcam server..." - if [ ! -e /dev/video0 ]; then - boot_mesg "Error! No video input device found." - echo_failure - #No 3 min wait - exit 0; - fi - chown :video /dev/video* - mkdir -p /var/motion/cam1 - chown -R video: /var/motion/cam1 - loadproc sudo -u video /usr/bin/motion - ;; - - stop) - boot_mesg "Stopping motion webcam server..." - killproc /usr/bin/motion - ;; - - restart) - $0 stop - sleep 1 - $0 start - ;; - - status) - statusproc /usr/bin/motion - ;; - - *) - echo "Usage: $0 {start|stop|restart|status}" - exit 1 - ;; -esac - -# End $rc_base/init.d/motion diff --git a/src/initscripts/packages/sane b/src/initscripts/packages/sane deleted file mode 100644 index 6b391e9d8..000000000 --- a/src/initscripts/packages/sane +++ /dev/null @@ -1,44 +0,0 @@ -#!/bin/sh -######################################################################## -# Begin $rc_base/init.d/sane -# -# Description : Sane Network deamon -# -# Authors : Arne Fitzenreiter (arne_f@ipfire.org) -# -# Version : 01.00 -# -######################################################################## - -. /etc/sysconfig/rc -. ${rc_functions} - -case "${1}" in - start) - boot_mesg "Starting saned - network scanner deamon..." - loadproc /usr/sbin/saned -lD - evaluate_retval - ;; - - stop) - boot_mesg "Stopping saned - network scanner deamon..." - killproc /usr/sbin/saned - ;; - - restart) - ${0} stop - sleep 1 - ${0} start - ;; - - status) - statusproc /usr/sbin/saned - ;; - - *) - echo "Usage: ${0} {start|stop|restart|status}" - exit 1 - ;; -esac - -# End $rc_base/init.d/sane diff --git a/src/initscripts/system/firewall b/src/initscripts/system/firewall index 65f1c979b..1e558ee86 100644 --- a/src/initscripts/system/firewall +++ b/src/initscripts/system/firewall @@ -98,74 +98,11 @@ iptables_init() { iptables -t raw -N CONNTRACK iptables -t raw -A PREROUTING -j CONNTRACK
- # Conntrack helpers (https://home.regit.org/netfilter-en/secure-use-of-helpers/) + # Conntrack helper (https://home.regit.org/netfilter-en/secure-use-of-helpers/)
# GRE (always enabled) modprobe nf_conntrack_proto_gre
- # SIP - if [ "${CONNTRACK_SIP}" = "on" ]; then - modprobe nf_nat_sip - iptables -A CONNTRACK -m conntrack --ctstate RELATED \ - -m helper --helper sip -j ACCEPT - for proto in udp tcp; do - iptables -t raw -A CONNTRACK -p "${proto}" --dport 5060 -j CT --helper sip - done - fi - - # H.323 - if [ "${CONNTRACK_H323}" = "on" ]; then - modprobe nf_nat_h323 - iptables -A CONNTRACK -m conntrack --ctstate RELATED \ - -m helper --helper h323 -j ACCEPT - - # Gatekeeper RAS - iptables -t raw -A CONNTRACK -p udp --dport 1719 -j CT --helper RAS - - # Q.931 - iptables -t raw -A CONNTRACK -p tcp --dport 1720 -j CT --helper Q.931 - fi - - # FTP - if [ "${CONNTRACK_FTP}" = "on" ]; then - modprobe nf_nat_ftp - iptables -A CONNTRACK -m conntrack --ctstate RELATED \ - -m helper --helper ftp -p tcp --dport 1024: -j ACCEPT - iptables -t raw -A CONNTRACK -p tcp --dport 21 -j CT --helper ftp - fi - - # PPTP - if [ "${CONNTRACK_PPTP}" = "on" ]; then - modprobe nf_nat_pptp - iptables -A CONNTRACK -m conntrack --ctstate RELATED \ - -m helper --helper pptp -j ACCEPT - iptables -t raw -A CONNTRACK -p tcp --dport 1723 -j CT --helper pptp - fi - - # TFTP - if [ "${CONNTRACK_TFTP}" = "on" ]; then - modprobe nf_nat_tftp - iptables -A CONNTRACK -m conntrack --ctstate RELATED \ - -m helper --helper tftp -j ACCEPT - iptables -t raw -A CONNTRACK -p udp --dport 69 -j CT --helper tftp - fi - - # IRC - if [ "${CONNTRACK_IRC}" = "on" ]; then - modprobe nf_nat_irc - iptables -A CONNTRACK -m conntrack --ctstate RELATED \ - -m helper --helper irc -j ACCEPT - iptables -t raw -A CONNTRACK -p tcp --dport 6667 -j CT --helper irc - fi - - # Amanda - if [ "${CONNTRACK_AMANDA}" = "on" ]; then - modprobe nf_nat_amanda - iptables -A CONNTRACK -m conntrack --ctstate RELATED \ - -m helper --helper amanda -j ACCEPT - iptables -t raw -A CONNTRACK -p tcp -j CT --helper amanda - fi - # Fix for braindead ISPs iptables -A FORWARD -p tcp --tcp-flags SYN,RST SYN -j TCPMSS --clamp-mss-to-pmtu
@@ -363,12 +300,6 @@ iptables_init() { -m mark --mark 3 -j SNAT --to-source "${ORANGE_ADDRESS}" fi
- # upnp chain for our upnp daemon - iptables -t nat -N UPNPFW - iptables -t nat -A PREROUTING -j UPNPFW - iptables -N UPNPFW - iptables -A FORWARD -m conntrack --ctstate NEW -j UPNPFW - # RED chain, used for the red interface iptables -N REDINPUT iptables -A INPUT -j REDINPUT diff --git a/src/initscripts/system/upnpd b/src/initscripts/system/upnpd deleted file mode 100644 index ca05abf75..000000000 --- a/src/initscripts/system/upnpd +++ /dev/null @@ -1,55 +0,0 @@ -#!/bin/sh -######################################################################## -# Begin $rc_base/init.d/ -# -# Description : UPnP Starter -# -# Authors : Michael Tremer -# -# Version : 01.00 -# -# Notes : for www.ipfire.org - GPLv2 -# -######################################################################## - -. /etc/sysconfig/rc -. ${rc_functions} - -# defaults -ALLOW_MULTICAST=no - -# configuration -eval $(/usr/local/bin/readhash /var/ipfire/upnp/settings) - -case "$1" in - start) - boot_mesg "Starting Universal Plug'n'Play daemon..." - loadproc /usr/sbin/upnpd $EXTIFACE $INTIFACE - evaluate_retval - [ "$ALLOW_MULTICAST" != "no" ] && route add -net 239.0.0.0 netmask 255.0.0.0 $INTIFACE - ;; - - stop) - boot_mesg "Stopping Universal Plug'n'Play daemon..." - killproc /usr/sbin/upnpd - evaluate_retval - [ "$ALLOW_MULTICAST" != "no" ] && route del -net 239.0.0.0 netmask 255.0.0.0 $INTIFACE - ;; - - restart) - ${0} stop - sleep 1 - ${0} start - - ;; - status) - statusproc - ;; - - *) - echo "Usage: ${0} {start|stop|reload|restart|status}" - exit 1 - ;; -esac - -# End $rc_base/init.d/ diff --git a/src/pakfire/lib/functions.pl b/src/pakfire/lib/functions.pl index 4d5c6219a..f9a19b60d 100644 --- a/src/pakfire/lib/functions.pl +++ b/src/pakfire/lib/functions.pl @@ -73,6 +73,9 @@ my %pakfiresettings = (); # Make version $Conf::version = &make_version();
+# Pakfire lock file. +our $lockfile = "/tmp/pakfire_lock"; + sub message { my $message = shift; diff --git a/src/pakfire/pakfire b/src/pakfire/pakfire index c69a8d3ad..4139d106b 100644 --- a/src/pakfire/pakfire +++ b/src/pakfire/pakfire @@ -2,7 +2,7 @@ ############################################################################### # # # IPFire.org - A linux based firewall # -# Copyright (C) 2007-2015 IPFire Team info@ipfire.org # +# Copyright (C) 2007-2021 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 # @@ -31,6 +31,7 @@ my $interactive = 1; my $force = "noforce"; + my $locked; &Pakfire::logger("PAKFIRE INFO: IPFire Pakfire $Conf::version started!");
@@ -47,6 +48,21 @@ &Pakfire::message("PAKFIRE ERROR: You need to be online to run pakfire!"); exit 2; } + + # Check if a lockfile already exists. + if (-e "$Pakfire::lockfile") { + &Pakfire::message("PAKFIRE ERROR: Another instance of pakfire is already running!"); + exit 1; + } + + # Write lockfile. + open(LOCK, ">$Pakfire::lockfile"); + + # Pakfire has locked in this session set locket to "1". + $locked = "1"; + + # Close filehandle. + close(LOCK); ### Check if we are started by another name # @@ -330,4 +346,12 @@
&Pakfire::logger("PAKFIRE INFO: Pakfire has finished. Closing.");
+ END { + # Check if pakfire has been locked in this session. + if ($locked) { + # Remove lockfile. + unlink($Pakfire::lockfile); + } + } + exit 0; diff --git a/src/paks/asterisk/install.sh b/src/paks/asterisk/install.sh deleted file mode 100644 index 24ce65775..000000000 --- a/src/paks/asterisk/install.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/bash -############################################################################ -# # -# This file is part of the IPFire Firewall. # -# # -# IPFire 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 2 of the License, or # -# (at your option) any later version. # -# # -# IPFire 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 IPFire; if not, write to the Free Software # -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -# # -# Copyright (C) 2007 IPFire-Team info@ipfire.org. # -# # -############################################################################ -# -. /opt/pakfire/lib/functions.sh -extract_files -restore_backup ${NAME} -start_service ${NAME} diff --git a/src/paks/asterisk/uninstall.sh b/src/paks/asterisk/uninstall.sh deleted file mode 100644 index bd755e34f..000000000 --- a/src/paks/asterisk/uninstall.sh +++ /dev/null @@ -1,29 +0,0 @@ -#!/bin/bash -############################################################################ -# # -# This file is part of the IPFire Firewall. # -# # -# IPFire 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 2 of the License, or # -# (at your option) any later version. # -# # -# IPFire 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 IPFire; if not, write to the Free Software # -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -# # -# Copyright (C) 2007 IPFire-Team info@ipfire.org. # -# # -############################################################################ -# -. /opt/pakfire/lib/functions.sh -echo "/var/ipfire/asterisk/" >> /var/ipfire/backup/addons/includes/asterisk -echo "/var/log/asterisk/cdr-csv/" >> /var/ipfire/backup/addons/includes/asterisk -stop_service ${NAME} -make_backup ${NAME} -remove_files diff --git a/src/paks/asterisk/update.sh b/src/paks/asterisk/update.sh deleted file mode 100644 index 99776659c..000000000 --- a/src/paks/asterisk/update.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/bash -############################################################################ -# # -# This file is part of the IPFire Firewall. # -# # -# IPFire 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 2 of the License, or # -# (at your option) any later version. # -# # -# IPFire 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 IPFire; if not, write to the Free Software # -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -# # -# Copyright (C) 2007-2020 IPFire-Team info@ipfire.org. # -# # -############################################################################ -# -. /opt/pakfire/lib/functions.sh -extract_backup_includes -./uninstall.sh -./install.sh diff --git a/src/paks/motion/uninstall.sh b/src/paks/motion/uninstall.sh deleted file mode 100644 index 66f4344eb..000000000 --- a/src/paks/motion/uninstall.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/bash -############################################################################ -# # -# This file is part of the IPFire Firewall. # -# # -# IPFire 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 2 of the License, or # -# (at your option) any later version. # -# # -# IPFire 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 IPFire; if not, write to the Free Software # -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -# # -# Copyright (C) 2007 IPFire-Team info@ipfire.org. # -# # -############################################################################ -# -. /opt/pakfire/lib/functions.sh -make_backup ${NAME} -remove_files diff --git a/src/paks/motion/update.sh b/src/paks/motion/update.sh deleted file mode 100644 index 99776659c..000000000 --- a/src/paks/motion/update.sh +++ /dev/null @@ -1,27 +0,0 @@ -#!/bin/bash -############################################################################ -# # -# This file is part of the IPFire Firewall. # -# # -# IPFire 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 2 of the License, or # -# (at your option) any later version. # -# # -# IPFire 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 IPFire; if not, write to the Free Software # -# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA # -# # -# Copyright (C) 2007-2020 IPFire-Team info@ipfire.org. # -# # -############################################################################ -# -. /opt/pakfire/lib/functions.sh -extract_backup_includes -./uninstall.sh -./install.sh diff --git a/src/patches/Python-2.7.3-gdbm-1.patch b/src/patches/Python-2.7.3-gdbm-1.patch deleted file mode 100644 index c72b45277..000000000 --- a/src/patches/Python-2.7.3-gdbm-1.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -Naur Python-2.7-org/setup.py Python-2.7/setup.py ---- Python-2.7-org/setup.py 2010-06-27 14:36:16.000000000 +0200 -+++ Python-2.7/setup.py 2010-07-13 22:23:04.000000000 +0200 -@@ -1125,7 +1125,7 @@ - 'ndbm'): - ndbm_libs = ['ndbm'] - else: -- ndbm_libs = [] -+ ndbm_libs = ['gdbm', 'gdbm_compat' ] - print "building dbm using ndbm" - dbmext = Extension('dbm', ['dbmmodule.c'], - define_macros=[ -@@ -1140,7 +1140,7 @@ - if self.compiler.find_library_file(lib_dirs, - 'gdbm_compat'): - gdbm_libs.append('gdbm_compat') -- if find_file("gdbm/ndbm.h", inc_dirs, []) is not None: -+ if find_file("ndbm.h", inc_dirs, []) is not None: - print "building dbm using gdbm" - dbmext = Extension( - 'dbm', ['dbmmodule.c'], diff --git a/src/patches/Python-2.7.9-gdbm-1.patch b/src/patches/Python-2.7.9-gdbm-1.patch deleted file mode 100644 index c72b45277..000000000 --- a/src/patches/Python-2.7.9-gdbm-1.patch +++ /dev/null @@ -1,21 +0,0 @@ -diff -Naur Python-2.7-org/setup.py Python-2.7/setup.py ---- Python-2.7-org/setup.py 2010-06-27 14:36:16.000000000 +0200 -+++ Python-2.7/setup.py 2010-07-13 22:23:04.000000000 +0200 -@@ -1125,7 +1125,7 @@ - 'ndbm'): - ndbm_libs = ['ndbm'] - else: -- ndbm_libs = [] -+ ndbm_libs = ['gdbm', 'gdbm_compat' ] - print "building dbm using ndbm" - dbmext = Extension('dbm', ['dbmmodule.c'], - define_macros=[ -@@ -1140,7 +1140,7 @@ - if self.compiler.find_library_file(lib_dirs, - 'gdbm_compat'): - gdbm_libs.append('gdbm_compat') -- if find_file("gdbm/ndbm.h", inc_dirs, []) is not None: -+ if find_file("ndbm.h", inc_dirs, []) is not None: - print "building dbm using gdbm" - dbmext = Extension( - 'dbm', ['dbmmodule.c'], diff --git a/src/patches/arm-dont-require-distutils.patch b/src/patches/arm-dont-require-distutils.patch deleted file mode 100644 index 1fe2b8aff..000000000 --- a/src/patches/arm-dont-require-distutils.patch +++ /dev/null @@ -1,20 +0,0 @@ -diff -Nur arm.vanilla/src/util/hostnames.py arm/src/util/hostnames.py ---- arm.vanilla/src/util/hostnames.py 2012-04-29 05:59:24.000000000 +0200 -+++ arm/src/util/hostnames.py 2013-07-31 17:59:19.245591564 +0200 -@@ -30,7 +30,6 @@ - import threading - import itertools - import Queue --import distutils.sysconfig - - from util import log, sysTools - -@@ -264,7 +263,7 @@ - # 'socket.gethostbyaddr'. The following checks if the system has the - # gethostbyname_r function, which determines if python resolutions can be - # done in parallel or not. If so, this is preferable. -- isSocketResolutionParallel = distutils.sysconfig.get_config_var("HAVE_GETHOSTBYNAME_R") -+ isSocketResolutionParallel = True #distutils.sysconfig.get_config_var("HAVE_GETHOSTBYNAME_R") - self.useSocketResolution = CONFIG["queries.hostnames.useSocketModule"] and isSocketResolutionParallel - - for _ in range(CONFIG["queries.hostnames.poolSize"]): diff --git a/src/patches/arm-multi-grsec-compile-fixes.patch b/src/patches/arm-multi-grsec-compile-fixes.patch deleted file mode 100644 index b71d9aec6..000000000 --- a/src/patches/arm-multi-grsec-compile-fixes.patch +++ /dev/null @@ -1,24 +0,0 @@ -diff -Naur linux-3.14.76.org/arch/arm/mach-omap2/cclock3xxx_data.c linux-3.14.76/arch/arm/mach-omap2/cclock3xxx_data.c ---- linux-3.14.76.org/arch/arm/mach-omap2/cclock3xxx_data.c 2016-08-18 06:26:02.000000000 +0200 -+++ linux-3.14.76/arch/arm/mach-omap2/cclock3xxx_data.c 2016-08-18 06:37:51.442186995 +0200 -@@ -250,7 +250,7 @@ - - static struct clk dpll1_ck; - --static struct clk_ops dpll1_ck_ops; -+static clk_ops_no_const dpll1_ck_ops; - - static struct clk_ops dpll1_ck_ops_34xx __initdata = { - .init = &omap2_init_clk_clkdm, -diff -Naur linux-3.14.76.org/net/ipv6/addrconf.c linux-3.14.76/net/ipv6/addrconf.c ---- linux-3.14.76.org/net/ipv6/addrconf.c 2016-08-18 06:25:51.000000000 +0200 -+++ linux-3.14.76/net/ipv6/addrconf.c 2016-08-18 06:31:51.802186824 +0200 -@@ -4818,7 +4818,7 @@ - { - struct inet6_dev *idev = ctl->extra1; - int min_mtu = IPV6_MIN_MTU; -- struct ctl_table lctl; -+ ctl_table_no_const lctl; - - lctl = *ctl; - lctl.extra1 = &min_mtu; diff --git a/src/patches/asterisk-no-ffmpeg.patch b/src/patches/asterisk-no-ffmpeg.patch deleted file mode 100644 index 7bc2e841f..000000000 --- a/src/patches/asterisk-no-ffmpeg.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- build/usr/src/asterisk-11.9.0/res/Makefile.orig 2014-04-28 20:30:50.500877461 +0200 -+++ build/usr/src/asterisk-11.9.0/res/Makefile 2014-04-28 20:31:39.357034757 +0200 -@@ -75,7 +75,7 @@ - rm -f pjproject/build.mak - - pjproject/build.mak: pjproject/aconfigure -- (cd pjproject && CFLAGS="-fPIC" ./configure --build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) --disable-floating-point --disable-sound --disable-oss --disable-speex-aec --disable-l16-codec --disable-gsm-codec --disable-g722-codec --disable-g7221-codec --disable-speex-codec --disable-ilbc-codec --disable-g711-codec) -+ (cd pjproject && CFLAGS="-fPIC" ./configure --build=$(BUILD_PLATFORM) --host=$(HOST_PLATFORM) --disable-floating-point --disable-sound --disable-oss --disable-speex-aec --disable-l16-codec --disable-gsm-codec --disable-g722-codec --disable-g7221-codec --disable-speex-codec --disable-ilbc-codec --disable-g711-codec --disable-opencore-amrnb --disable-video --disable-sdl --disable-ffmpeg --disable-v4l2) - - ifneq ($(findstring $(MAKECMDGOALS),all),) - -include pjproject/build.mak diff --git a/src/patches/asterisk-ssl-reader-should-block.patch b/src/patches/asterisk-ssl-reader-should-block.patch deleted file mode 100644 index 3b2f0ed54..000000000 --- a/src/patches/asterisk-ssl-reader-should-block.patch +++ /dev/null @@ -1,28 +0,0 @@ -Upstream issue 18345 -Link: https://issues.asterisk.org/jira/browse/ASTERISK-18345 -Patch-By: Filip Jenicek - -Submitted upstream: 2012-05-31 09:12 -For Asterisk version: 1.8.4 - -The HOOK_T ssl_read function should behave the same way as the system read function -by blocking and waiting for (more) data from the SSL subsystem. Failure to do this -will drop data on the floor and ultimately disconnect SSL clients. - ---- asterisk/main/tcptls.c -+++ asterisk/main/tcptls.c -@@ -55,6 +55,14 @@ - static HOOK_T ssl_read(void *cookie, char *buf, LEN_T len) - { - int i = SSL_read(cookie, buf, len-1); -+ -+ /* ssl_read should block and wait for the SSL layer to provide all data */ -+ while (i < 0 && SSL_get_error(cookie, i) == SSL_ERROR_WANT_READ) { -+ ast_debug(1, "SSL_read - data not ready.\n"); -+ if (ast_wait_for_input(SSL_get_fd(cookie), 5000) <= 0) return 0; -+ i = SSL_read(cookie, buf, len-1); -+ } -+ - #if 0 - if (i >= 0) - buf[i] = '\0'; diff --git a/src/patches/bash-3.2-ssh_source_bash.patch b/src/patches/bash/bash-3.2-ssh_source_bash.patch similarity index 100% rename from src/patches/bash-3.2-ssh_source_bash.patch rename to src/patches/bash/bash-3.2-ssh_source_bash.patch diff --git a/src/patches/bash-4.0-paths-1.patch b/src/patches/bash/bash-4.0-paths-1.patch similarity index 100% rename from src/patches/bash-4.0-paths-1.patch rename to src/patches/bash/bash-4.0-paths-1.patch diff --git a/src/patches/bash-4.0-profile-1.patch b/src/patches/bash/bash-4.0-profile-1.patch similarity index 100% rename from src/patches/bash-4.0-profile-1.patch rename to src/patches/bash/bash-4.0-profile-1.patch diff --git a/src/patches/compat-drivers-3.8.3-ath_ignore_eeprom_regdomain.patch b/src/patches/compat-drivers-3.8.3-ath_ignore_eeprom_regdomain.patch deleted file mode 100644 index acfb12f91..000000000 --- a/src/patches/compat-drivers-3.8.3-ath_ignore_eeprom_regdomain.patch +++ /dev/null @@ -1,39 +0,0 @@ -diff -Naur compat-drivers-3.8.3-2-snpu.org/drivers/net/wireless/ath/regd.c compat-drivers-3.8.3-2-snpu/drivers/net/wireless/ath/regd.c ---- compat-drivers-3.8.3-2-snpu.org/drivers/net/wireless/ath/regd.c 2013-03-15 22:55:09.000000000 +0100 -+++ compat-drivers-3.8.3-2-snpu/drivers/net/wireless/ath/regd.c 2013-08-22 11:51:36.793297656 +0200 -@@ -200,6 +200,8 @@ - u32 bandwidth = 0; - int r; - -+ return; -+ - for (band = 0; band < IEEE80211_NUM_BANDS; band++) { - - if (!wiphy->bands[band]) -@@ -259,6 +261,8 @@ - u32 bandwidth = 0; - int r; - -+ return; -+ - sband = wiphy->bands[IEEE80211_BAND_2GHZ]; - if (!sband) - return; -@@ -308,6 +312,8 @@ - struct ieee80211_channel *ch; - unsigned int i; - -+ return; -+ - if (!wiphy->bands[IEEE80211_BAND_5GHZ]) - return; - -@@ -514,6 +520,8 @@ - { - const struct ieee80211_regdomain *regd; - -+ return 0; -+ - wiphy->reg_notifier = reg_notifier; - wiphy->flags |= WIPHY_FLAG_STRICT_REGULATORY; - diff --git a/src/patches/coreutils-8.27-uname-1.patch b/src/patches/coreutils/coreutils-8.27-uname-1.patch similarity index 100% rename from src/patches/coreutils-8.27-uname-1.patch rename to src/patches/coreutils/coreutils-8.27-uname-1.patch diff --git a/src/patches/coreutils-8.32-i18n-1.patch b/src/patches/coreutils/coreutils-8.32-i18n-1.patch similarity index 100% rename from src/patches/coreutils-8.32-i18n-1.patch rename to src/patches/coreutils/coreutils-8.32-i18n-1.patch diff --git a/src/patches/cups-str4609.patch b/src/patches/cups-str4609.patch deleted file mode 100644 index 2a9761b20..000000000 --- a/src/patches/cups-str4609.patch +++ /dev/null @@ -1,423 +0,0 @@ -diff -up cups-1.7.5/cgi-bin/ipp-var.c.str4609 cups-1.7.5/cgi-bin/ipp-var.c ---- cups-1.7.5/cgi-bin/ipp-var.c.str4609 2014-05-22 15:59:21.000000000 +0200 -+++ cups-1.7.5/cgi-bin/ipp-var.c 2015-06-10 10:31:45.297965345 +0200 -@@ -1206,21 +1206,7 @@ cgiSetIPPObjectVars( - * Rewrite URIs... - */ - -- if (!strcmp(name, "member_uris")) -- { -- char url[1024]; /* URL for class member... */ -- -- -- cgiRewriteURL(attr->values[i].string.text, url, -- sizeof(url), NULL); -- -- snprintf(valptr, sizeof(value) - (valptr - value), -- "<A HREF="%s">%s</A>", url, -- strrchr(attr->values[i].string.text, '/') + 1); -- } -- else -- cgiRewriteURL(attr->values[i].string.text, valptr, -- sizeof(value) - (valptr - value), NULL); -+ cgiRewriteURL(attr->values[i].string.text, valptr, sizeof(value) - (valptr - value), NULL); - break; - } - -diff -up cups-1.7.5/cgi-bin/template.c.str4609 cups-1.7.5/cgi-bin/template.c ---- cups-1.7.5/cgi-bin/template.c.str4609 2014-03-05 22:11:32.000000000 +0100 -+++ cups-1.7.5/cgi-bin/template.c 2015-06-10 10:31:45.297965345 +0200 -@@ -659,39 +659,7 @@ cgi_puts(const char *s, /* I - String - while (*s) - { - if (*s == '<') -- { -- /* -- * Pass <A HREF="url"> and </A>, otherwise quote it... -- */ -- -- if (!_cups_strncasecmp(s, "<A HREF="", 9)) -- { -- fputs("<A HREF="", out); -- s += 9; -- -- while (*s && *s != '"') -- { -- if (*s == '&') -- fputs("&", out); -- else -- putc(*s, out); -- -- s ++; -- } -- -- if (*s) -- s ++; -- -- fputs("">", out); -- } -- else if (!_cups_strncasecmp(s, "</A>", 4)) -- { -- fputs("</A>", out); -- s += 3; -- } -- else -- fputs("<", out); -- } -+ fputs("<", out); - else if (*s == '>') - fputs(">", out); - else if (*s == '"') -diff -up cups-1.7.5/scheduler/client.c.str4609 cups-1.7.5/scheduler/client.c ---- cups-1.7.5/scheduler/client.c.str4609 2015-06-10 10:31:45.280965399 +0200 -+++ cups-1.7.5/scheduler/client.c 2015-06-10 10:31:45.300965335 +0200 -@@ -598,7 +598,12 @@ cupsdCloseClient(cupsd_client_t *con) /* - httpClearCookie(HTTP(con)); - httpClearFields(HTTP(con)); - -- cupsdClearString(&con->filename); -+ if (con->filename) -+ { -+ unlink(con->filename); -+ cupsdClearString(&con->filename); -+ } -+ - cupsdClearString(&con->command); - cupsdClearString(&con->options); - cupsdClearString(&con->query_string); -diff -up cups-1.7.5/scheduler/env.c.str4609 cups-1.7.5/scheduler/env.c ---- cups-1.7.5/scheduler/env.c.str4609 2015-06-10 10:31:45.208965629 +0200 -+++ cups-1.7.5/scheduler/env.c 2015-06-10 10:31:45.300965335 +0200 -@@ -131,6 +131,13 @@ cupsdSetEnv(const char *name, /* I - Na - return; - - /* -+ * Do not allow dynamic linker variables when running as root... -+ */ -+ -+ if (!RunUser && (!strncmp(name, "DYLD_", 5) || !strncmp(name, "LD_", 3))) -+ return; -+ -+ /* - * See if this variable has already been defined... - */ - -diff -up cups-1.7.5/scheduler/ipp.c.str4609 cups-1.7.5/scheduler/ipp.c ---- cups-1.7.5/scheduler/ipp.c.str4609 2015-06-10 10:31:45.287965377 +0200 -+++ cups-1.7.5/scheduler/ipp.c 2015-06-10 10:31:45.299965339 +0200 -@@ -412,8 +412,7 @@ cupsdProcessIPPRequest( - * Remote unauthenticated user masquerading as local root... - */ - -- _cupsStrFree(username->values[0].string.text); -- username->values[0].string.text = _cupsStrAlloc(RemoteRoot); -+ ippSetString(con->request, &username, 0, RemoteRoot); - } - } - -@@ -1576,7 +1575,7 @@ add_job(cupsd_client_t *con, /* I - Cl - cupsdSetString(&job->username, con->username); - - if (attr) -- cupsdSetString(&attr->values[0].string.text, con->username); -+ ippSetString(job->attrs, &attr, 0, con->username); - } - else if (attr) - { -@@ -1594,9 +1593,8 @@ add_job(cupsd_client_t *con, /* I - Cl - "job-originating-user-name", NULL, job->username); - else - { -- attr->group_tag = IPP_TAG_JOB; -- _cupsStrFree(attr->name); -- attr->name = _cupsStrAlloc("job-originating-user-name"); -+ ippSetGroupTag(job->attrs, &attr, IPP_TAG_JOB); -+ ippSetName(job->attrs, &attr, "job-originating-user-name"); - } - - if (con->username[0] || auth_info) -@@ -1630,48 +1628,11 @@ add_job(cupsd_client_t *con, /* I - Cl - * Also, we can only have 1 value and it must be a name value. - */ - -- switch (attr->value_tag) -- { -- case IPP_TAG_STRING : -- case IPP_TAG_TEXTLANG : -- case IPP_TAG_NAMELANG : -- case IPP_TAG_TEXT : -- case IPP_TAG_NAME : -- case IPP_TAG_KEYWORD : -- case IPP_TAG_URI : -- case IPP_TAG_URISCHEME : -- case IPP_TAG_CHARSET : -- case IPP_TAG_LANGUAGE : -- case IPP_TAG_MIMETYPE : -- /* -- * Free old strings... -- */ -- -- for (i = 0; i < attr->num_values; i ++) -- { -- _cupsStrFree(attr->values[i].string.text); -- attr->values[i].string.text = NULL; -- if (attr->values[i].string.language) -- { -- _cupsStrFree(attr->values[i].string.language); -- attr->values[i].string.language = NULL; -- } -- } -- -- default : -- break; -- } -- -- /* -- * Use the default connection hostname instead... -- */ -- -- attr->value_tag = IPP_TAG_NAME; -- attr->num_values = 1; -- attr->values[0].string.text = _cupsStrAlloc(con->http.hostname); -+ ippDeleteAttribute(job->attrs, attr); -+ ippAddString(job->attrs, IPP_TAG_JOB, IPP_TAG_NAME, "job-originating-host-name", NULL, con->http.hostname); - } -- -- attr->group_tag = IPP_TAG_JOB; -+ else -+ ippSetGroupTag(job->attrs, &attr, IPP_TAG_JOB); - } - else - { -@@ -1767,8 +1728,8 @@ add_job(cupsd_client_t *con, /* I - Cl - - attr = ippAddStrings(job->attrs, IPP_TAG_JOB, IPP_TAG_NAME, "job-sheets", - 2, NULL, NULL); -- attr->values[0].string.text = _cupsStrRetain(printer->job_sheets[0]); -- attr->values[1].string.text = _cupsStrRetain(printer->job_sheets[1]); -+ ippSetString(job->attrs, &attr, 0, printer->job_sheets[0]); -+ ippSetString(job->attrs, &attr, 1, printer->job_sheets[1]); - } - - job->job_sheets = attr; -@@ -1794,7 +1755,7 @@ add_job(cupsd_client_t *con, /* I - Cl - * Force the leading banner to have the classification on it... - */ - -- cupsdSetString(&attr->values[0].string.text, Classification); -+ ippSetString(job->attrs, &attr, 0, Classification); - - cupsdLogJob(job, CUPSD_LOG_NOTICE, "CLASSIFICATION FORCED " - "job-sheets="%s,none", " -@@ -1811,7 +1772,7 @@ add_job(cupsd_client_t *con, /* I - Cl - * Can't put two different security markings on the same document! - */ - -- cupsdSetString(&attr->values[1].string.text, attr->values[0].string.text); -+ ippSetString(job->attrs, &attr, 1, attr->values[0].string.text); - - cupsdLogJob(job, CUPSD_LOG_NOTICE, "CLASSIFICATION FORCED " - "job-sheets="%s,%s", " -@@ -1851,18 +1812,18 @@ add_job(cupsd_client_t *con, /* I - Cl - if (attr->num_values > 1 && - !strcmp(attr->values[0].string.text, attr->values[1].string.text)) - { -- cupsdSetString(&(attr->values[0].string.text), Classification); -- cupsdSetString(&(attr->values[1].string.text), Classification); -+ ippSetString(job->attrs, &attr, 0, Classification); -+ ippSetString(job->attrs, &attr, 1, Classification); - } - else - { - if (attr->num_values == 1 || - strcmp(attr->values[0].string.text, "none")) -- cupsdSetString(&(attr->values[0].string.text), Classification); -+ ippSetString(job->attrs, &attr, 0, Classification); - - if (attr->num_values > 1 && - strcmp(attr->values[1].string.text, "none")) -- cupsdSetString(&(attr->values[1].string.text), Classification); -+ ippSetString(job->attrs, &attr, 1, Classification); - } - - if (attr->num_values > 1) -@@ -3098,8 +3059,8 @@ authenticate_job(cupsd_client_t *con, / - - if (attr) - { -- attr->value_tag = IPP_TAG_KEYWORD; -- cupsdSetString(&(attr->values[0].string.text), "no-hold"); -+ ippSetValueTag(job->attrs, &attr, IPP_TAG_KEYWORD); -+ ippSetString(job->attrs, &attr, 0, "no-hold"); - } - - /* -@@ -8224,11 +8185,7 @@ print_job(cupsd_client_t *con, /* I - - filetype->type); - - if (format) -- { -- _cupsStrFree(format->values[0].string.text); -- -- format->values[0].string.text = _cupsStrAlloc(mimetype); -- } -+ ippSetString(con->request, &format, 0, mimetype); - else - ippAddString(con->request, IPP_TAG_JOB, IPP_TAG_MIMETYPE, - "document-format", NULL, mimetype); -@@ -8765,10 +8722,8 @@ release_job(cupsd_client_t *con, /* I - - - if (attr) - { -- _cupsStrFree(attr->values[0].string.text); -- -- attr->value_tag = IPP_TAG_KEYWORD; -- attr->values[0].string.text = _cupsStrAlloc("no-hold"); -+ ippSetValueTag(job->attrs, &attr, IPP_TAG_KEYWORD); -+ ippSetString(job->attrs, &attr, 0, "no-hold"); - - cupsdAddEvent(CUPSD_EVENT_JOB_CONFIG_CHANGED, cupsdFindDest(job->dest), job, - "Job job-hold-until value changed by user."); -@@ -9461,11 +9416,7 @@ send_document(cupsd_client_t *con, /* I - - if ((jformat = ippFindAttribute(job->attrs, "document-format", - IPP_TAG_MIMETYPE)) != NULL) -- { -- _cupsStrFree(jformat->values[0].string.text); -- -- jformat->values[0].string.text = _cupsStrAlloc(mimetype); -- } -+ ippSetString(job->attrs, &jformat, 0, mimetype); - else - ippAddString(job->attrs, IPP_TAG_JOB, IPP_TAG_MIMETYPE, - "document-format", NULL, mimetype); -diff -up cups-1.7.5/scheduler/job.c.str4609 cups-1.7.5/scheduler/job.c ---- cups-1.7.5/scheduler/job.c.str4609 2015-06-10 10:31:45.288965374 +0200 -+++ cups-1.7.5/scheduler/job.c 2015-06-10 10:31:45.299965339 +0200 -@@ -375,7 +375,7 @@ cupsdCheckJobs(void) - - if ((attr = ippFindAttribute(job->attrs, "job-actual-printer-uri", - IPP_TAG_URI)) != NULL) -- cupsdSetString(&attr->values[0].string.text, printer->uri); -+ ippSetString(job->attrs, &attr, 0, printer->uri); - else - ippAddString(job->attrs, IPP_TAG_JOB, IPP_TAG_URI, - "job-actual-printer-uri", NULL, printer->uri); -@@ -2109,7 +2109,7 @@ cupsdMoveJob(cupsd_job_t *job, /* I - - if ((attr = ippFindAttribute(job->attrs, "job-printer-uri", - IPP_TAG_URI)) != NULL) -- cupsdSetString(&(attr->values[0].string.text), p->uri); -+ ippSetString(job->attrs, &attr, 0, p->uri); - - cupsdAddEvent(CUPSD_EVENT_JOB_STOPPED, p, job, - "Job #%d moved from %s to %s.", job->id, olddest, -@@ -2306,7 +2306,7 @@ cupsdSetJobHoldUntil(cupsd_job_t *job, / - attr = ippFindAttribute(job->attrs, "job-hold-until", IPP_TAG_NAME); - - if (attr) -- cupsdSetString(&(attr->values[0].string.text), when); -+ ippSetString(job->attrs, &attr, 0, when); - else - attr = ippAddString(job->attrs, IPP_TAG_JOB, IPP_TAG_KEYWORD, - "job-hold-until", NULL, when); -@@ -2560,8 +2560,8 @@ cupsdSetJobState( - - if (attr) - { -- attr->value_tag = IPP_TAG_KEYWORD; -- cupsdSetString(&(attr->values[0].string.text), "no-hold"); -+ ippSetValueTag(job->attrs, &attr, IPP_TAG_KEYWORD); -+ ippSetString(job->attrs, &attr, 0, "no-hold"); - } - - default : -@@ -4598,7 +4598,7 @@ start_job(cupsd_job_t *job, /* I - - "job-printer-state-message", - IPP_TAG_TEXT); - if (job->printer_message) -- cupsdSetString(&(job->printer_message->values[0].string.text), ""); -+ ippSetString(job->attrs, &job->printer_message, 0, ""); - - ippSetString(job->attrs, &job->reasons, 0, "job-printing"); - cupsdSetJobState(job, IPP_JOB_PROCESSING, CUPSD_JOB_DEFAULT, NULL); -@@ -5216,15 +5216,14 @@ update_job_attrs(cupsd_job_t *job, /* I - if (job->state_value != IPP_JOB_PROCESSING && - job->status_level == CUPSD_LOG_INFO) - { -- cupsdSetString(&(job->printer_message->values[0].string.text), ""); -+ ippSetString(job->attrs, &job->printer_message, 0, ""); - - job->dirty = 1; - cupsdMarkDirty(CUPSD_DIRTY_JOBS); - } - else if (job->printer->state_message[0] && do_message) - { -- cupsdSetString(&(job->printer_message->values[0].string.text), -- job->printer->state_message); -+ ippSetString(job->attrs, &job->printer_message, 0, job->printer->state_message); - - job->dirty = 1; - cupsdMarkDirty(CUPSD_DIRTY_JOBS); -diff -up cups-1.7.5/scheduler/main.c.str4609 cups-1.7.5/scheduler/main.c ---- cups-1.7.5/scheduler/main.c.str4609 2015-06-10 10:31:45.265965447 +0200 -+++ cups-1.7.5/scheduler/main.c 2015-06-10 10:31:45.300965335 +0200 -@@ -1205,8 +1205,8 @@ cupsdAddString(cups_array_t **a, /* IO - - if (!*a) - *a = cupsArrayNew3((cups_array_func_t)strcmp, NULL, - (cups_ahash_func_t)NULL, 0, -- (cups_acopy_func_t)_cupsStrAlloc, -- (cups_afree_func_t)_cupsStrFree); -+ (cups_acopy_func_t)strdup, -+ (cups_afree_func_t)free); - - return (cupsArrayAdd(*a, (char *)s)); - } -@@ -1236,7 +1236,7 @@ cupsdClearString(char **s) /* O - Strin - { - if (s && *s) - { -- _cupsStrFree(*s); -+ free(*s); - *s = NULL; - } - } -@@ -1317,10 +1317,10 @@ cupsdSetString(char **s, /* O - N - return; - - if (*s) -- _cupsStrFree(*s); -+ free(*s); - - if (v) -- *s = _cupsStrAlloc(v); -+ *s = strdup(v); - else - *s = NULL; - } -@@ -1351,13 +1351,13 @@ cupsdSetStringf(char **s, /* O - - vsnprintf(v, sizeof(v), f, ap); - va_end(ap); - -- *s = _cupsStrAlloc(v); -+ *s = strdup(v); - } - else - *s = NULL; - - if (olds) -- _cupsStrFree(olds); -+ free(olds); - } - - -@@ -1804,8 +1804,7 @@ process_children(void) - } - - if (job->printer_message) -- cupsdSetString(&(job->printer_message->values[0].string.text), -- message); -+ ippSetString(job->attrs, &job->printer_message, 0, message); - } - } - diff --git a/src/patches/db-4.4.20-fixes-1.patch b/src/patches/db-4.4.20-fixes-1.patch deleted file mode 100644 index 8c11876ca..000000000 --- a/src/patches/db-4.4.20-fixes-1.patch +++ /dev/null @@ -1,111 +0,0 @@ -Submitted By: Dan Nicholson <dnicholson AT linuxfromscratch DOT org> -Date: 2006-09-02 -Initial Package Version: 4.4.20 -Origin: Upstream - http://www.sleepycat.com/update/4.4.20/patch.4.4.20.html -Description: Bug fixes provided by the developer. Contains patches 1-4. - -diff -pNur db-4.4.20.orig/db/db_cam.c db-4.4.20/db/db_cam.c ---- db-4.4.20.orig/db/db_cam.c 2006-01-10 16:19:21.000000000 +0000 -+++ db-4.4.20/db/db_cam.c 2006-08-03 14:31:20.220319610 +0000 -@@ -579,11 +579,12 @@ __db_c_get(dbc_arg, key, data, flags) - flags == DB_NEXT || flags == DB_NEXT_DUP || flags == DB_PREV)) { - if (tmp_rmw && (ret = dbc_arg->c_am_writelock(dbc_arg)) != 0) - return (ret); -- if ((ret = __db_c_idup(cp->opd, &opd, DB_POSITION)) != 0) -+ if (F_ISSET(dbc_arg, DBC_TRANSIENT)) -+ opd = cp->opd; -+ else if ((ret = __db_c_idup(cp->opd, &opd, DB_POSITION)) != 0) - return (ret); - -- switch (ret = -- opd->c_am_get(opd, key, data, flags, NULL)) { -+ switch (ret = opd->c_am_get(opd, key, data, flags, NULL)) { - case 0: - goto done; - case DB_NOTFOUND: -@@ -596,12 +597,18 @@ __db_c_get(dbc_arg, key, data, flags) - if ((ret = __db_c_close(opd)) != 0) - goto err; - opd = NULL; -+ if (F_ISSET(dbc_arg, DBC_TRANSIENT)) -+ cp->opd = NULL; - break; - } - goto err; - default: - goto err; - } -+ } else if (cp->opd != NULL && F_ISSET(dbc_arg, DBC_TRANSIENT)) { -+ if ((ret = __db_c_close(cp->opd)) != 0) -+ goto err; -+ cp->opd = NULL; - } - - /* -diff -pNur db-4.4.20.orig/mp/mp_fget.c db-4.4.20/mp/mp_fget.c ---- db-4.4.20.orig/mp/mp_fget.c 2005-10-12 17:53:36.000000000 +0000 -+++ db-4.4.20/mp/mp_fget.c 2006-08-03 14:31:20.223318410 +0000 -@@ -587,8 +587,11 @@ alloc: /* - */ - if (state != SECOND_MISS && bhp->ref == 1) { - bhp->priority = UINT32_MAX; -- SH_TAILQ_REMOVE(&hp->hash_bucket, bhp, hq, __bh); -- SH_TAILQ_INSERT_TAIL(&hp->hash_bucket, bhp, hq); -+ if (SH_TAILQ_FIRST(&hp->hash_bucket, __bh) != -+ SH_TAILQ_LAST(&hp->hash_bucket, hq, __bh)) { -+ SH_TAILQ_REMOVE(&hp->hash_bucket, bhp, hq, __bh); -+ SH_TAILQ_INSERT_TAIL(&hp->hash_bucket, bhp, hq); -+ } - hp->hash_priority = - SH_TAILQ_FIRSTP(&hp->hash_bucket, __bh)->priority; - } -diff -pNur db-4.4.20.orig/qam/qam_files.c db-4.4.20/qam/qam_files.c ---- db-4.4.20.orig/qam/qam_files.c 2005-10-20 18:57:12.000000000 +0000 -+++ db-4.4.20/qam/qam_files.c 2006-08-03 14:31:20.211323209 +0000 -@@ -411,6 +411,12 @@ __qam_fremove(dbp, pgnoaddr) - DB_APP_DATA, buf, 0, NULL, &real_name)) != 0) - goto err; - #endif -+ -+ mpf = array->mpfarray[offset].mpf; -+ /* This extent my already be marked for delete and closed. */ -+ if (mpf == NULL) -+ goto err; -+ - /* - * The log must be flushed before the file is deleted. We depend on - * the log record of the last delete to recreate the file if we crash. -@@ -418,7 +424,6 @@ __qam_fremove(dbp, pgnoaddr) - if (LOGGING_ON(dbenv) && (ret = __log_flush(dbenv, NULL)) != 0) - goto err; - -- mpf = array->mpfarray[offset].mpf; - (void)__memp_set_flags(mpf, DB_MPOOL_UNLINK, 1); - /* Someone could be real slow, let them close it down. */ - if (array->mpfarray[offset].pinref != 0) -diff -pNur db-4.4.20.orig/txn/txn.c db-4.4.20/txn/txn.c ---- db-4.4.20.orig/txn/txn.c 2005-11-01 14:50:03.000000000 +0000 -+++ db-4.4.20/txn/txn.c 2006-08-03 14:31:20.215321609 +0000 -@@ -1049,12 +1049,14 @@ __txn_set_name(txn, name) - return (ret); - memcpy(txn->name, name, len); - -+ TXN_SYSTEM_LOCK(dbenv); - if (td->name != INVALID_ROFF) { - __db_shalloc_free( - &mgr->reginfo, R_ADDR(&mgr->reginfo, td->name)); - td->name = INVALID_ROFF; - } - if ((ret = __db_shalloc(&mgr->reginfo, len, 0, &p)) != 0) { -+ TXN_SYSTEM_UNLOCK(dbenv); - __db_err(dbenv, - "Unable to allocate memory for transaction name"); - -@@ -1063,6 +1065,7 @@ __txn_set_name(txn, name) - - return (ret); - } -+ TXN_SYSTEM_UNLOCK(dbenv); - td->name = R_OFFSET(&mgr->reginfo, p); - memcpy(p, name, len); - diff --git a/src/patches/diffutils-2.8.1-i18n-1.patch b/src/patches/diffutils-2.8.1-i18n-1.patch deleted file mode 100644 index 488885b82..000000000 --- a/src/patches/diffutils-2.8.1-i18n-1.patch +++ /dev/null @@ -1,802 +0,0 @@ -Submitted by: Alexander E. Patrakov -Date: 2005-08-13 -Initial Package Version: 2.8.1 -Upstream Status: Unknown, but required for LSB >= 2.0 certification -Origin: RedHat -Description: Fixes treatment of whitespace in multibyte locales. - ---- diffutils-2.8.4/src/diff.c.i18n 2002-06-17 01:55:42.000000000 -0400 -+++ diffutils-2.8.4/src/diff.c 2002-11-16 18:41:37.000000000 -0500 -@@ -275,6 +275,13 @@ - re_set_syntax (RE_SYNTAX_GREP | RE_NO_POSIX_BACKTRACKING); - excluded = new_exclude (); - -+#ifdef HANDLE_MULTIBYTE -+ if (MB_CUR_MAX > 1) -+ lines_differ = lines_differ_multibyte; -+ else -+#endif -+ lines_differ = lines_differ_singlebyte; -+ - /* Decode the options. */ - - while ((c = getopt_long (argc, argv, shortopts, longopts, 0)) != -1) ---- diffutils-2.8.4/src/diff.h.i18n 2002-11-16 18:31:32.000000000 -0500 -+++ diffutils-2.8.4/src/diff.h 2002-11-16 18:48:58.000000000 -0500 -@@ -23,6 +23,19 @@ - #include "system.h" - #include <stdio.h> - -+/* For platform which support the ISO C amendement 1 functionality we -+ support user defined character classes. */ -+#if defined HAVE_WCTYPE_H && defined HAVE_WCHAR_H -+/* Solaris 2.5 has a bug: <wchar.h> must be included before <wctype.h>. */ -+# include <wchar.h> -+# include <wctype.h> -+# if defined (HAVE_MBRTOWC) -+# define HANDLE_MULTIBYTE 1 -+# endif -+#endif -+ -+#define TAB_WIDTH 8 -+ - /* What kind of changes a hunk contains. */ - enum changes - { -@@ -350,7 +363,13 @@ - extern char const pr_program[]; - char *concat (char const *, char const *, char const *); - char *dir_file_pathname (char const *, char const *); --bool lines_differ (char const *, char const *); -+ -+bool (*lines_differ) (char const *, char const *); -+bool lines_differ_singlebyte (char const *, char const *); -+#ifdef HANDLE_MULTIBYTE -+bool lines_differ_multibyte (char const *, char const *); -+#endif -+ - lin translate_line_number (struct file_data const *, lin); - struct change *find_change (struct change *); - struct change *find_reverse_change (struct change *); ---- diffutils-2.8.4/src/io.c.i18n 2002-06-11 02:06:32.000000000 -0400 -+++ diffutils-2.8.4/src/io.c 2002-11-16 18:57:30.000000000 -0500 -@@ -26,6 +26,7 @@ - #include <regex.h> - #include <setmode.h> - #include <xalloc.h> -+#include <assert.h> - - /* Rotate an unsigned value to the left. */ - #define ROL(v, n) ((v) << (n) | (v) >> (sizeof (v) * CHAR_BIT - (n))) -@@ -213,6 +214,28 @@ - - /* Split the file into lines, simultaneously computing the equivalence - class for each line. */ -+#ifdef HANDLE_MULTIBYTE -+# define MBC2WC(P, END, MBLENGTH, WC, STATE, CONVFAIL) \ -+do \ -+{ \ -+ mbstate_t state_bak = STATE; \ -+ \ -+ CONVFAIL = 0; \ -+ MBLENGTH = mbrtowc (&WC, P, END - (char const *)P, &STATE); \ -+ \ -+ switch (MBLENGTH) \ -+ { \ -+ case (size_t)-2: \ -+ case (size_t)-1: \ -+ STATE = state_bak; \ -+ ++CONVFAIL; \ -+ /* Fall through. */ \ -+ case 0: \ -+ MBLENGTH = 1; \ -+ } \ -+} \ -+while (0) -+#endif - - static void - find_and_hash_each_line (struct file_data *current) -@@ -239,12 +262,280 @@ - bool same_length_diff_contents_compare_anyway = - diff_length_compare_anyway | ignore_case; - -+#ifdef HANDLE_MULTIBYTE -+ wchar_t wc; -+ size_t mblength; -+ mbstate_t state; -+ int convfail; -+ -+ memset (&state, '\0', sizeof (mbstate_t)); -+#endif -+ - while ((char const *) p < suffix_begin) - { - char const *ip = (char const *) p; - - h = 0; -+#ifdef HANDLE_MULTIBYTE -+ if (MB_CUR_MAX > 1) -+ { -+ wchar_t lo_wc; -+ char mbc[MB_LEN_MAX]; -+ mbstate_t state_wc; -+ -+ /* Hash this line until we find a newline. */ -+ switch (ignore_white_space) -+ { -+ case IGNORE_ALL_SPACE: -+ while (1) -+ { -+ if (*p == '\n') -+ { -+ ++p; -+ break; -+ } -+ -+ MBC2WC (p, suffix_begin, mblength, wc, state, convfail); -+ -+ if (convfail) -+ mbc[0] = *p++; -+ else if (!iswspace (wc)) -+ { -+ bool flag = 0; -+ -+ if (ignore_case) -+ { -+ lo_wc = towlower (wc); -+ if (lo_wc != wc) -+ { -+ flag = 1; -+ -+ p += mblength; -+ memset (&state_wc, '\0', sizeof(mbstate_t)); -+ mblength = wcrtomb (mbc, lo_wc, &state_wc); -+ -+ assert (mblength != (size_t)-1 && -+ mblength != (size_t)-2); -+ -+ mblength = (mblength < 1) ? 1 : mblength; -+ } -+ } -+ -+ if (!flag) -+ { -+ for (i = 0; i < mblength; i++) -+ mbc[i] = *p++; -+ } -+ } -+ else -+ { -+ p += mblength; -+ continue; -+ } -+ -+ for (i = 0; i < mblength; i++) -+ h = HASH (h, mbc[i]); -+ } -+ break; -+ -+ case IGNORE_SPACE_CHANGE: -+ while (1) -+ { -+ if (*p == '\n') -+ { -+ ++p; -+ break; -+ } - -+ MBC2WC (p, suffix_begin, mblength, wc, state, convfail); -+ -+ if (!convfail && iswspace (wc)) -+ { -+ while (1) -+ { -+ if (*p == '\n') -+ { -+ ++p; -+ goto hashing_done; -+ } -+ -+ p += mblength; -+ MBC2WC (p, suffix_begin, mblength, wc, state, convfail); -+ if (convfail || (!convfail && !iswspace (wc))) -+ break; -+ } -+ h = HASH (h, ' '); -+ } -+ -+ /* WC is now the first non-space. */ -+ if (convfail) -+ mbc[0] = *p++; -+ else -+ { -+ bool flag = 0; -+ -+ if (ignore_case) -+ { -+ lo_wc = towlower (wc); -+ if (lo_wc != wc) -+ { -+ flag = 1; -+ -+ p += mblength; -+ memset (&state_wc, '\0', sizeof(mbstate_t)); -+ mblength = wcrtomb (mbc, lo_wc, &state_wc); -+ -+ assert (mblength != (size_t)-1 && -+ mblength != (size_t)-2); -+ -+ mblength = (mblength < 1) ? 1 : mblength; -+ } -+ } -+ -+ if (!flag) -+ { -+ for (i = 0; i < mblength; i++) -+ mbc[i] = *p++; -+ } -+ } -+ -+ for (i = 0; i < mblength; i++) -+ h = HASH (h, mbc[i]); -+ } -+ break; -+ -+ case IGNORE_TAB_EXPANSION: -+ { -+ size_t column = 0; -+ -+ while (1) -+ { -+ if (*p == '\n') -+ { -+ ++p; -+ break; -+ } -+ -+ MBC2WC (p, suffix_begin, mblength, wc, state, convfail); -+ -+ if (convfail) -+ { -+ h = HASH (h, *p++); -+ ++column; -+ } -+ else -+ { -+ bool flag; -+ -+ switch (wc) -+ { -+ case L'\b': -+ column -= 0 < column; -+ h = HASH (h, '\b'); -+ ++p; -+ break; -+ -+ case L'\t': -+ { -+ int repetitions; -+ -+ repetitions = TAB_WIDTH - column % TAB_WIDTH; -+ column += repetitions; -+ do -+ h = HASH (h, ' '); -+ while (--repetitions != 0); -+ ++p; -+ } -+ break; -+ -+ case L'\r': -+ column = 0; -+ h = HASH (h, '\r'); -+ ++p; -+ break; -+ -+ default: -+ flag = 0; -+ column += wcwidth (wc); -+ if (ignore_case) -+ { -+ lo_wc = towlower (wc); -+ if (lo_wc != wc) -+ { -+ flag = 1; -+ p += mblength; -+ memset (&state_wc, '\0', sizeof(mbstate_t)); -+ mblength = wcrtomb (mbc, lo_wc, &state_wc); -+ -+ assert (mblength != (size_t)-1 && -+ mblength != (size_t)-2); -+ -+ mblength = (mblength < 1) ? 1 : mblength; -+ } -+ } -+ -+ if (!flag) -+ { -+ for (i = 0; i < mblength; i++) -+ mbc[i] = *p++; -+ } -+ -+ for (i = 0; i < mblength; i++) -+ h = HASH (h, mbc[i]); -+ } -+ } -+ } -+ } -+ break; -+ -+ default: -+ while (1) -+ { -+ if (*p == '\n') -+ { -+ ++p; -+ break; -+ } -+ -+ MBC2WC (p, suffix_begin, mblength, wc, state, convfail); -+ -+ if (convfail) -+ mbc[0] = *p++; -+ else -+ { -+ int flag = 0; -+ -+ if (ignore_case) -+ { -+ lo_wc = towlower (wc); -+ if (lo_wc != wc) -+ { -+ flag = 1; -+ p += mblength; -+ memset (&state_wc, '\0', sizeof(mbstate_t)); -+ mblength = wcrtomb (mbc, lo_wc, &state_wc); -+ -+ assert (mblength != (size_t)-1 && -+ mblength != (size_t)-2); -+ -+ mblength = (mblength < 1) ? 1 : mblength; -+ } -+ } -+ -+ if (!flag) -+ { -+ for (i = 0; i < mblength; i++) -+ mbc[i] = *p++; -+ } -+ } -+ -+ for (i = 0; i < mblength; i++) -+ h = HASH (h, mbc[i]); -+ } -+ } -+ } -+ else -+#endif - /* Hash this line until we find a newline. */ - if (ignore_case) - switch (ignore_white_space) ---- diffutils-2.8.4/src/side.c.i18n 2002-06-11 02:06:32.000000000 -0400 -+++ diffutils-2.8.4/src/side.c 2002-11-16 18:41:37.000000000 -0500 -@@ -73,11 +73,72 @@ - register size_t out_position = 0; - register char const *text_pointer = line[0]; - register char const *text_limit = line[1]; -+#if defined HAVE_WCHAR_H && defined HAVE_WCTYPE_H -+ unsigned char mbc[MB_LEN_MAX]; -+ wchar_t wc; -+ mbstate_t state, state_bak; -+ size_t mbc_pos, mblength; -+ int mbc_loading_flag = 0; -+ int wc_width; -+ -+ memset (&state, '\0', sizeof (mbstate_t)); -+#endif - - while (text_pointer < text_limit) - { - register unsigned char c = *text_pointer++; - -+#if defined HAVE_WCHAR_H && defined HAVE_WCTYPE_H -+ if (MB_CUR_MAX > 1 && mbc_loading_flag) -+ { -+ mbc_loading_flag = 0; -+ state_bak = state; -+ mbc[mbc_pos++] = c; -+ -+process_mbc: -+ mblength = mbrtowc (&wc, mbc, mbc_pos, &state); -+ -+ switch (mblength) -+ { -+ case (size_t)-2: /* Incomplete multibyte character. */ -+ mbc_loading_flag = 1; -+ state = state_bak; -+ break; -+ -+ case (size_t)-1: /* Invalid as a multibyte character. */ -+ if (in_position++ < out_bound) -+ { -+ out_position = in_position; -+ putc (mbc[0], out); -+ } -+ memmove (mbc, mbc + 1, --mbc_pos); -+ if (mbc_pos > 0) -+ { -+ mbc[mbc_pos] = '\0'; -+ goto process_mbc; -+ } -+ break; -+ -+ default: -+ wc_width = wcwidth (wc); -+ if (wc_width < 1) /* Unprintable multibyte character. */ -+ { -+ if (in_position <= out_bound) -+ fprintf (out, "%lc", (wint_t)wc); -+ } -+ else /* Printable multibyte character. */ -+ { -+ in_position += wc_width; -+ if (in_position <= out_bound) -+ { -+ out_position = in_position; -+ fprintf (out, "%lc", (wint_t)wc); -+ } -+ } -+ } -+ continue; -+ } -+#endif - switch (c) - { - case '\t': -@@ -135,8 +196,39 @@ - break; - - default: -- if (! ISPRINT (c)) -- goto control_char; -+#if defined HAVE_WCHAR_H && defined HAVE_WCTYPE_H -+ if (MB_CUR_MAX > 1) -+ { -+ memset (mbc, '\0', MB_LEN_MAX); -+ mbc_pos = 0; -+ mbc[mbc_pos++] = c; -+ state_bak = state; -+ -+ mblength = mbrtowc (&wc, mbc, mbc_pos, &state); -+ -+ /* The value of mblength is always less than 2 here. */ -+ switch (mblength) -+ { -+ case (size_t)-2: /* Incomplete multibyte character. */ -+ state = state_bak; -+ mbc_loading_flag = 1; -+ continue; -+ -+ case (size_t)-1: /* Invalid as a multibyte character. */ -+ state = state_bak; -+ break; -+ -+ default: -+ if (! iswprint (wc)) -+ goto control_char; -+ } -+ } -+ else -+#endif -+ { -+ if (! ISPRINT (c)) -+ goto control_char; -+ } - /* falls through */ - case ' ': - if (in_position++ < out_bound) ---- diffutils-2.8.4/src/util.c.i18n 2002-06-11 02:06:32.000000000 -0400 -+++ diffutils-2.8.4/src/util.c 2002-11-16 18:41:37.000000000 -0500 -@@ -321,7 +321,7 @@ - Return nonzero if the lines differ. */ - - bool --lines_differ (char const *s1, char const *s2) -+lines_differ_singlebyte (char const *s1, char const *s2) - { - register unsigned char const *t1 = (unsigned char const *) s1; - register unsigned char const *t2 = (unsigned char const *) s2; -@@ -450,6 +450,293 @@ - - return 1; - } -+ -+#ifdef HANDLE_MULTIBYTE -+# define MBC2WC(T, END, MBLENGTH, WC, STATE, CONVFAIL) \ -+do \ -+{ \ -+ mbstate_t bak = STATE; \ -+ \ -+ CONVFAIL = 0; \ -+ MBLENGTH = mbrtowc (&WC, T, END - T, &STATE); \ -+ \ -+ switch (MBLENGTH) \ -+ { \ -+ case (size_t)-2: \ -+ case (size_t)-1: \ -+ STATE = bak; \ -+ ++CONVFAIL; \ -+ /* Fall through. */ \ -+ case 0: \ -+ MBLENGTH = 1; \ -+ } \ -+} \ -+while (0) -+ -+bool -+lines_differ_multibyte (char const *s1, char const *s2) -+{ -+ unsigned char const *end1, *end2; -+ unsigned char c1, c2; -+ wchar_t wc1, wc2, wc1_bak, wc2_bak; -+ size_t mblen1, mblen2; -+ mbstate_t state1, state2, state1_bak, state2_bak; -+ int convfail1, convfail2, convfail1_bak, convfail2_bak; -+ -+ unsigned char const *t1 = (unsigned char const *) s1; -+ unsigned char const *t2 = (unsigned char const *) s2; -+ unsigned char const *t1_bak, *t2_bak; -+ size_t column = 0; -+ -+ if (ignore_white_space == IGNORE_NO_WHITE_SPACE && !ignore_case) -+ { -+ while (*t1 != '\n') -+ if (*t1++ != * t2++) -+ return 1; -+ return 0; -+ } -+ -+ memset (&state1, '\0', sizeof (mbstate_t)); -+ memset (&state2, '\0', sizeof (mbstate_t)); -+ -+ end1 = s1 + strlen (s1); -+ end2 = s2 + strlen (s2); -+ -+ while (1) -+ { -+ c1 = *t1; -+ c2 = *t2; -+ MBC2WC (t1, end1, mblen1, wc1, state1, convfail1); -+ MBC2WC (t2, end2, mblen2, wc2, state2, convfail2); -+ -+ /* Test for exact char equality first, since it's a common case. */ -+ if (convfail1 ^ convfail2) -+ break; -+ else if (convfail1 && convfail2 && c1 != c2) -+ break; -+ else if (!convfail1 && !convfail2 && wc1 != wc2) -+ { -+ switch (ignore_white_space) -+ { -+ case IGNORE_ALL_SPACE: -+ /* For -w, just skip past any white space. */ -+ while (1) -+ { -+ if (convfail1) -+ break; -+ else if (wc1 == L'\n' || !iswspace (wc1)) -+ break; -+ -+ t1 += mblen1; -+ c1 = *t1; -+ MBC2WC (t1, end1, mblen1, wc1, state1, convfail1); -+ } -+ -+ while (1) -+ { -+ if (convfail2) -+ break; -+ else if (wc2 == L'\n' || !iswspace (wc2)) -+ break; -+ -+ t2 += mblen2; -+ c2 = *t2; -+ MBC2WC (t2, end2, mblen2, wc2, state2, convfail2); -+ } -+ t1 += mblen1; -+ t2 += mblen2; -+ break; -+ -+ case IGNORE_SPACE_CHANGE: -+ /* For -b, advance past any sequence of white space in -+ line 1 and consider it just one space, or nothing at -+ all if it is at the end of the line. */ -+ if (wc1 != L'\n' && iswspace (wc1)) -+ { -+ size_t mblen_bak; -+ mbstate_t state_bak; -+ -+ do -+ { -+ t1 += mblen1; -+ mblen_bak = mblen1; -+ state_bak = state1; -+ MBC2WC (t1, end1, mblen1, wc1, state1, convfail1); -+ } -+ while (!convfail1 && (wc1 != L'\n' && iswspace (wc1))); -+ -+ state1 = state_bak; -+ mblen1 = mblen_bak; -+ t1 -= mblen1; -+ convfail1 = 0; -+ wc1 = L' '; -+ } -+ -+ /* Likewise for line 2. */ -+ if (wc2 != L'\n' && iswspace (wc2)) -+ { -+ size_t mblen_bak; -+ mbstate_t state_bak; -+ -+ do -+ { -+ t2 += mblen2; -+ mblen_bak = mblen2; -+ state_bak = state2; -+ MBC2WC (t2, end2, mblen2, wc2, state2, convfail2); -+ } -+ while (!convfail2 && (wc2 != L'\n' && iswspace (wc2))); -+ -+ state2 = state_bak; -+ mblen2 = mblen_bak; -+ t2 -= mblen2; -+ convfail2 = 0; -+ wc2 = L' '; -+ } -+ -+ if (wc1 != wc2) -+ { -+ if (wc2 == L' ' && wc1 != L'\n' && -+ t1 > (unsigned char const *)s1 && -+ !convfail1_bak && iswspace (wc1_bak)) -+ { -+ t1 = t1_bak; -+ wc1 = wc1_bak; -+ state1 = state1_bak; -+ convfail1 = convfail1_bak; -+ continue; -+ } -+ if (wc1 == L' ' && wc2 != L'\n' -+ && t2 > (unsigned char const *)s2 -+ && !convfail2_bak && iswspace (wc2_bak)) -+ { -+ t2 = t2_bak; -+ wc2 = wc2_bak; -+ state2 = state2_bak; -+ convfail2 = convfail2_bak; -+ continue; -+ } -+ } -+ -+ t1_bak = t1; t2_bak = t2; -+ wc1_bak = wc1; wc2_bak = wc2; -+ state1_bak = state1; state2_bak = state2; -+ convfail1_bak = convfail1; convfail2_bak = convfail2; -+ -+ if (wc1 == L'\n') -+ wc1 = L' '; -+ else -+ t1 += mblen1; -+ -+ if (wc2 == L'\n') -+ wc2 = L' '; -+ else -+ t2 += mblen2; -+ -+ break; -+ -+ case IGNORE_TAB_EXPANSION: -+ if ((wc1 == L' ' && wc2 == L'\t') -+ || (wc1 == L'\t' && wc2 == L' ')) -+ { -+ size_t column2 = column; -+ -+ while (1) -+ { -+ if (convfail1) -+ { -+ ++t1; -+ break; -+ } -+ else if (wc1 == L' ') -+ column++; -+ else if (wc1 == L'\t') -+ column += TAB_WIDTH - column % TAB_WIDTH; -+ else -+ { -+ t1 += mblen1; -+ break; -+ } -+ -+ t1 += mblen1; -+ c1 = *t1; -+ MBC2WC (t1, end1, mblen1, wc1, state1, convfail1); -+ } -+ -+ while (1) -+ { -+ if (convfail2) -+ { -+ ++t2; -+ break; -+ } -+ else if (wc2 == L' ') -+ column2++; -+ else if (wc2 == L'\t') -+ column2 += TAB_WIDTH - column2 % TAB_WIDTH; -+ else -+ { -+ t2 += mblen2; -+ break; -+ } -+ -+ t2 += mblen2; -+ c2 = *t2; -+ MBC2WC (t2, end2, mblen2, wc2, state2, convfail2); -+ } -+ -+ if (column != column2) -+ return 1; -+ } -+ else -+ { -+ t1 += mblen1; -+ t2 += mblen2; -+ } -+ break; -+ -+ case IGNORE_NO_WHITE_SPACE: -+ t1 += mblen1; -+ t2 += mblen2; -+ break; -+ } -+ -+ /* Lowercase all letters if -i is specified. */ -+ if (ignore_case) -+ { -+ if (!convfail1) -+ wc1 = towlower (wc1); -+ if (!convfail2) -+ wc2 = towlower (wc2); -+ } -+ -+ if (convfail1 ^ convfail2) -+ break; -+ else if (convfail1 && convfail2 && c1 != c2) -+ break; -+ else if (!convfail1 && !convfail2 && wc1 != wc2) -+ break; -+ } -+ else -+ { -+ t1_bak = t1; t2_bak = t2; -+ wc1_bak = wc1; wc2_bak = wc2; -+ state1_bak = state1; state2_bak = state2; -+ convfail1_bak = convfail1; convfail2_bak = convfail2; -+ -+ t1 += mblen1; t2 += mblen2; -+ } -+ -+ if (!convfail1 && wc1 == L'\n') -+ return 0; -+ -+ column += convfail1 ? 1 : -+ (wc1 == L'\t') ? TAB_WIDTH - column % TAB_WIDTH : wcwidth (wc1); -+ } -+ -+ return 1; -+} -+#endif - - /* Find the consecutive changes at the start of the script START. - Return the last link before the first gap. */ diff --git a/src/patches/dmidecode/add_support_for_structure_type_43_tpm_device.patch b/src/patches/dmidecode/add_support_for_structure_type_43_tpm_device.patch deleted file mode 100644 index 07f4f7ed7..000000000 --- a/src/patches/dmidecode/add_support_for_structure_type_43_tpm_device.patch +++ /dev/null @@ -1,30 +0,0 @@ -From 174387405e98cd94c627832ae23abcb9be7e5623 Mon Sep 17 00:00:00 2001 -From: Jean Delvare jdelvare@suse.de -Date: Wed, 31 Jan 2018 18:52:47 +0100 -Subject: dmidecode: Fix firmware version of TPM device - -Both the operator (detected by clang, reported by Xorg) and the mask -for the minor firmware version field of TPM devices were wrong. - -Signed-off-by: Jean Delvare jdelvare@suse.de -Fixes: 48a8132058a0 ("dmidecode: Add support for structure type 43 (TPM Device)") ---- - dmidecode.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/dmidecode.c b/dmidecode.c -index 87faaa9..a593170 100644 ---- a/dmidecode.c -+++ b/dmidecode.c -@@ -4511,7 +4511,7 @@ static void dmi_decode(const struct dmi_header *h, u16 ver) - case 0x02: - printf("\tFirmware Revision: %u.%u\n", - DWORD(data + 0x0A) >> 16, -- DWORD(data + 0x0A) && 0xFF); -+ DWORD(data + 0x0A) & 0xFFFF); - /* - * We skip the next 4 bytes, as their - * format is not standardized and their --- -cgit v1.0-41-gc330 - diff --git a/src/patches/dmidecode/dmidecode-3.3-fix_crash_with_u_option.patch b/src/patches/dmidecode/dmidecode-3.3-fix_crash_with_u_option.patch new file mode 100644 index 000000000..497768add --- /dev/null +++ b/src/patches/dmidecode/dmidecode-3.3-fix_crash_with_u_option.patch @@ -0,0 +1,34 @@ +From 11e134e54d15e67a64c39a623f492a28df922517 Mon Sep 17 00:00:00 2001 +From: Jean Delvare jdelvare@suse.de +Date: Tue, 19 Jan 2021 16:26:01 +0100 +Subject: dmidecode: Fix crash with -u option + +A segmentation fault was reported with option -u. Turns out to be a +stupid thinko where the buffer offset was reset at the wrong loop +depth. + +Reported-by: Jerry Hoemann jerry.hoemann@hpe.com +Fixes: da06888d08b9 ("dmidecode: Use the print helpers in dump mode too") +Signed-off-by: Jean Delvare jdelvare@suse.de +--- + dmidecode.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/dmidecode.c b/dmidecode.c +index 572cb1a..69ea0e8 100644 +--- a/dmidecode.c ++++ b/dmidecode.c +@@ -248,9 +248,9 @@ static void dmi_dump(const struct dmi_header *h) + { + int j, l = strlen(s) + 1; + +- off = 0; + for (row = 0; row < ((l - 1) >> 4) + 1; row++) + { ++ off = 0; + for (j = 0; j < 16 && j < l - (row << 4); j++) + off += sprintf(raw_data + off, + j ? " %02X" : "%02X", +-- +cgit v1.2.1 + diff --git a/src/patches/dmidecode/dmidecode-3.3-fix_the_condition_error_in_ascii_filter.patch b/src/patches/dmidecode/dmidecode-3.3-fix_the_condition_error_in_ascii_filter.patch new file mode 100644 index 000000000..e5f99b477 --- /dev/null +++ b/src/patches/dmidecode/dmidecode-3.3-fix_the_condition_error_in_ascii_filter.patch @@ -0,0 +1,30 @@ +From 1117390ccd9cea139638db6f460bb6de70e28f94 Mon Sep 17 00:00:00 2001 +From: Tianjia Zhang tianjia.zhang@linux.alibaba.com +Date: Tue, 5 Jan 2021 10:36:29 +0100 +Subject: dmidecode: Fix the condition error in ascii_filter + +The normal printable ASCII range is 32 to 127 (not included), +so fix the error in this if condition. + +Signed-off-by: Tianjia Zhang tianjia.zhang@linux.alibaba.com +Signed-off-by: Jean Delvare jdelvare@suse.de +--- + dmidecode.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/dmidecode.c b/dmidecode.c +index 27d5494..864a193 100644 +--- a/dmidecode.c ++++ b/dmidecode.c +@@ -116,7 +116,7 @@ static void ascii_filter(char *bp, size_t len) + size_t i; + + for (i = 0; i < len; i++) +- if (bp[i] < 32 || bp[i] == 127) ++ if (bp[i] < 32 || bp[i] >= 127) + bp[i] = '.'; + } + +-- +cgit v1.2.1 + diff --git a/src/patches/dpfhack.patch b/src/patches/dpfhack.patch deleted file mode 100644 index 2a473175a..000000000 --- a/src/patches/dpfhack.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur dpf_alt/python/Makefile dpf/python/Makefile ---- dpf_alt/python/Makefile 2011-04-18 17:14:12.000000000 +0200 -+++ dpf/python/Makefile 2011-08-14 13:22:46.129748815 +0200 -@@ -32,7 +32,7 @@ - endif - - ifeq (Linux, $(PLATFORM)) -- PYTHON=$(shell pyversions -d) -+ PYTHON=python2.7 - include $(DEVLIB)/unixdll.mk - DLLDEPS = $(CLIENTLIB) -l$(PYTHON) - PYTHONINCLUDES = -I/usr/include/$(PYTHON) diff --git a/src/patches/fireinfo-2.2.0-python-3.8.patch b/src/patches/fireinfo-2.2.0-python-3.8.patch new file mode 100644 index 000000000..ca0e6843b --- /dev/null +++ b/src/patches/fireinfo-2.2.0-python-3.8.patch @@ -0,0 +1,26 @@ +From 1d70d3cbf7e1fe1e1f0760e9a79e520e416519fe Mon Sep 17 00:00:00 2001 +From: Michael Tremer michael.tremer@ipfire.org +Date: Tue, 18 May 2021 13:40:51 +0000 +Subject: [PATCH] python: Fix linking against Python 3.8 + +Signed-off-by: Michael Tremer michael.tremer@ipfire.org +--- + configure.ac | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/configure.ac b/configure.ac +index ede2cb6..6efe73c 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -91,7 +91,7 @@ AC_SUBST([OUR_LDFLAGS], $with_ldflags) + + # Python + AM_PATH_PYTHON([3.7]) +-PKG_CHECK_MODULES([PYTHON_DEVEL], [python-${PYTHON_VERSION}]) ++PKG_CHECK_MODULES([PYTHON_DEVEL], [python-${PYTHON_VERSION}-embed python-${PYTHON_VERSION}]) + + AC_CONFIG_FILES([ + Makefile +-- +2.20.1 + diff --git a/src/patches/fireinfo-Don-t-crash-when-proc-cpuinfo-doesn-t-have-any-infor.patch b/src/patches/fireinfo-Don-t-crash-when-proc-cpuinfo-doesn-t-have-any-infor.patch deleted file mode 100644 index a99c618e9..000000000 --- a/src/patches/fireinfo-Don-t-crash-when-proc-cpuinfo-doesn-t-have-any-infor.patch +++ /dev/null @@ -1,34 +0,0 @@ -From e2b6025dea547bf8de4bd2b8056f2a8227c635f5 Mon Sep 17 00:00:00 2001 -From: Michael Tremer michael.tremer@ipfire.org -Date: Wed, 13 Jun 2018 20:56:41 +0200 -Subject: [PATCH 1/2] Don't crash when /proc/cpuinfo doesn't have any - information - -Signed-off-by: Michael Tremer michael.tremer@ipfire.org ---- - src/fireinfo/cpu.py | 9 +++++---- - 1 file changed, 5 insertions(+), 4 deletions(-) - -diff --git a/src/fireinfo/cpu.py b/src/fireinfo/cpu.py -index 541575a..dc76caf 100644 ---- a/src/fireinfo/cpu.py -+++ b/src/fireinfo/cpu.py -@@ -108,10 +108,11 @@ class CPU(object): - """ - Return the model string of this CPU. - """ -- try: -- return self.__cpuinfo["model_name"] -- except KeyError: -- return self.__cpuinfo["Processor"] -+ for key in ("model_name", "Processor"): -+ try: -+ return self.__cpuinfo[key] -+ except KeyError: -+ pass - - @property - def vendor(self): --- -2.12.2 - diff --git a/src/patches/fireinfo-Ignore-any-systems-with-ID-Default-string.patch b/src/patches/fireinfo-Ignore-any-systems-with-ID-Default-string.patch deleted file mode 100644 index ace5d0133..000000000 --- a/src/patches/fireinfo-Ignore-any-systems-with-ID-Default-string.patch +++ /dev/null @@ -1,25 +0,0 @@ -From d1f6789178e141664895332af79dbe7aa9e5ab68 Mon Sep 17 00:00:00 2001 -From: Michael Tremer michael.tremer@ipfire.org -Date: Wed, 13 Jun 2018 20:58:42 +0200 -Subject: [PATCH 2/2] Ignore any systems with ID "Default string" - -Signed-off-by: Michael Tremer michael.tremer@ipfire.org ---- - src/fireinfo/system.py | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/src/fireinfo/system.py b/src/fireinfo/system.py -index e3295af..73c3882 100644 ---- a/src/fireinfo/system.py -+++ b/src/fireinfo/system.py -@@ -42,6 +42,7 @@ INVALID_ID_STRINGS = ( - "N/A", "n/a", - "12345", "54321", "202020", - "Chassis", "chassis", -+ "Default string", - "EVAL", - "Not Applicable", - "None", "empty", --- -2.12.2 - diff --git a/src/patches/fireinfo-support-upstream-proxy-with-authentication.patch b/src/patches/fireinfo-support-upstream-proxy-with-authentication.patch deleted file mode 100644 index 1e5a98655..000000000 --- a/src/patches/fireinfo-support-upstream-proxy-with-authentication.patch +++ /dev/null @@ -1,61 +0,0 @@ -From 74c5e2adc61548900e256c3e58a0a63f5b3c2a4f Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Peter=20M=C3=BCller?= peter.mueller@link38.eu -Date: Tue, 4 Dec 2018 18:13:15 +0100 -Subject: [PATCH] fireinfo: support upstream proxy with authentication -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Fireinfo could not send its profile to https://fireinfo.ipfire.org/ -if the machine is behind an upstream proxy which requires username -and password. This is fixed by tweaking urllib2's opening handler. - -To apply this on existing installations, the fireinfo package -needs to be shipped during an update. - -The third version of this patch fixes bogus indention, assembles -proxy authentication string more readable and preserves HTTP -proxy handler. - -Fixes #11905 - -Signed-off-by: Peter Müller peter.mueller@link38.eu -Cc: Michael Tremer michael.tremer@ipfire.org -Signed-off-by: Michael Tremer michael.tremer@ipfire.org ---- - src/sendprofile | 14 ++++++++++++-- - 1 file changed, 12 insertions(+), 2 deletions(-) - mode change 100644 => 100755 src/sendprofile - -diff --git a/src/sendprofile b/src/sendprofile -old mode 100644 -new mode 100755 -index b836567..3ce68b9 ---- a/src/sendprofile -+++ b/src/sendprofile -@@ -73,10 +73,20 @@ def send_profile(profile): - request.add_header("User-Agent", "fireinfo/%s" % fireinfo.__version__) - - # Set upstream proxy if we have one. -- # XXX this cannot handle authentication - proxy = get_upstream_proxy() -+ - if proxy["host"]: -- request.set_proxy(proxy["host"], "http") -+ # handling upstream proxies with authentication is more tricky... -+ if proxy["user"] and proxy["pass"]: -+ prx_auth_string = "http://%s:%s@%s/" % (proxy["user"], proxy["pass"], proxy["host"]) -+ -+ proxy_handler = urllib2.ProxyHandler({'http': prx_auth_string, 'https': prx_auth_string}) -+ auth = urllib2.HTTPBasicAuthHandler() -+ opener = urllib2.build_opener(proxy_handler, auth, urllib2.HTTPHandler) -+ urllib2.install_opener(opener) -+ else: -+ request.set_proxy(proxy["host"], "http") -+ request.set_proxy(proxy["host"], "https") - - try: - urllib2.urlopen(request, timeout=60) --- -2.6.3 - diff --git a/src/patches/grub-2.02_disable_vga_fallback.patch b/src/patches/grub/grub-2.02_disable_vga_fallback.patch similarity index 100% rename from src/patches/grub-2.02_disable_vga_fallback.patch rename to src/patches/grub/grub-2.02_disable_vga_fallback.patch diff --git a/src/patches/gzip-1.9-gnulib.patch b/src/patches/gzip-1.9-gnulib.patch deleted file mode 100644 index 68e8d518a..000000000 --- a/src/patches/gzip-1.9-gnulib.patch +++ /dev/null @@ -1,189 +0,0 @@ -From 1831628c0630ae96a43586b2a25ca51cbdba3e53 Mon Sep 17 00:00:00 2001 -From: Paul Eggert address@hidden -Date: Mon, 5 Mar 2018 10:56:29 -0800 -Subject: [PATCH] fflush: adjust to glibc 2.28 libio.h removal -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Problem reported by Daniel P. Berrangé in: -https://lists.gnu.org/r/bug-gnulib/2018-03/msg00000.html -* lib/fbufmode.c (fbufmode): -* lib/fflush.c (clear_ungetc_buffer_preserving_position) -(disable_seek_optimization, rpl_fflush): -* lib/fpending.c (__fpending): -* lib/fpurge.c (fpurge): -* lib/freadable.c (freadable): -* lib/freadahead.c (freadahead): -* lib/freading.c (freading): -* lib/freadptr.c (freadptr): -* lib/freadseek.c (freadptrinc): -* lib/fseeko.c (fseeko): -* lib/fseterr.c (fseterr): -* lib/fwritable.c (fwritable): -* lib/fwriting.c (fwriting): -Check _IO_EOF_SEEN instead of _IO_ftrylockfile. -* lib/stdio-impl.h (_IO_IN_BACKUP) [_IO_EOF_SEEN]: -Define if not already defined. ---- - ChangeLog | 23 +++++++++++++++++++++++ - lib/fbufmode.c | 2 +- - lib/fflush.c | 6 +++--- - lib/fpending.c | 2 +- - lib/fpurge.c | 2 +- - lib/freadable.c | 2 +- - lib/freadahead.c | 2 +- - lib/freading.c | 2 +- - lib/freadptr.c | 2 +- - lib/freadseek.c | 2 +- - lib/fseeko.c | 4 ++-- - lib/fseterr.c | 2 +- - lib/fwritable.c | 2 +- - lib/fwriting.c | 2 +- - lib/stdio-impl.h | 6 ++++++ - 15 files changed, 45 insertions(+), 16 deletions(-) - -diff --git a/ChangeLog b/ChangeLog -index 667f91663..beb835670 100644 ---- a/ChangeLog -+++ b/ChangeLog -@@ -1,3 +1,26 @@ -+2018-03-05 Paul Eggert address@hidden -+ -+ fflush: adjust to glibc 2.28 libio.h removal -+ Problem reported by Daniel P. Berrangé in: -+ https://lists.gnu.org/r/bug-gnulib/2018-03/msg00000.html -+ * lib/fbufmode.c (fbufmode): -+ * lib/fflush.c (clear_ungetc_buffer_preserving_position) -+ (disable_seek_optimization, rpl_fflush): -+ * lib/fpending.c (__fpending): -+ * lib/fpurge.c (fpurge): -+ * lib/freadable.c (freadable): -+ * lib/freadahead.c (freadahead): -+ * lib/freading.c (freading): -+ * lib/freadptr.c (freadptr): -+ * lib/freadseek.c (freadptrinc): -+ * lib/fseeko.c (fseeko): -+ * lib/fseterr.c (fseterr): -+ * lib/fwritable.c (fwritable): -+ * lib/fwriting.c (fwriting): -+ Check _IO_EOF_SEEN instead of _IO_ftrylockfile. -+ * lib/stdio-impl.h (_IO_IN_BACKUP) [_IO_EOF_SEEN]: -+ Define if not already defined. -+ - 2018-01-07 Jim Meyering meyering@fb.com - - version 1.9 - * NEWS: Record release date. -diff --git a/lib/fflush.c b/lib/fflush.c -index 983ade0ff..a6edfa105 100644 ---- a/lib/fflush.c -+++ b/lib/fflush.c -@@ -33,7 +33,7 @@ - #undef fflush - - --#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */ -+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */ - - /* Clear the stream's ungetc buffer, preserving the value of ftello (fp). */ - static void -@@ -72,7 +72,7 @@ clear_ungetc_buffer (FILE *fp) - - #endif - --#if ! (defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */) -+#if ! (defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */) - - # if (defined __sferror || defined __DragonFly__ || defined __ANDROID__) && defined __SNPT - /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */ -@@ -148,7 +148,7 @@ rpl_fflush (FILE *stream) - if (stream == NULL || ! freading (stream)) - return fflush (stream); - --#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */ -+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */ - - clear_ungetc_buffer_preserving_position (stream); - -diff --git a/lib/fpurge.c b/lib/fpurge.c -index b1d417c7a..3aedcc373 100644 ---- a/lib/fpurge.c -+++ b/lib/fpurge.c -@@ -62,7 +62,7 @@ fpurge (FILE *fp) - /* Most systems provide FILE as a struct and the necessary bitmask in - <stdio.h>, because they need it for implementing getc() and putc() as - fast macros. */ --# if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */ -+# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */ - fp->_IO_read_end = fp->_IO_read_ptr; - fp->_IO_write_ptr = fp->_IO_write_base; - /* Avoid memory leak when there is an active ungetc buffer. */ -diff --git a/lib/freading.c b/lib/freading.c -index 73c28acdd..c24d0c88a 100644 ---- a/lib/freading.c -+++ b/lib/freading.c -@@ -31,7 +31,7 @@ freading (FILE *fp) - /* Most systems provide FILE as a struct and the necessary bitmask in - <stdio.h>, because they need it for implementing getc() and putc() as - fast macros. */ --# if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */ -+# if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */ - return ((fp->_flags & _IO_NO_WRITES) != 0 - || ((fp->_flags & (_IO_NO_READS | _IO_CURRENTLY_PUTTING)) == 0 - && fp->_IO_read_base != NULL)); -diff --git a/lib/fseeko.c b/lib/fseeko.c -index 0101ab55f..193f4e8ce 100644 ---- a/lib/fseeko.c -+++ b/lib/fseeko.c -@@ -47,7 +47,7 @@ fseeko (FILE *fp, off_t offset, int whence) - #endif - - /* These tests are based on fpurge.c. */ --#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */ -+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */ - if (fp->_IO_read_end == fp->_IO_read_ptr - && fp->_IO_write_ptr == fp->_IO_write_base - && fp->_IO_save_base == NULL) -@@ -123,7 +123,7 @@ fseeko (FILE *fp, off_t offset, int whence) - return -1; - } - --#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */ -+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */ - fp->_flags &= ~_IO_EOF_SEEN; - fp->_offset = pos; - #elif defined __sferror || defined __DragonFly__ || defined __ANDROID__ -diff --git a/lib/fseterr.c b/lib/fseterr.c -index 82649c3ac..adb637256 100644 ---- a/lib/fseterr.c -+++ b/lib/fseterr.c -@@ -29,7 +29,7 @@ fseterr (FILE *fp) - /* Most systems provide FILE as a struct and the necessary bitmask in - <stdio.h>, because they need it for implementing getc() and putc() as - fast macros. */ --#if defined _IO_ftrylockfile || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */ -+#if defined _IO_EOF_SEEN || __GNU_LIBRARY__ == 1 /* GNU libc, BeOS, Haiku, Linux libc5 */ - fp->_flags |= _IO_ERR_SEEN; - #elif defined __sferror || defined __DragonFly__ || defined __ANDROID__ - /* FreeBSD, NetBSD, OpenBSD, DragonFly, Mac OS X, Cygwin, Minix 3, Android */ -diff --git a/lib/stdio-impl.h b/lib/stdio-impl.h -index 78d896e9f..05c5752a2 100644 ---- a/lib/stdio-impl.h -+++ b/lib/stdio-impl.h -@@ -18,6 +18,12 @@ - the same implementation of stdio extension API, except that some fields - have different naming conventions, or their access requires some casts. */ - -+/* Glibc 2.28 made _IO_IN_BACKUP private. For now, work around this -+ problem by defining it ourselves. FIXME: Do not rely on glibc -+ internals. */ -+#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN -+# define _IO_IN_BACKUP 0x100 -+#endif - - /* BSD stdio derived implementations. */ - --- -2.14.3 - diff --git a/src/patches/igb-5.3.4.4_fix_hung_at_dev_get_stats.patch b/src/patches/igb-5.3.4.4_fix_hung_at_dev_get_stats.patch deleted file mode 100644 index a92c44196..000000000 --- a/src/patches/igb-5.3.4.4_fix_hung_at_dev_get_stats.patch +++ /dev/null @@ -1,35 +0,0 @@ -Don't read phy_idle_errors at dev_get_stats() because this can -hung the userspace. - -https://sourceforge.net/p/e1000/bugs/500/ -Why this is set to wont-fix? - -I think it is better when phy errors are not reportet in the stats -than a random hanging of the whole sytem. - -diff -Naur igb-5.3.4.4.org/src/igb_main.c igb-5.3.4.4/src/igb_main.c ---- igb-5.3.4.4.org/src/igb_main.c 2016-02-26 01:48:39.000000000 +0100 -+++ igb-5.3.4.4/src/igb_main.c 2016-03-31 09:22:10.671794282 +0200 -@@ -6032,14 +6032,14 @@ - - /* Tx Dropped needs to be maintained elsewhere */ - -- /* Phy Stats */ -- if (hw->phy.media_type == e1000_media_type_copper) { -- if ((adapter->link_speed == SPEED_1000) && -- (!e1000_read_phy_reg(hw, PHY_1000T_STATUS, &phy_tmp))) { -- phy_tmp &= PHY_IDLE_ERROR_COUNT_MASK; -- adapter->phy_stats.idle_errors += phy_tmp; -- } -- } -+// /* Phy Stats */ -+// if (hw->phy.media_type == e1000_media_type_copper) { -+// if ((adapter->link_speed == SPEED_1000) && -+// (!e1000_read_phy_reg(hw, PHY_1000T_STATUS, &phy_tmp))) { -+// phy_tmp &= PHY_IDLE_ERROR_COUNT_MASK; -+// adapter->phy_stats.idle_errors += phy_tmp; -+// } -+// } - - /* Management Stats */ - adapter->stats.mgptc += E1000_READ_REG(hw, E1000_MGTPTC); diff --git a/src/patches/iptables-1.4.14-ipp2p-0.8.2-ipfire.patch b/src/patches/iptables-1.4.14-ipp2p-0.8.2-ipfire.patch deleted file mode 100644 index 9a11eb50c..000000000 --- a/src/patches/iptables-1.4.14-ipp2p-0.8.2-ipfire.patch +++ /dev/null @@ -1,481 +0,0 @@ -diff -Naur iptables-1.4.6.org/extensions/.ipp2p-test iptables-1.4.6/extensions/.ipp2p-test ---- iptables-1.4.6.org/extensions/.ipp2p-test 1970-01-01 01:00:00.000000000 +0100 -+++ iptables-1.4.6/extensions/.ipp2p-test 2010-02-13 20:02:52.000000000 +0100 -@@ -0,0 +1,2 @@ -+#! /bin/sh -+[ -f $KERNEL_DIR/include/linux/netfilter_ipv4/ipt_ipp2p.h ] && echo ipp2p -diff -Naur iptables-1.4.6.org/extensions/libipt_ipp2p.c iptables-1.4.6/extensions/libipt_ipp2p.c ---- iptables-1.4.6.org/extensions/libipt_ipp2p.c 1970-01-01 01:00:00.000000000 +0100 -+++ iptables-1.4.6/extensions/libipt_ipp2p.c 2010-02-13 20:02:52.000000000 +0100 -@@ -0,0 +1,424 @@ -+#include <stdio.h> -+#include <netdb.h> -+#include <string.h> -+#include <stdlib.h> -+#include <getopt.h> -+#include <ctype.h> -+ -+#include <iptables.h> -+ -+#include <linux/netfilter_ipv4/ipt_ipp2p.h> -+ -+#ifndef XTABLES_VERSION -+#define XTABLES_VERSION IPTABLES_VERSION -+#endif -+ -+#ifdef IPT_LIB_DIR -+#define xtables_target iptables_target -+#define xtables_register_target register_target -+#endif -+ -+static void -+help(void) -+{ -+ printf( -+ "IPP2P v%s options:\n" -+ " --ipp2p Grab all known p2p packets\n" -+ " --edk [TCP&UDP] All known eDonkey/eMule/Overnet packets\n" -+ " --dc [TCP] All known Direct Connect packets\n" -+ " --kazaa [TCP&UDP] All known KaZaA packets\n" -+ " --gnu [TCP&UDP] All known Gnutella packets\n" -+ " --bit [TCP&UDP] All known BitTorrent packets\n" -+ " --apple [TCP] All known AppleJuice packets\n" -+ " --winmx [TCP] All known WinMX\n" -+ " --soul [TCP] All known SoulSeek\n" -+ " --ares [TCP] All known Ares\n\n" -+ " EXPERIMENTAL protocols (please send feedback to: ipp2p@ipp2p.org) :\n" -+ " --mute [TCP] All known Mute packets\n" -+ " --waste [TCP] All known Waste packets\n" -+ " --xdcc [TCP] All known XDCC packets (only xdcc login)\n\n" -+ " DEBUG SUPPPORT, use only if you know why\n" -+ " --debug Generate kernel debug output, THIS WILL SLOW DOWN THE FILTER\n" -+ "\nNote that the follwing options will have the same meaning:\n" -+ " '--ipp2p' is equal to '--edk --dc --kazaa --gnu --bit --apple --winmx --soul --ares'\n" -+ "\nIPP2P was intended for TCP only. Due to increasing usage of UDP we needed to change this.\n" -+ "You can now use -p udp to search UDP packets only or without -p switch to search UDP and TCP packets.\n" -+ "\nSee README included with this package for more details or visit http://www.ipp2p.org%5Cn" -+ "\nExamples:\n" -+ " iptables -A FORWARD -m ipp2p --ipp2p -j MARK --set-mark 0x01\n" -+ " iptables -A FORWARD -p udp -m ipp2p --kazaa --bit -j DROP\n" -+ " iptables -A FORWARD -p tcp -m ipp2p --edk --soul -j DROP\n\n" -+ , IPP2P_VERSION); -+} -+ -+static struct option opts[] = { -+ { "ipp2p", 0, 0, '1' }, -+ { "edk", 0, 0, '2' }, -+ { "dc", 0, 0, '7' }, -+ { "gnu", 0, 0, '9' }, -+ { "kazaa", 0, 0, 'a' }, -+ { "bit", 0, 0, 'b' }, -+ { "apple", 0, 0, 'c' }, -+ { "soul", 0, 0, 'd' }, -+ { "winmx", 0, 0, 'e' }, -+ { "ares", 0, 0, 'f' }, -+ { "mute", 0, 0, 'g' }, -+ { "waste", 0, 0, 'h' }, -+ { "xdcc", 0, 0, 'i' }, -+ { "debug", 0, 0, 'j' }, -+ {0} -+}; -+ -+ -+static void -+#ifdef _XTABLES_H -+init(struct xt_entry_match *m) -+#else -+init(struct ipt_entry_match *t, unsigned int *nfcache) -+#endif -+{ -+ struct ipt_p2p_info *info = (struct ipt_p2p_info *)m->data; -+ -+#ifndef _XTABLES_H -+ *nfcache |= NFC_UNKNOWN; -+#endif -+ -+ /*init the module with default values*/ -+ info->cmd = 0; -+ info->debug = 0; -+ -+} -+ -+ -+static int -+parse(int c, char **argv, int invert, unsigned int *flags, -+#ifdef _XTABLES_H -+ const void *entry, struct xt_entry_match **match) -+#else -+ const struct ipt_entry *entry, unsigned int *nfcache, struct ipt_entry_match **match) -+#endif -+{ -+ struct ipt_p2p_info *info = (struct ipt_p2p_info *)(*match)->data; -+ -+ switch (c) { -+ case '1': /*cmd: ipp2p*/ -+ if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ipp2p' may only be " -+ "specified once!"); -+ -+/* if ((*flags & SHORT_HAND_DATA) == SHORT_HAND_DATA) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ipp2p-data' may only be " -+ "specified alone!"); -+*/ -+ -+ if ((*flags) != 0) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ipp2p' may only be " -+ "specified alone!"); -+ if (invert) xtables_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!"); -+ *flags += SHORT_HAND_IPP2P; -+ info->cmd = *flags; -+ break; -+ -+ case '2': /*cmd: edk*/ -+ if ((*flags & IPP2P_EDK) == IPP2P_EDK) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--edk' may only be " -+ "specified once"); -+ if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ipp2p' may only be " -+ "specified alone!"); -+/* if ((*flags & SHORT_HAND_DATA) == SHORT_HAND_DATA) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ipp2p-data' may only be " -+ "specified alone!");*/ -+ if ((*flags & IPP2P_DATA_EDK) == IPP2P_DATA_EDK) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: use `--edk' OR `--edk-data' but not both of them!"); -+ if (invert) xtables_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!"); -+ *flags += IPP2P_EDK; -+ info->cmd = *flags; -+ break; -+ -+ -+ case '7': /*cmd: dc*/ -+ if ((*flags & IPP2P_DC) == IPP2P_DC) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--dc' may only be " -+ "specified once!"); -+ if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ipp2p' may only be " -+ "specified alone!"); -+/* if ((*flags & SHORT_HAND_DATA) == SHORT_HAND_DATA) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ipp2p-data' may only be " -+ "specified alone!");*/ -+ if ((*flags & IPP2P_DATA_DC) == IPP2P_DATA_DC) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: use `--dc' OR `--dc-data' but not both of them!"); -+ if (invert) xtables_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!"); -+ *flags += IPP2P_DC; -+ info->cmd = *flags; -+ break; -+ -+ -+ case '9': /*cmd: gnu*/ -+ if ((*flags & IPP2P_GNU) == IPP2P_GNU) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--gnu' may only be " -+ "specified once!"); -+/* if ((*flags & SHORT_HAND_DATA) == SHORT_HAND_DATA) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ipp2p-data' may only be " -+ "specified alone!");*/ -+ if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ipp2p' may only be " -+ "specified alone!"); -+ if ((*flags & IPP2P_DATA_GNU) == IPP2P_DATA_GNU) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: use `--gnu' OR `--gnu-data' but not both of them!"); -+ if (invert) xtables_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!"); -+ *flags += IPP2P_GNU; -+ info->cmd = *flags; -+ break; -+ -+ case 'a': /*cmd: kazaa*/ -+ if ((*flags & IPP2P_KAZAA) == IPP2P_KAZAA) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--kazaa' may only be " -+ "specified once!"); -+/* if ((*flags & SHORT_HAND_DATA) == SHORT_HAND_DATA) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ipp2p-data' may only be " -+ "specified alone!");*/ -+ if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ipp2p' may only be " -+ "specified alone!"); -+ if ((*flags & IPP2P_DATA_KAZAA) == IPP2P_DATA_KAZAA) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: use `--kazaa' OR `--kazaa-data' but not both of them!"); -+ if (invert) xtables_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!"); -+ *flags += IPP2P_KAZAA; -+ info->cmd = *flags; -+ break; -+ -+ case 'b': /*cmd: bit*/ -+ if ((*flags & IPP2P_BIT) == IPP2P_BIT) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--bit' may only be " -+ "specified once!"); -+ if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ipp2p' may only be " -+ "specified alone!"); -+ if (invert) xtables_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!"); -+ *flags += IPP2P_BIT; -+ info->cmd = *flags; -+ break; -+ -+ case 'c': /*cmd: apple*/ -+ if ((*flags & IPP2P_APPLE) == IPP2P_APPLE) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--apple' may only be " -+ "specified once!"); -+ if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ipp2p' may only be " -+ "specified alone!"); -+ if (invert) xtables_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!"); -+ *flags += IPP2P_APPLE; -+ info->cmd = *flags; -+ break; -+ -+ -+ case 'd': /*cmd: soul*/ -+ if ((*flags & IPP2P_SOUL) == IPP2P_SOUL) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--soul' may only be " -+ "specified once!"); -+ if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ipp2p' may only be " -+ "specified alone!"); -+ if (invert) xtables_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!"); -+ *flags += IPP2P_SOUL; -+ info->cmd = *flags; -+ break; -+ -+ -+ case 'e': /*cmd: winmx*/ -+ if ((*flags & IPP2P_WINMX) == IPP2P_WINMX) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--winmx' may only be " -+ "specified once!"); -+ if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ipp2p' may only be " -+ "specified alone!"); -+ if (invert) xtables_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!"); -+ *flags += IPP2P_WINMX; -+ info->cmd = *flags; -+ break; -+ -+ case 'f': /*cmd: ares*/ -+ if ((*flags & IPP2P_ARES) == IPP2P_ARES) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ares' may only be " -+ "specified once!"); -+ if ((*flags & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ipp2p' may only be " -+ "specified alone!"); -+ if (invert) xtables_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!"); -+ *flags += IPP2P_ARES; -+ info->cmd = *flags; -+ break; -+ -+ case 'g': /*cmd: mute*/ -+ if ((*flags & IPP2P_MUTE) == IPP2P_MUTE) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--mute' may only be " -+ "specified once!"); -+ if (invert) xtables_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!"); -+ *flags += IPP2P_MUTE; -+ info->cmd = *flags; -+ break; -+ case 'h': /*cmd: waste*/ -+ if ((*flags & IPP2P_WASTE) == IPP2P_WASTE) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--waste' may only be " -+ "specified once!"); -+ if (invert) xtables_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!"); -+ *flags += IPP2P_WASTE; -+ info->cmd = *flags; -+ break; -+ case 'i': /*cmd: xdcc*/ -+ if ((*flags & IPP2P_XDCC) == IPP2P_XDCC) -+ xtables_error(PARAMETER_PROBLEM, -+ "ipp2p: `--ares' may only be " -+ "specified once!"); -+ if (invert) xtables_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!"); -+ *flags += IPP2P_XDCC; -+ info->cmd = *flags; -+ break; -+ -+ case 'j': /*cmd: debug*/ -+ if (invert) xtables_error(PARAMETER_PROBLEM, "ipp2p: invert [!] is not allowed!"); -+ info->debug = 1; -+ break; -+ -+ default: -+// xtables_error(PARAMETER_PROBLEM, -+// "\nipp2p-parameter problem: for ipp2p usage type: iptables -m ipp2p --help\n"); -+ return 0; -+ } -+ return 1; -+} -+ -+ -+static void -+final_check(unsigned int flags) -+{ -+ if (!flags) -+ xtables_error(PARAMETER_PROBLEM, -+ "\nipp2p-parameter problem: for ipp2p usage type: iptables -m ipp2p --help\n"); -+} -+ -+static void -+#ifdef _XTABLES_H -+print(const void *ip, -+ const struct xt_entry_match *match, -+#else -+print(const struct ipt_ip *ip, -+ const struct ipt_entry_match *match, -+#endif -+ int numeric) -+{ -+ struct ipt_p2p_info *info = (struct ipt_p2p_info *)match->data; -+ -+ printf("ipp2p v%s", IPP2P_VERSION); -+ if ((info->cmd & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P) printf(" --ipp2p"); -+// if ((info->cmd & SHORT_HAND_DATA) == SHORT_HAND_DATA) printf(" --ipp2p-data"); -+ if ((info->cmd & IPP2P_KAZAA) == IPP2P_KAZAA) printf(" --kazaa"); -+// if ((info->cmd & IPP2P_DATA_KAZAA) == IPP2P_DATA_KAZAA) printf(" --kazaa-data"); -+// if ((info->cmd & IPP2P_DATA_GNU) == IPP2P_DATA_GNU) printf(" --gnu-data"); -+ if ((info->cmd & IPP2P_GNU) == IPP2P_GNU) printf(" --gnu"); -+ if ((info->cmd & IPP2P_EDK) == IPP2P_EDK) printf(" --edk"); -+// if ((info->cmd & IPP2P_DATA_EDK) == IPP2P_DATA_EDK) printf(" --edk-data"); -+// if ((info->cmd & IPP2P_DATA_DC) == IPP2P_DATA_DC) printf(" --dc-data"); -+ if ((info->cmd & IPP2P_DC) == IPP2P_DC) printf(" --dc"); -+ if ((info->cmd & IPP2P_BIT) == IPP2P_BIT) printf(" --bit"); -+ if ((info->cmd & IPP2P_APPLE) == IPP2P_APPLE) printf(" --apple"); -+ if ((info->cmd & IPP2P_SOUL) == IPP2P_SOUL) printf(" --soul"); -+ if ((info->cmd & IPP2P_WINMX) == IPP2P_WINMX) printf(" --winmx"); -+ if ((info->cmd & IPP2P_ARES) == IPP2P_ARES) printf(" --ares"); -+ if ((info->cmd & IPP2P_MUTE) == IPP2P_MUTE) printf(" --mute"); -+ if ((info->cmd & IPP2P_WASTE) == IPP2P_WASTE) printf(" --waste"); -+ if ((info->cmd & IPP2P_XDCC) == IPP2P_XDCC) printf(" --xdcc"); -+ if (info->debug != 0) printf(" --debug"); -+ printf(" "); -+} -+ -+static void -+#ifdef _XTABLES_H -+save(const void *ip, -+ const struct xt_entry_match *match) -+#else -+save(const struct ipt_ip *ip, -+ const struct ipt_entry_match *match) -+#endif -+{ -+ struct ipt_p2p_info *info = (struct ipt_p2p_info *)match->data; -+ -+ if ((info->cmd & SHORT_HAND_IPP2P) == SHORT_HAND_IPP2P) printf("--ipp2p "); -+// if ((info->cmd & SHORT_HAND_DATA) == SHORT_HAND_DATA) printf("--ipp2p-data "); -+ if ((info->cmd & IPP2P_KAZAA) == IPP2P_KAZAA) printf("--kazaa "); -+// if ((info->cmd & IPP2P_DATA_KAZAA) == IPP2P_DATA_KAZAA) printf("--kazaa-data "); -+// if ((info->cmd & IPP2P_DATA_GNU) == IPP2P_DATA_GNU) printf("--gnu-data "); -+ if ((info->cmd & IPP2P_GNU) == IPP2P_GNU) printf("--gnu "); -+ if ((info->cmd & IPP2P_EDK) == IPP2P_EDK) printf("--edk "); -+// if ((info->cmd & IPP2P_DATA_EDK) == IPP2P_DATA_EDK) printf("--edk-data "); -+// if ((info->cmd & IPP2P_DATA_DC) == IPP2P_DATA_DC) printf("--dc-data "); -+ if ((info->cmd & IPP2P_DC) == IPP2P_DC) printf("--dc "); -+ if ((info->cmd & IPP2P_BIT) == IPP2P_BIT) printf("--bit "); -+ if ((info->cmd & IPP2P_APPLE) == IPP2P_APPLE) printf("--apple "); -+ if ((info->cmd & IPP2P_SOUL) == IPP2P_SOUL) printf("--soul "); -+ if ((info->cmd & IPP2P_WINMX) == IPP2P_WINMX) printf("--winmx "); -+ if ((info->cmd & IPP2P_ARES) == IPP2P_ARES) printf("--ares "); -+ if ((info->cmd & IPP2P_MUTE) == IPP2P_MUTE) printf(" --mute"); -+ if ((info->cmd & IPP2P_WASTE) == IPP2P_WASTE) printf(" --waste"); -+ if ((info->cmd & IPP2P_XDCC) == IPP2P_XDCC) printf(" --xdcc"); -+ if (info->debug != 0) printf("--debug "); -+} -+ -+ -+static -+struct xtables_match ipp2p= -+{ -+ .next = NULL, -+ .name = "ipp2p", -+ .version = XTABLES_VERSION, -+ .size = XT_ALIGN(sizeof(struct ipt_p2p_info)), -+ .userspacesize = XT_ALIGN(sizeof(struct ipt_p2p_info)), -+ .help = &help, -+ .init = &init, -+ .parse = &parse, -+ .final_check = &final_check, -+ .print = &print, -+ .save = &save, -+ .extra_opts = opts -+}; -+ -+ -+ -+void _init(void) -+{ -+ xtables_register_match(&ipp2p); -+} -+ -diff -Naur iptables-1.4.6.org/extensions/libipt_ipp2p.man iptables-1.4.6/extensions/libipt_ipp2p.man ---- iptables-1.4.6.org/extensions/libipt_ipp2p.man 1970-01-01 01:00:00.000000000 +0100 -+++ iptables-1.4.6/extensions/libipt_ipp2p.man 2010-02-13 20:02:52.000000000 +0100 -@@ -0,0 +1,43 @@ -+This module matches certain packets in P2P flows. It is not -+designed to match all packets belonging to a P2P connection - -+use IPP2P together with CONNMARK for this purpose. Also visit -+http://www.ipp2p.org for detailed information. -+ -+Use it together with -p tcp or -p udp to search these protocols -+only or without -p switch to search packets of both protocols. -+ -+IPP2P provides the following options: -+.TP -+.B "--edk " -+Matches as many eDonkey/eMule packets as possible. -+.TP -+.B "--kazaa " -+Matches as many KaZaA packets as possible. -+.TP -+.B "--gnu " -+Matches as many Gnutella packets as possible. -+.TP -+.B "--dc " -+Matches as many Direct Connect packets as possible. -+.TP -+.B "--bit " -+Matches BitTorrent packets. -+.TP -+.B "--apple " -+Matches AppleJuice packets. -+.TP -+.B "--soul " -+Matches some SoulSeek packets. Considered as beta, use careful! -+.TP -+.B "--winmx " -+Matches some WinMX packets. Considered as beta, use careful! -+.TP -+.B "--ares " -+Matches Ares and AresLite packets. Use together with -j DROP only. -+.TP -+.B "--ipp2p " -+Short hand for: --edk --kazaa --gnu --dc -+.TP -+.B "--debug " -+Prints some information about each hit into kernel logfile. May -+produce huge logfiles so beware! diff --git a/src/patches/iputils-20020927-headers.patch b/src/patches/iputils-20020927-headers.patch deleted file mode 100644 index 3f8be1647..000000000 --- a/src/patches/iputils-20020927-headers.patch +++ /dev/null @@ -1,150 +0,0 @@ -diff -urN iputils/clockdiff.c iputils.new/clockdiff.c ---- iputils/clockdiff.c 2002-02-22 19:10:59.000000000 -0500 -+++ iputils.new/clockdiff.c 2003-09-10 09:20:28.000000000 -0400 -@@ -2,6 +2,7 @@ - #include <sys/types.h> - #include <sys/param.h> - #include <stdio.h> -+#include <linux/types.h> - #include <unistd.h> - #include <stdlib.h> - #include <math.h> -diff -urN iputils/ping6.c iputils.new/ping6.c ---- iputils/ping6.c 2003-09-10 17:27:48.000000000 -0400 -+++ iputils.new/ping6.c 2003-09-10 17:22:43.000000000 -0400 -@@ -68,8 +68,44 @@ - */ - #include "ping_common.h" - --#include <linux/in6.h> --#include <linux/ipv6.h> -+struct ipv6_rt_hdr { -+ __u8 nexthdr; -+ __u8 hdrlen; -+ __u8 type; -+ __u8 segments_left; -+ -+ /* -+ * type specific data -+ * variable length field -+ */ -+}; -+ -+struct rt0_hdr { -+ struct ipv6_rt_hdr rt_hdr; -+ __u32 bitmap; /* strict/loose bit map */ -+ struct in6_addr addr[0]; -+ -+#define rt0_type rt_hdr.type; -+}; -+#define IPV6_SRCRT_TYPE_0 0 /* IPv6 type 0 Routing Header */ -+struct ipv6hdr { -+#if defined(__LITTLE_ENDIAN) -+ __u8 priority:4, -+ version:4; -+#elif defined(__BIG_ENDIAN) -+ __u8 version:4, -+ priority:4; -+#endif -+ __u8 flow_lbl[3]; -+ -+ __u16 payload_len; -+ __u8 nexthdr; -+ __u8 hop_limit; -+ -+ struct in6_addr saddr; -+ struct in6_addr daddr; -+}; -+ - #include <linux/icmpv6.h> - - #define BIT_CLEAR(nr, addr) do { ((__u32 *)(addr))[(nr) >> 5] &= ~(1U << ((nr) & 31)); } while(0) -diff -urN iputils/ping.c iputils.new/ping.c ---- iputils/ping.c 2003-09-10 17:27:48.000000000 -0400 -+++ iputils.new/ping.c 2003-09-10 17:18:16.000000000 -0400 -@@ -60,8 +60,8 @@ - - #include "ping_common.h" - -+#include <linux/icmp.h> - #include <netinet/ip.h> --#include <netinet/ip_icmp.h> - - - #define MAXIPLEN 60 -diff -urN iputils/ping_common.h iputils.new/ping_common.h ---- iputils/ping_common.h 2002-09-20 11:08:11.000000000 -0400 -+++ iputils.new/ping_common.h 2003-09-10 17:16:16.000000000 -0400 -@@ -19,6 +19,7 @@ - - #include <netinet/in.h> - #include <arpa/inet.h> -+#include <linux/types.h> - #include <linux/errqueue.h> - - #include "SNAPSHOT.h" -diff -urN iputils/tftpd.c iputils.new/tftpd.c ---- iputils/tftpd.c 2002-01-23 19:31:41.000000000 -0500 -+++ iputils.new/tftpd.c 2003-09-10 09:39:45.000000000 -0400 -@@ -57,7 +57,6 @@ - - #include <sys/socket.h> - #include <netinet/in.h> --#include <linux/in6.h> - #include <netdb.h> - - #include <setjmp.h> -diff -urN iputils/tracepath6.c iputils.new/tracepath6.c ---- iputils/tracepath6.c 2001-09-01 22:03:46.000000000 -0400 -+++ iputils.new/tracepath6.c 2003-09-10 09:40:18.000000000 -0400 -@@ -14,8 +14,7 @@ - #include <unistd.h> - #include <sys/socket.h> - #include <netinet/in.h> -- --#include <linux/in6.h> -+#include <linux/types.h> - #include <linux/errqueue.h> - #include <errno.h> - #include <string.h> -diff -urN iputils/tracepath.c iputils.new/tracepath.c ---- iputils/tracepath.c 2002-02-22 19:10:59.000000000 -0500 -+++ iputils.new/tracepath.c 2003-09-10 06:14:35.000000000 -0400 -@@ -13,6 +13,7 @@ - #include <stdlib.h> - #include <unistd.h> - #include <sys/socket.h> -+#include <linux/types.h> - #include <linux/errqueue.h> - #include <errno.h> - #include <string.h> -diff -urN iputils/traceroute6.c iputils.new/traceroute6.c ---- iputils/traceroute6.c 2002-09-20 11:44:22.000000000 -0400 -+++ iputils.new/traceroute6.c 2003-09-10 10:12:47.000000000 -0400 -@@ -246,9 +246,24 @@ - #include <netinet/ip_icmp.h> - #include <netinet/udp.h> - --#include <linux/ipv6.h> --#include <linux/in6.h> -+#include <linux/types.h> -+struct ipv6hdr { -+#if defined(__LITTLE_ENDIAN) -+ __u8 priority:4, -+ version:4; -+#elif defined(__BIG_ENDIAN) -+ __u8 version:4, -+ priority:4; -+#endif -+ __u8 flow_lbl[3]; -+ -+ __u16 payload_len; -+ __u8 nexthdr; -+ __u8 hop_limit; - -+ struct in6_addr saddr; -+ struct in6_addr daddr; -+}; - #include <linux/icmpv6.h> - - #include <arpa/inet.h> diff --git a/src/patches/iputils-20020927-rh.patch b/src/patches/iputils-20020927-rh.patch deleted file mode 100644 index 23d6fd802..000000000 --- a/src/patches/iputils-20020927-rh.patch +++ /dev/null @@ -1,31 +0,0 @@ ---- iputils/doc/Makefile.rh7 2002-02-23 01:17:57.000000000 +0100 -+++ iputils/doc/Makefile 2004-05-12 14:55:16.724448173 +0200 -@@ -2,7 +2,7 @@ - HTMLFILES=$(subst .sgml,.html,$(SGMLFILES)) index.html - MANFILES=$(subst .sgml,.8,$(SGMLFILES)) - --all: html -+all: - - html: $(HTMLFILES) iputils.html - ---- iputils/Makefile.rh7 2002-09-20 20:23:55.000000000 +0200 -+++ iputils/Makefile 2004-05-12 15:08:25.638310270 +0200 -@@ -24,14 +24,14 @@ - CC=gcc - # What a pity, all new gccs are buggy and -Werror does not work. Sigh. - #CCOPT=-D_GNU_SOURCE -O2 -Wstrict-prototypes -Wall -g -Werror --CCOPT=-D_GNU_SOURCE -O2 -Wstrict-prototypes -Wall -g --CFLAGS=$(CCOPT) $(GLIBCFIX) -I$(KERNEL_INCLUDE) -I../include $(DEFINES) -+#CCOPT=-D_GNU_SOURCE -O2 -Wstrict-prototypes -Wall -g -+#CFLAGS=$(CCOPT) $(DEFINES) - - IPV4_TARGETS=tracepath ping clockdiff rdisc arping tftpd rarpd - IPV6_TARGETS=tracepath6 traceroute6 ping6 - TARGETS=$(IPV4_TARGETS) $(IPV6_TARGETS) - --all: check-kernel $(TARGETS) -+all: $(TARGETS) - - - tftpd: tftpd.o tftpsubs.o diff --git a/src/patches/iputils-glibckernheaders.patch b/src/patches/iputils-glibckernheaders.patch deleted file mode 100644 index 88a54b1bb..000000000 --- a/src/patches/iputils-glibckernheaders.patch +++ /dev/null @@ -1,74 +0,0 @@ -diff -ru iputils/include-glibc/netinet/in.h iputils-clean/include-glibc/netinet/in.h ---- iputils/include-glibc/netinet/in.h 2000-06-18 14:57:25.000000000 -0400 -+++ iputils-clean/include-glibc/netinet/in.h 2003-09-03 11:21:55.000000000 -0400 -@@ -8,4 +8,45 @@ - - #define SOL_IP 0 - --#endif /* netinet/in.h */ -+/* Functions to convert between host and network byte order. -+ -+ Please note that these functions normally take `unsigned long int' or -+ `unsigned short int' values as arguments and also return them. But -+ this was a short-sighted decision since on different systems the types -+ may have different representations but the values are always the same. */ -+ -+extern u_int32_t ntohl (u_int32_t __netlong) __THROW __attribute__ ((__const__)); -+extern u_int16_t ntohs (u_int16_t __netshort) -+ __THROW __attribute__ ((__const__)); -+extern u_int32_t htonl (u_int32_t __hostlong) -+ __THROW __attribute__ ((__const__)); -+extern u_int16_t htons (u_int16_t __hostshort) -+ __THROW __attribute__ ((__const__)); -+ -+#include <endian.h> -+ -+/* Get machine dependent optimized versions of byte swapping functions. */ -+#include <bits/byteswap.h> -+ -+#ifdef __OPTIMIZE__ -+/* We can optimize calls to the conversion functions. Either nothing has -+ to be done or we are using directly the byte-swapping functions which -+ often can be inlined. */ -+# if __BYTE_ORDER == __BIG_ENDIAN -+/* The host byte order is the same as network byte order, -+ so these functions are all just identity. */ -+# define ntohl(x) (x) -+# define ntohs(x) (x) -+# define htonl(x) (x) -+# define htons(x) (x) -+# else -+# if __BYTE_ORDER == __LITTLE_ENDIAN -+# define ntohl(x) __bswap_32 (x) -+# define ntohs(x) __bswap_16 (x) -+# define htonl(x) __bswap_32 (x) -+# define htons(x) __bswap_16 (x) -+# endif -+# endif -+#endif -+ -+#endif /* netinet/in.h */ -diff -ru iputils/ping6.c iputils-clean/ping6.c ---- iputils/ping6.c 2003-09-03 11:22:46.000000000 -0400 -+++ iputils-clean/ping6.c 2003-09-03 11:15:42.000000000 -0400 -@@ -879,7 +879,7 @@ - once = 1; - - /* Patch bpflet for current identifier. */ -- insns[1] = (struct sock_filter)BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_K, __constant_htons(ident), 0, 1); -+ insns[1] = (struct sock_filter)BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_K, htons(ident), 0, 1); - - if (setsockopt(icmp_sock, SOL_SOCKET, SO_ATTACH_FILTER, &filter, sizeof(filter))) - perror("WARNING: failed to install socket filter\n"); -diff -ru iputils/ping.c iputils-clean/ping.c ---- iputils/ping.c 2003-09-03 11:22:46.000000000 -0400 -+++ iputils-clean/ping.c 2003-09-03 11:15:26.000000000 -0400 -@@ -1196,7 +1196,7 @@ - once = 1; - - /* Patch bpflet for current identifier. */ -- insns[2] = (struct sock_filter)BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_K, __constant_htons(ident), 0, 1); -+ insns[2] = (struct sock_filter)BPF_JUMP(BPF_JMP|BPF_JEQ|BPF_K, htons(ident), 0, 1); - - if (setsockopt(icmp_sock, SOL_SOCKET, SO_ATTACH_FILTER, &filter, sizeof(filter))) - perror("WARNING: failed to install socket filter\n"); diff --git a/src/patches/kbd-1.12-backspace-1.patch b/src/patches/kbd-1.12-backspace-1.patch deleted file mode 100644 index 8bcbb94a7..000000000 --- a/src/patches/kbd-1.12-backspace-1.patch +++ /dev/null @@ -1,232 +0,0 @@ -Submitted By: Alexander E. Patrakov -Date: 2005-05-16 -Initial Package Version: 1.12 -Upstream Status: Not submitted, possibly incomplete -Description: Makes Backspace and Delete keys consistent in all i386 keymaps. -Obsoletes the /etc/kbd/bs-sends-del file for i386. - -diff -urN kbd-1.12.orig/data/keymaps/i386/dvorak/dvorak-l.map kbd-1.12/data/keymaps/i386/dvorak/dvorak-l.map ---- kbd-1.12.orig/data/keymaps/i386/dvorak/dvorak-l.map 2002-10-11 17:08:51.000000000 +0600 -+++ kbd-1.12/data/keymaps/i386/dvorak/dvorak-l.map 2005-05-16 19:54:48.000000000 +0600 -@@ -43,7 +43,7 @@ - keycode 11 = three numbersign - keycode 12 = two at - keycode 13 = one exclam -- keycode 14 = BackSpace Delete -+ keycode 14 = Delete Delete - ! -------------------------------------------------------------------------- - ! Row 3 - ! -------------------------------------------------------------------------- -diff -urN kbd-1.12.orig/data/keymaps/i386/dvorak/dvorak-r.map kbd-1.12/data/keymaps/i386/dvorak/dvorak-r.map ---- kbd-1.12.orig/data/keymaps/i386/dvorak/dvorak-r.map 2002-10-11 17:08:51.000000000 +0600 -+++ kbd-1.12/data/keymaps/i386/dvorak/dvorak-r.map 2005-05-16 19:54:48.000000000 +0600 -@@ -43,7 +43,7 @@ - keycode 11 = slash question - keycode 12 = bracketleft braceleft - keycode 13 = bracketright braceright -- keycode 14 = BackSpace Delete -+ keycode 14 = Delete Delete - ! -------------------------------------------------------------------------- - ! Row 3 - ! -------------------------------------------------------------------------- -diff -urN kbd-1.12.orig/data/keymaps/i386/fgGIod/tr_f-latin5.map kbd-1.12/data/keymaps/i386/fgGIod/tr_f-latin5.map ---- kbd-1.12.orig/data/keymaps/i386/fgGIod/tr_f-latin5.map 2002-10-13 06:21:12.000000000 +0600 -+++ kbd-1.12/data/keymaps/i386/fgGIod/tr_f-latin5.map 2005-05-16 19:54:48.000000000 +0600 -@@ -51,7 +51,7 @@ - alt keycode 12 = Meta_minus - keycode 13 = minus underscore - alt keycode 13 = Meta_equal --keycode 14 = BackSpace Delete -+keycode 14 = Delete Delete - alt keycode 14 = Meta_Delete - keycode 15 = Tab Tab - alt keycode 15 = Meta_Tab -diff -urN kbd-1.12.orig/data/keymaps/i386/qwerty/lt.l4.map kbd-1.12/data/keymaps/i386/qwerty/lt.l4.map ---- kbd-1.12.orig/data/keymaps/i386/qwerty/lt.l4.map 2002-10-13 05:59:51.000000000 +0600 -+++ kbd-1.12/data/keymaps/i386/qwerty/lt.l4.map 2005-05-16 19:54:48.000000000 +0600 -@@ -205,7 +205,7 @@ - # edit this if you want the key above <Enter> to delete symbols above - # cursor, not before. - keycode 14 = \ -- BackSpace BackSpace BackSpace BackSpace \ -+ Delete Delete Delete Delete \ - Delete Delete Delete Delete \ - Meta_BackSpace Meta_BackSpace Meta_BackSpace Meta_BackSpace \ - Meta_Delete Meta_Delete Meta_Delete Meta_Delete -@@ -506,7 +506,7 @@ - - # Edit this if you want strict VT100 emulation. - string F111 = "\033[3$" --keycode 111 = Delete F111 Delete F111 \ -+keycode 111 = Remove F111 Remove F111 \ - Remove Remove Remove Remove \ - Meta_Delete Meta_Delete Meta_Delete Meta_Delete \ - Boot Boot Boot Boot -diff -urN kbd-1.12.orig/data/keymaps/i386/qwerty/lt.map kbd-1.12/data/keymaps/i386/qwerty/lt.map ---- kbd-1.12.orig/data/keymaps/i386/qwerty/lt.map 2002-10-13 06:00:25.000000000 +0600 -+++ kbd-1.12/data/keymaps/i386/qwerty/lt.map 2005-05-16 19:54:48.000000000 +0600 -@@ -204,7 +204,7 @@ - # edit this if you want the key above <Enter> to delete symbols above - # cursor, not before. - keycode 14 = \ -- BackSpace BackSpace BackSpace BackSpace \ -+ Delete Delete Delete Delete \ - Delete Delete Delete Delete \ - Meta_BackSpace Meta_BackSpace Meta_BackSpace Meta_BackSpace \ - Meta_Delete Meta_Delete Meta_Delete Meta_Delete -@@ -505,7 +505,7 @@ - - # Edit this if you want strict VT100 emulation. - string F111 = "\033[3$" --keycode 111 = Delete F111 Delete F111 \ -+keycode 111 = Remove F111 Remove F111 \ - Remove Remove Remove Remove \ - Meta_Delete Meta_Delete Meta_Delete Meta_Delete \ - Boot Boot Boot Boot -diff -urN kbd-1.12.orig/data/keymaps/i386/qwerty/no-latin1.map kbd-1.12/data/keymaps/i386/qwerty/no-latin1.map ---- kbd-1.12.orig/data/keymaps/i386/qwerty/no-latin1.map 2002-10-11 17:08:49.000000000 +0600 -+++ kbd-1.12/data/keymaps/i386/qwerty/no-latin1.map 2005-05-16 19:54:48.000000000 +0600 -@@ -3,7 +3,7 @@ - # Send comments to Kjetil T. Homme kjetilho@ifi.uio.no - include "linux-with-alt-and-altgr" - plain keycode 83 = KP_Comma -- plain keycode 111 = Delete # "Remove" originally, weird... -+ plain keycode 111 = Remove - strings as usual - - keycode 1 = Escape -diff -urN kbd-1.12.orig/data/keymaps/i386/qwerty/ru-ms.map kbd-1.12/data/keymaps/i386/qwerty/ru-ms.map ---- kbd-1.12.orig/data/keymaps/i386/qwerty/ru-ms.map 2002-10-13 06:07:05.000000000 +0600 -+++ kbd-1.12/data/keymaps/i386/qwerty/ru-ms.map 2005-05-16 19:54:48.000000000 +0600 -@@ -89,8 +89,8 @@ - altgr alt keycode 13 = Meta_equal - shift alt keycode 13 = Meta_plus - altgr shift alt keycode 13 = Meta_plus -- keycode 14 = BackSpace BackSpace BackSpace BackSpace --# keycode 14 = Delete Delete Delete Delete -+# keycode 14 = BackSpace BackSpace BackSpace BackSpace -+ keycode 14 = Delete Delete Delete Delete - alt keycode 14 = Meta_Delete - altgr alt keycode 14 = Meta_Delete - keycode 15 = Tab Tab Tab Tab -diff -urN kbd-1.12.orig/data/keymaps/i386/qwerty/ru.map kbd-1.12/data/keymaps/i386/qwerty/ru.map ---- kbd-1.12.orig/data/keymaps/i386/qwerty/ru.map 2002-10-13 06:02:19.000000000 +0600 -+++ kbd-1.12/data/keymaps/i386/qwerty/ru.map 2005-05-16 19:56:08.000000000 +0600 -@@ -37,7 +37,7 @@ - alt keycode 12 = Meta_minus - keycode 13 = equal plus equal plus - alt keycode 13 = Meta_equal -- keycode 14 = BackSpace BackSpace BackSpace BackSpace -+ keycode 14 = Delete Delete Delete Delete - alt keycode 14 = Meta_Delete - keycode 15 = Tab Tab Tab Tab - alt keycode 15 = Meta_Tab -diff -urN kbd-1.12.orig/data/keymaps/i386/qwerty/ru1.map kbd-1.12/data/keymaps/i386/qwerty/ru1.map ---- kbd-1.12.orig/data/keymaps/i386/qwerty/ru1.map 2002-10-13 06:02:30.000000000 +0600 -+++ kbd-1.12/data/keymaps/i386/qwerty/ru1.map 2005-05-16 19:55:32.000000000 +0600 -@@ -143,8 +143,8 @@ - - # The keycode "0xFF" is too dangerous for many programs (including emacs). - # So let it be bracket instead of Hard Sign. --# altgr keycode 27 = +0xDF --# altgr shift keycode 27 = +0xFF -+altgr keycode 27 = +0xDF -+altgr shift keycode 27 = +0xFF - control keycode 27 = Control_bracketright - altgr control keycode 27 = Control_bracketright - alt keycode 27 = Meta_bracketright -diff -urN kbd-1.12.orig/data/keymaps/i386/qwerty/ru2.map kbd-1.12/data/keymaps/i386/qwerty/ru2.map ---- kbd-1.12.orig/data/keymaps/i386/qwerty/ru2.map 2002-10-13 06:05:47.000000000 +0600 -+++ kbd-1.12/data/keymaps/i386/qwerty/ru2.map 2005-05-16 19:56:52.000000000 +0600 -@@ -46,7 +46,7 @@ - alt keycode 12 = Meta_minus - keycode 13 = equal plus equal plus - alt keycode 13 = Meta_equal -- keycode 14 = BackSpace BackSpace BackSpace BackSpace -+ keycode 14 = Delete Delete Delete Delete - alt keycode 14 = Meta_Delete - keycode 15 = Tab Tab Tab Tab - alt keycode 15 = Meta_Tab -diff -urN kbd-1.12.orig/data/keymaps/i386/qwerty/se-ir209.map kbd-1.12/data/keymaps/i386/qwerty/se-ir209.map ---- kbd-1.12.orig/data/keymaps/i386/qwerty/se-ir209.map 2002-10-13 06:12:48.000000000 +0600 -+++ kbd-1.12/data/keymaps/i386/qwerty/se-ir209.map 2005-05-16 19:54:48.000000000 +0600 -@@ -345,7 +345,7 @@ - keycode 109 = Next Scroll_Forward - keycode 110 = Insert - -- keycode 111 = Delete # "Remove" originally, weird... -+ keycode 111 = Remove - control alt keycode 111 = Boot - control altgr keycode 111 = Boot - -diff -urN kbd-1.12.orig/data/keymaps/i386/qwerty/se-lat6.map kbd-1.12/data/keymaps/i386/qwerty/se-lat6.map ---- kbd-1.12.orig/data/keymaps/i386/qwerty/se-lat6.map 2002-10-13 06:13:01.000000000 +0600 -+++ kbd-1.12/data/keymaps/i386/qwerty/se-lat6.map 2005-05-16 19:54:48.000000000 +0600 -@@ -374,6 +374,6 @@ - keycode 109 = Next Scroll_Forward - keycode 110 = Insert - -- keycode 111 = Delete # "Remove" originally, weird... -+ keycode 111 = Remove - control alt keycode 111 = Boot - control altgr keycode 111 = Boot -diff -urN kbd-1.12.orig/data/keymaps/i386/qwerty/tr_q-latin5.map kbd-1.12/data/keymaps/i386/qwerty/tr_q-latin5.map ---- kbd-1.12.orig/data/keymaps/i386/qwerty/tr_q-latin5.map 2002-10-11 17:08:49.000000000 +0600 -+++ kbd-1.12/data/keymaps/i386/qwerty/tr_q-latin5.map 2005-05-16 19:54:48.000000000 +0600 -@@ -49,7 +49,7 @@ - alt keycode 12 = Meta_minus - keycode 13 = minus underscore - alt keycode 13 = Meta_equal --keycode 14 = BackSpace Delete -+keycode 14 = Delete Delete - alt keycode 14 = Meta_Delete - keycode 15 = Tab Tab - alt keycode 15 = Meta_Tab -diff -urN kbd-1.12.orig/data/keymaps/i386/qwerty/ua-utf-ws.map kbd-1.12/data/keymaps/i386/qwerty/ua-utf-ws.map ---- kbd-1.12.orig/data/keymaps/i386/qwerty/ua-utf-ws.map 2002-10-13 06:07:56.000000000 +0600 -+++ kbd-1.12/data/keymaps/i386/qwerty/ua-utf-ws.map 2005-05-16 19:54:48.000000000 +0600 -@@ -260,7 +260,7 @@ - shift ctrll ctrlr keycode 13 = plus - alt ctrll ctrlr keycode 13 = Meta_equal - shift alt ctrll ctrlr keycode 13 = Meta_plus --keycode 14 = BackSpace Delete -+keycode 14 = Delete Delete - control keycode 14 = BackSpace - alt keycode 14 = Meta_Delete - ctrlr keycode 14 = BackSpace -diff -urN kbd-1.12.orig/data/keymaps/i386/qwerty/ua-utf.map kbd-1.12/data/keymaps/i386/qwerty/ua-utf.map ---- kbd-1.12.orig/data/keymaps/i386/qwerty/ua-utf.map 2002-10-13 06:08:07.000000000 +0600 -+++ kbd-1.12/data/keymaps/i386/qwerty/ua-utf.map 2005-05-16 19:54:48.000000000 +0600 -@@ -250,7 +250,7 @@ - shift ctrll ctrlr keycode 13 = plus - alt ctrll ctrlr keycode 13 = Meta_equal - shift alt ctrll ctrlr keycode 13 = Meta_plus --keycode 14 = BackSpace Delete -+keycode 14 = Delete Delete - control keycode 14 = BackSpace - alt keycode 14 = Meta_Delete - ctrlr keycode 14 = BackSpace -diff -urN kbd-1.12.orig/data/keymaps/i386/qwerty/ua-ws.map kbd-1.12/data/keymaps/i386/qwerty/ua-ws.map ---- kbd-1.12.orig/data/keymaps/i386/qwerty/ua-ws.map 2002-10-13 06:08:19.000000000 +0600 -+++ kbd-1.12/data/keymaps/i386/qwerty/ua-ws.map 2005-05-16 19:54:48.000000000 +0600 -@@ -260,7 +260,7 @@ - shift ctrll ctrlr keycode 13 = plus - alt ctrll ctrlr keycode 13 = Meta_equal - shift alt ctrll ctrlr keycode 13 = Meta_plus --keycode 14 = BackSpace Delete -+keycode 14 = Delete Delete - control keycode 14 = BackSpace - alt keycode 14 = Meta_Delete - ctrlr keycode 14 = BackSpace -diff -urN kbd-1.12.orig/data/keymaps/i386/qwerty/ua.map kbd-1.12/data/keymaps/i386/qwerty/ua.map ---- kbd-1.12.orig/data/keymaps/i386/qwerty/ua.map 2002-10-13 06:08:31.000000000 +0600 -+++ kbd-1.12/data/keymaps/i386/qwerty/ua.map 2005-05-16 19:54:48.000000000 +0600 -@@ -249,7 +249,7 @@ - shift ctrll ctrlr keycode 13 = plus - alt ctrll ctrlr keycode 13 = Meta_equal - shift alt ctrll ctrlr keycode 13 = Meta_plus --keycode 14 = BackSpace Delete -+keycode 14 = Delete Delete - control keycode 14 = BackSpace - alt keycode 14 = Meta_Delete - ctrlr keycode 14 = BackSpace diff --git a/src/patches/kbd-1.12-gcc4_fixes-1.patch b/src/patches/kbd-1.12-gcc4_fixes-1.patch deleted file mode 100644 index ce1d429d3..000000000 --- a/src/patches/kbd-1.12-gcc4_fixes-1.patch +++ /dev/null @@ -1,54 +0,0 @@ -Submitted By: Matthew Burgess matthew@linuxfromscratch.org -Date: 2005-07-28 -Initial Package Version: 1.12 -Upstream Status: Unknown -Origin: http://cvs.fedora.redhat.com/viewcvs/devel/kbd/kbd-1.12-alias.patch?rev=1.2&... -Description: Fix violations of C aliasing rules, triggered by gcc4. - -diff -Naur kbd-1.12.orig/src/psffontop.c kbd-1.12/src/psffontop.c ---- kbd-1.12.orig/src/psffontop.c 2004-01-16 19:45:31.000000000 +0000 -+++ kbd-1.12/src/psffontop.c 2005-07-28 20:33:57.946088984 +0000 -@@ -59,7 +59,6 @@ - - static unsigned int - assemble_ucs2(char **inptr, int cnt) { -- unsigned char **in = (unsigned char **) inptr; - unsigned int u1, u2; - - if (cnt < 2) { -@@ -68,8 +67,8 @@ - exit(EX_DATAERR); - } - -- u1 = *(*in)++; -- u2 = *(*in)++; -+ u1 = (unsigned char)*(*inptr)++; -+ u2 = (unsigned char)*(*inptr)++; - return (u1 | (u2 << 8)); - } - -@@ -110,7 +109,6 @@ - */ - static void - get_uni_entry(char **inptr, char **endptr, struct unicode_list *up, int utf8) { -- unsigned char **in = (unsigned char **) inptr; - unsigned char uc; - unicode unichar; - int inseq = 0; -@@ -126,14 +124,14 @@ - exit(EX_DATAERR); - } - if (utf8) { -- uc = *(*in)++; -+ uc = *(*inptr)++; - if (uc == PSF2_SEPARATOR) - break; - if (uc == PSF2_STARTSEQ) { - inseq = 1; - continue; - } -- --(*in); -+ --(*inptr); - unichar = assemble_utf8(inptr, *endptr - *inptr); - } else { - unichar = assemble_ucs2(inptr, *endptr - *inptr); diff --git a/src/patches/kbd-1.12-more-programs-1.patch b/src/patches/kbd-1.12-more-programs-1.patch deleted file mode 100644 index 227abeddd..000000000 --- a/src/patches/kbd-1.12-more-programs-1.patch +++ /dev/null @@ -1,46 +0,0 @@ -Submitted By: Greg Schafer <greg at linuxfromscratch dot org> -Date: 2004-01-07 -Initial Package Version: 1.10 -Origin: LFS Book and Anderson Lizardo <lizardo at linuxfromscratch dot org> - (based on kbd-1.08-more-programs.patch) -Description: Install additional programs included in kbd package, - including their manpages. Note: setlogcons does not have - a manpage. - -diff -Naur kbd-1.10.orig/man/Makefile kbd-1.10/man/Makefile ---- kbd-1.10.orig/man/Makefile 2002-10-11 22:12:53.000000000 +0000 -+++ kbd-1.10/man/Makefile 2004-01-07 02:36:13.471404128 +0000 -@@ -7,6 +7,9 @@ - install -d -m 755 $(MANDIR)/$$i; \ - install -m 644 $$i/*.[0-9] $(MANDIR)/$$i; \ - done -+ install -d -m 755 $(MANDIR)/man8 -+ install -m 644 man8misc/setvesablank.8 $(MANDIR)/man8 -+ install -m 644 man8misc/getunimap.8 $(MANDIR)/man8 - rm -f $(MANDIR)/man5/keytables.5 - - clean: -diff -Naur kbd-1.10.orig/src/Makefile.in kbd-1.10/src/Makefile.in ---- kbd-1.10.orig/src/Makefile.in 2004-01-03 17:53:06.000000000 +0000 -+++ kbd-1.10/src/Makefile.in 2004-01-07 02:36:44.706655648 +0000 -@@ -46,8 +46,9 @@ - OLDPROGS= mapscrn loadunimap - - # Not installed by default --MISC = screendump setlogcons setvesablank spawn_console spawn_login \ -- getunimap clrunimap outpsfheader setpalette -+#MISC = screendump setlogcons setvesablank spawn_console spawn_login \ -+# getunimap clrunimap outpsfheader setpalette -+MISC = setlogcons setvesablank getunimap - - # Installed by default - SHCMDS = unicode_start unicode_stop -@@ -73,7 +74,7 @@ - install: all - install -d -m 0755 $(BINDIR) $(LOADKEYS_BINDIR) - install -s -m 0755 $(setowner) $(PROGS) $(OLDPROGS) $(BINDIR) --# install -s -m 0755 $(setowner) $(MISC) $(BINDIR) -+ install -s -m 0755 $(setowner) $(MISC) $(BINDIR) - install -c -m 0755 $(setowner) $(SHCMDS) $(BINDIR) - for i in psfaddtable psfgettable psfstriptable; do \ - rm -f $(BINDIR)/$$i; ln -s psfxtable $(BINDIR)/$$i; \ diff --git a/src/patches/libcap-2.50-install_capsh_again.patch b/src/patches/libcap-2.50-install_capsh_again.patch new file mode 100644 index 000000000..0ae7520dc --- /dev/null +++ b/src/patches/libcap-2.50-install_capsh_again.patch @@ -0,0 +1,38 @@ +From 1f8d32942be54850a3a89c7b58ba5613b5525c58 Mon Sep 17 00:00:00 2001 +From: "Andrew G. Morgan" morgan@kernel.org +Date: Fri, 28 May 2021 13:41:17 -0700 +Subject: [PATCH] Make capsh an installed binary again + +Bug report from Jan Palus: + + https://bugzilla.kernel.org/show_bug.cgi?id=213261 + +Signed-off-by: Andrew G. Morgan morgan@kernel.org +--- + progs/Makefile | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/progs/Makefile b/progs/Makefile +index 313dc4d..3c3dc97 100644 +--- a/progs/Makefile ++++ b/progs/Makefile +@@ -32,14 +32,14 @@ $(BUILD): %: %.o $(DEPS) + + install: all + mkdir -p -m 0755 $(FAKEROOT)$(SBINDIR) +- for p in $(PROGS) ; do \ ++ for p in $(PROGS) capsh ; do \ + install -m 0755 $$p $(FAKEROOT)$(SBINDIR) ; \ + done + ifeq ($(RAISE_SETFCAP),yes) + $(FAKEROOT)$(SBINDIR)/setcap cap_setfcap=i $(FAKEROOT)$(SBINDIR)/setcap + endif + +-test: $(PROGS) ++test: $(PROGS) capsh + + capshdoc.h.cf: capshdoc.h ./mkcapshdoc.sh + ./mkcapshdoc.sh > $@ +-- +2.32.0.rc2 + diff --git a/src/patches/libloc-0.9.3-perl-i586-regular-stack-protector.patch b/src/patches/libloc/libloc-0.9.3-perl-i586-regular-stack-protector.patch similarity index 100% rename from src/patches/libloc-0.9.3-perl-i586-regular-stack-protector.patch rename to src/patches/libloc/libloc-0.9.3-perl-i586-regular-stack-protector.patch diff --git a/src/patches/linux-3.10-smsc95xx-add_mac_addr_param.patch b/src/patches/linux-3.10-smsc95xx-add_mac_addr_param.patch deleted file mode 100644 index 6a4b3c5ae..000000000 --- a/src/patches/linux-3.10-smsc95xx-add_mac_addr_param.patch +++ /dev/null @@ -1,82 +0,0 @@ -diff -Naur linux-3.10.10/drivers/net/usb/smsc95xx.c linux-c1af7c6db316763b9dce7137495cb9ada8fa17b4/drivers/net/usb/smsc95xx.c ---- linux-3.10.10/drivers/net/usb/smsc95xx.c 2013-08-29 18:47:51.000000000 +0200 -+++ linux-c1af7c6db316763b9dce7137495cb9ada8fa17b4/drivers/net/usb/smsc95xx.c 2013-08-30 20:12:54.000000000 +0200 -@@ -61,6 +61,7 @@ - #define SUSPEND_SUSPEND3 (0x08) - #define SUSPEND_ALLMODES (SUSPEND_SUSPEND0 | SUSPEND_SUSPEND1 | \ - SUSPEND_SUSPEND2 | SUSPEND_SUSPEND3) -+#define MAC_ADDR_LEN (6) - - struct smsc95xx_priv { - u32 mac_cr; -@@ -76,6 +77,10 @@ - module_param(turbo_mode, bool, 0644); - MODULE_PARM_DESC(turbo_mode, "Enable multiple frames per Rx transaction"); - -+static char *macaddr = ":"; -+module_param(macaddr, charp, 0); -+MODULE_PARM_DESC(macaddr, "MAC address"); -+ - static int __must_check __smsc95xx_read_reg(struct usbnet *dev, u32 index, - u32 *data, int in_pm) - { -@@ -765,8 +770,59 @@ - return generic_mii_ioctl(&dev->mii, if_mii(rq), cmd, NULL); - } - -+/* Check the macaddr module parameter for a MAC address */ -+static int smsc95xx_is_macaddr_param(struct usbnet *dev, u8 *dev_mac) -+{ -+ int i, j, got_num, num; -+ u8 mtbl[MAC_ADDR_LEN]; -+ -+ if (macaddr[0] == ':') -+ return 0; -+ -+ i = 0; -+ j = 0; -+ num = 0; -+ got_num = 0; -+ while (j < MAC_ADDR_LEN) { -+ if (macaddr[i] && macaddr[i] != ':') { -+ got_num++; -+ if ('0' <= macaddr[i] && macaddr[i] <= '9') -+ num = num * 16 + macaddr[i] - '0'; -+ else if ('A' <= macaddr[i] && macaddr[i] <= 'F') -+ num = num * 16 + 10 + macaddr[i] - 'A'; -+ else if ('a' <= macaddr[i] && macaddr[i] <= 'f') -+ num = num * 16 + 10 + macaddr[i] - 'a'; -+ else -+ break; -+ i++; -+ } else if (got_num == 2) { -+ mtbl[j++] = (u8) num; -+ num = 0; -+ got_num = 0; -+ i++; -+ } else { -+ break; -+ } -+ } -+ -+ if (j == MAC_ADDR_LEN) { -+ netif_dbg(dev, ifup, dev->net, "Overriding MAC address with: " -+ "%02x:%02x:%02x:%02x:%02x:%02x\n", mtbl[0], mtbl[1], mtbl[2], -+ mtbl[3], mtbl[4], mtbl[5]); -+ for (i = 0; i < MAC_ADDR_LEN; i++) -+ dev_mac[i] = mtbl[i]; -+ return 1; -+ } else { -+ return 0; -+ } -+} -+ - static void smsc95xx_init_mac_address(struct usbnet *dev) - { -+ /* Check module parameters */ -+ if (smsc95xx_is_macaddr_param(dev, dev->net->dev_addr)) -+ return; -+ - /* try reading mac address from EEPROM */ - if (smsc95xx_read_eeprom(dev, EEPROM_MAC_OFFSET, ETH_ALEN, - dev->net->dev_addr) == 0) { diff --git a/src/patches/linux-3.10.10-mv_cesa_disable_failing_hmac_sha1.patch b/src/patches/linux-3.10.10-mv_cesa_disable_failing_hmac_sha1.patch deleted file mode 100644 index e892d8828..000000000 --- a/src/patches/linux-3.10.10-mv_cesa_disable_failing_hmac_sha1.patch +++ /dev/null @@ -1,19 +0,0 @@ -diff -Naur linux-3.10.10.org/drivers/crypto/mv_cesa.c linux-3.10.10/drivers/crypto/mv_cesa.c ---- linux-3.10.10.org/drivers/crypto/mv_cesa.c 2013-08-29 18:47:51.000000000 +0200 -+++ linux-3.10.10/drivers/crypto/mv_cesa.c 2013-09-04 13:06:35.000000000 +0200 -@@ -1120,6 +1120,7 @@ - else - printk(KERN_WARNING MV_CESA "Could not register sha1 driver\n"); - -+/* - ret = crypto_register_ahash(&mv_hmac_sha1_alg); - if (ret == 0) { - cpg->has_hmac_sha1 = 1; -@@ -1127,6 +1128,7 @@ - printk(KERN_WARNING MV_CESA - "Could not register hmac-sha1 driver\n"); - } -+*/ - - return 0; - err_unreg_ecb: diff --git a/src/patches/linux-3.10.39-add_libertas_uap.patch b/src/patches/linux-3.10.39-add_libertas_uap.patch deleted file mode 100644 index be9a493a6..000000000 --- a/src/patches/linux-3.10.39-add_libertas_uap.patch +++ /dev/null @@ -1,5081 +0,0 @@ -diff --git a/drivers/net/wireless/Kconfig b/drivers/net/wireless/Kconfig -index f8f0156..42a0702 100644 ---- a/drivers/net/wireless/Kconfig -+++ b/drivers/net/wireless/Kconfig -@@ -51,6 +51,14 @@ config LIBERTAS_THINFIRM_USB - ---help--- - A driver for Marvell Libertas 8388 USB devices using thinfirm. - -+config LIBERTAS_UAP -+ tristate "Marvell 8xxx Libertas UAP" -+ depends on MAC80211 -+ depends on MMC -+ select FW_LOADER -+ ---help--- -+ Driver for Marvell Libertas 8xxx micro AP. -+ - config AIRO - tristate "Cisco/Aironet 34X/35X/4500/4800 ISA and PCI cards" - depends on ISA_DMA_API && (PCI || BROKEN) -diff --git a/drivers/net/wireless/Makefile b/drivers/net/wireless/Makefile -index 67156ef..475a1b3 100644 ---- a/drivers/net/wireless/Makefile -+++ b/drivers/net/wireless/Makefile -@@ -37,6 +37,8 @@ obj-$(CONFIG_LIBERTAS) += libertas/ - - obj-$(CONFIG_LIBERTAS_THINFIRM) += libertas_tf/ - -+obj-$(CONFIG_LIBERTAS_UAP) += libertas_uap/ -+ - obj-$(CONFIG_ADM8211) += adm8211.o - - obj-$(CONFIG_MWL8K) += mwl8k.o -diff --git a/drivers/net/wireless/libertas_uap/Makefile b/drivers/net/wireless/libertas_uap/Makefile -new file mode 100644 -index 0000000..821f2a4 ---- /dev/null -+++ b/drivers/net/wireless/libertas_uap/Makefile -@@ -0,0 +1,6 @@ -+obj-$(CONFIG_LIBERTAS_UAP) += uap8xxx.o -+ -+uap8xxx-y += uap_main.o uap_sdio_mmc.o -+uap8xxx-$(CONFIG_PROC_FS) += uap_proc.o uap_debug.o -+ -+EXTRA_CFLAGS += -DFPNUM='"52"' -DPXA3XX_DMA_ALIGN -DDEBUG_LEVEL1 -diff --git a/drivers/net/wireless/libertas_uap/uap_debug.c b/drivers/net/wireless/libertas_uap/uap_debug.c -new file mode 100644 -index 0000000..a2f6dc9 ---- /dev/null -+++ b/drivers/net/wireless/libertas_uap/uap_debug.c -@@ -0,0 +1,260 @@ -+/** @file uap_debug.c -+ * @brief This file contains functions for debug proc file. -+ * -+ * Copyright (C) 2008-2009, Marvell International Ltd. -+ * -+ * This software file (the "File") is distributed by Marvell International -+ * Ltd. under the terms of the GNU General Public License Version 2, June 1991 -+ * (the "License"). You may use, redistribute and/or modify this File in -+ * accordance with the terms and conditions of the License, a copy of which -+ * is available along with the File in the gpl.txt file or by writing to -+ * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ * 02111-1307 or on the worldwide web at http://www.gnu.org/licenses/gpl.txt. -+ * -+ * THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE -+ * IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE -+ * ARE EXPRESSLY DISCLAIMED. The License provides additional details about -+ * this warranty disclaimer. -+ * -+ */ -+#ifdef CONFIG_PROC_FS -+#include "uap_headers.h" -+ -+/******************************************************** -+ Local Variables -+********************************************************/ -+ -+#define item_size(n) (sizeof ((uap_adapter *)0)->n) -+#define item_addr(n) ((u32) &((uap_adapter *)0)->n) -+ -+#define item_dbg_size(n) (sizeof (((uap_adapter *)0)->dbg.n)) -+#define item_dbg_addr(n) ((u32) &(((uap_adapter *)0)->dbg.n)) -+ -+#define item_dev_size(n) (sizeof ((uap_dev_t *)0)->n) -+#define item_dev_addr(n) ((u32) &((uap_dev_t *)0)->n) -+ -+/** MicroAp device offset */ -+#define OFFSET_UAP_DEV 0x01 -+/** Bluetooth adapter offset */ -+#define OFFSET_UAP_ADAPTER 0x02 -+ -+struct debug_data -+{ -+ /** Name */ -+ char name[32]; -+ /** Size */ -+ u32 size; -+ /** Address */ -+ u32 addr; -+ /** Offset */ -+ u32 offset; -+ /** Flag */ -+ u32 flag; -+}; -+ -+/* To debug any member of uap_adapter, simply add one line here. -+ */ -+static struct debug_data items[] = { -+ {"cmd_sent", item_dev_size(cmd_sent), 0, item_dev_addr(cmd_sent), -+ OFFSET_UAP_DEV}, -+ {"data_sent", item_dev_size(data_sent), 0, item_dev_addr(data_sent), -+ OFFSET_UAP_DEV}, -+ {"IntCounter", item_size(IntCounter), 0, item_addr(IntCounter), -+ OFFSET_UAP_ADAPTER}, -+ {"cmd_pending", item_size(cmd_pending), 0, item_addr(cmd_pending), -+ OFFSET_UAP_ADAPTER}, -+ {"num_cmd_h2c_fail", item_dbg_size(num_cmd_host_to_card_failure), 0, -+ item_dbg_addr(num_cmd_host_to_card_failure), OFFSET_UAP_ADAPTER}, -+ {"num_tx_h2c_fail", item_dbg_size(num_tx_host_to_card_failure), 0, -+ item_dbg_addr(num_tx_host_to_card_failure), OFFSET_UAP_ADAPTER}, -+ {"psmode", item_size(psmode), 0, item_addr(psmode), OFFSET_UAP_ADAPTER}, -+ {"ps_state", item_size(ps_state), 0, item_addr(ps_state), -+ OFFSET_UAP_ADAPTER}, -+#ifdef DEBUG_LEVEL1 -+ {"drvdbg", sizeof(drvdbg), (u32) & drvdbg, 0, 0} -+#endif -+}; -+ -+static int num_of_items = sizeof(items) / sizeof(items[0]); -+ -+/******************************************************** -+ Global Variables -+********************************************************/ -+ -+/******************************************************** -+ Local Functions -+********************************************************/ -+/** -+ * @brief proc read function -+ * -+ * @param page pointer to buffer -+ * @param s read data starting position -+ * @param off offset -+ * @param cnt counter -+ * @param eof end of file flag -+ * @param data data to output -+ * @return number of output data -+ */ -+static int uap_debug_proc_show(struct seq_file *s, void *data) { -+ int val = 0; -+ int i; -+ -+ struct debug_data *d = (struct debug_data *)s->private; -+ -+ if (MODULE_GET == 0) -+ return UAP_STATUS_FAILURE; -+ -+ for (i = 0; i < num_of_items; i++) { -+ if (d[i].size == 1) -+ val = *((u8 *) d[i].addr); -+ else if (d[i].size == 2) -+ val = *((u16 *) d[i].addr); -+ else if (d[i].size == 4) -+ val = *((u32 *) d[i].addr); -+ -+ seq_printf(s, "%s=%d\n", d[i].name, val); -+ } -+ MODULE_PUT; -+ return 0; -+} -+ -+static int uap_debug_proc_open(struct inode* inode, struct file* file) { -+ return single_open(file, uap_debug_proc_show, PDE_DATA(inode)); -+} -+ -+/** -+ * @brief proc write function -+ * -+ * @param f file pointer -+ * @param buf pointer to data buffer -+ * @param cnt data number to write -+ * @param data data to write -+ * @return number of data -+ */ -+static ssize_t uap_debug_proc_write(struct file *f, const char __user *buf, size_t cnt, loff_t *data) { -+ int r, i; -+ char *pdata; -+ char *p; -+ char *p0; -+ char *p1; -+ char *p2; -+ struct debug_data *d = (struct debug_data *)PDE_DATA(file_inode(f)); -+ -+ if (MODULE_GET == 0) -+ return UAP_STATUS_FAILURE; -+ -+ pdata = (char *) kmalloc(cnt, GFP_KERNEL); -+ if (pdata == NULL) { -+ MODULE_PUT; -+ return 0; -+ } -+ -+ if (copy_from_user(pdata, buf, cnt)) { -+ PRINTM(INFO, "Copy from user failed\n"); -+ kfree(pdata); -+ MODULE_PUT; -+ return 0; -+ } -+ -+ p0 = pdata; -+ for (i = 0; i < num_of_items; i++) { -+ do { -+ p = strstr(p0, d[i].name); -+ if (p == NULL) -+ break; -+ p1 = strchr(p, '\n'); -+ if (p1 == NULL) -+ break; -+ p0 = p1++; -+ p2 = strchr(p, '='); -+ if (!p2) -+ break; -+ p2++; -+ r = string_to_number(p2); -+ if (d[i].size == 1) -+ *((u8 *) d[i].addr) = (u8) r; -+ else if (d[i].size == 2) -+ *((u16 *) d[i].addr) = (u16) r; -+ else if (d[i].size == 4) -+ *((u32 *) d[i].addr) = (u32) r; -+ break; -+ } while (TRUE); -+ } -+ kfree(pdata); -+#ifdef DEBUG_LEVEL1 -+ printk(KERN_ALERT "drvdbg = 0x%x\n", drvdbg); -+ printk(KERN_ALERT "INFO (%08lx) %s\n", DBG_INFO, -+ (drvdbg & DBG_INFO) ? "X" : ""); -+ printk(KERN_ALERT "WARN (%08lx) %s\n", DBG_WARN, -+ (drvdbg & DBG_WARN) ? "X" : ""); -+ printk(KERN_ALERT "ENTRY (%08lx) %s\n", DBG_ENTRY, -+ (drvdbg & DBG_ENTRY) ? "X" : ""); -+ printk(KERN_ALERT "CMD_D (%08lx) %s\n", DBG_CMD_D, -+ (drvdbg & DBG_CMD_D) ? "X" : ""); -+ printk(KERN_ALERT "DAT_D (%08lx) %s\n", DBG_DAT_D, -+ (drvdbg & DBG_DAT_D) ? "X" : ""); -+ printk(KERN_ALERT "CMND (%08lx) %s\n", DBG_CMND, -+ (drvdbg & DBG_CMND) ? "X" : ""); -+ printk(KERN_ALERT "DATA (%08lx) %s\n", DBG_DATA, -+ (drvdbg & DBG_DATA) ? "X" : ""); -+ printk(KERN_ALERT "ERROR (%08lx) %s\n", DBG_ERROR, -+ (drvdbg & DBG_ERROR) ? "X" : ""); -+ printk(KERN_ALERT "FATAL (%08lx) %s\n", DBG_FATAL, -+ (drvdbg & DBG_FATAL) ? "X" : ""); -+ printk(KERN_ALERT "MSG (%08lx) %s\n", DBG_MSG, -+ (drvdbg & DBG_MSG) ? "X" : ""); -+#endif -+ MODULE_PUT; -+ return cnt; -+} -+ -+static const struct file_operations uap_debug_proc_fops = { -+ .owner = THIS_MODULE, -+ .open = uap_debug_proc_open, -+ .read = seq_read, -+ .llseek = seq_lseek, -+ .release = single_release, -+ .write = uap_debug_proc_write, -+}; -+ -+/******************************************************** -+ Global Functions -+********************************************************/ -+/** -+ * @brief create debug proc file -+ * -+ * @param priv pointer uap_private -+ * @param dev pointer net_device -+ * @return N/A -+ */ -+void -+uap_debug_entry(uap_private * priv, struct net_device *dev) -+{ -+ int i; -+ -+ if (priv->proc_entry == NULL) -+ return; -+ -+ for (i = 0; i < num_of_items; i++) { -+ if (items[i].flag & OFFSET_UAP_ADAPTER) -+ items[i].addr = items[i].offset + (u32) priv->adapter; -+ if (items[i].flag & OFFSET_UAP_DEV) -+ items[i].addr = items[i].offset + (u32) & priv->uap_dev; -+ } -+ proc_create_data("debug", 0644, priv->proc_entry, &uap_debug_proc_fops, -+ &items[0]); -+} -+ -+/** -+ * @brief remove proc file -+ * -+ * @param priv pointer uap_private -+ * @return N/A -+ */ -+void -+uap_debug_remove(uap_private * priv) -+{ -+ remove_proc_entry("debug", priv->proc_entry); -+} -+ -+#endif -diff --git a/drivers/net/wireless/libertas_uap/uap_drv.h b/drivers/net/wireless/libertas_uap/uap_drv.h -new file mode 100644 -index 0000000..5aa009f ---- /dev/null -+++ b/drivers/net/wireless/libertas_uap/uap_drv.h -@@ -0,0 +1,667 @@ -+/** @file uap_drv.h -+ * @brief This file contains Linux OS related definitions and -+ * declarations, uAP driver -+ * -+ * Copyright (C) 2008-2009, Marvell International Ltd. -+ * -+ * This software file (the "File") is distributed by Marvell International -+ * Ltd. under the terms of the GNU General Public License Version 2, June 1991 -+ * (the "License"). You may use, redistribute and/or modify this File in -+ * accordance with the terms and conditions of the License, a copy of which -+ * is available along with the File in the gpl.txt file or by writing to -+ * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ * 02111-1307 or on the worldwide web at http://www.gnu.org/licenses/gpl.txt. -+ * -+ * THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE -+ * IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE -+ * ARE EXPRESSLY DISCLAIMED. The License provides additional details about -+ * this warranty disclaimer. -+ * -+ */ -+ -+#ifndef _UAP_DRV_H -+#define _UAP_DRV_H -+ -+/** Driver release version */ -+#define DRIVER_VERSION "26146" -+ -+/** True */ -+#ifndef TRUE -+#define TRUE 1 -+#endif -+/** False */ -+#ifndef FALSE -+#define FALSE 0 -+#endif -+ -+/** Bit definitions */ -+#ifndef BIT -+#define BIT(x) (1UL << (x)) -+#endif -+ -+/** Dma addresses are 32-bits wide. */ -+#ifndef __ATTRIB_ALIGN__ -+#define __ATTRIB_ALIGN__ __attribute__((aligned(4))) -+#endif -+ -+/** attribute pack */ -+#ifndef __ATTRIB_PACK__ -+#define __ATTRIB_PACK__ __attribute__ ((packed)) -+#endif -+ -+/** Debug Macro definition*/ -+#ifdef DEBUG_LEVEL1 -+ -+extern u32 drvdbg; -+ -+/** Debug message control bit definition for drvdbg */ -+/** Debug message */ -+#define DBG_MSG BIT(0) -+/** Debug fatal message */ -+#define DBG_FATAL BIT(1) -+/** Debug error message */ -+#define DBG_ERROR BIT(2) -+/** Debug data message */ -+#define DBG_DATA BIT(3) -+/** Debug command message */ -+#define DBG_CMND BIT(4) -+ -+/** Debug data */ -+#define DBG_DAT_D BIT(16) -+/** Debug command */ -+#define DBG_CMD_D BIT(17) -+ -+/** Debug entry */ -+#define DBG_ENTRY BIT(28) -+/** Debug warning */ -+#define DBG_WARN BIT(29) -+/** Debug info */ -+#define DBG_INFO BIT(30) -+ -+/** Print info */ -+#define PRINTM_INFO(msg...) {if (drvdbg & DBG_INFO) printk(KERN_DEBUG msg);} -+/** Print warn message */ -+#define PRINTM_WARN(msg...) {if (drvdbg & DBG_WARN) printk(KERN_DEBUG msg);} -+/** Print entry */ -+#define PRINTM_ENTRY(msg...) {if (drvdbg & DBG_ENTRY) printk(KERN_DEBUG msg);} -+/** Print cmd_d */ -+#define PRINTM_CMD_D(msg...) {if (drvdbg & DBG_CMD_D) printk(KERN_DEBUG msg);} -+/** Print data_d */ -+#define PRINTM_DAT_D(msg...) {if (drvdbg & DBG_DAT_D) printk(KERN_DEBUG msg);} -+/** Print command */ -+#define PRINTM_CMND(msg...) {if (drvdbg & DBG_CMND) printk(KERN_DEBUG msg);} -+/** Print data */ -+#define PRINTM_DATA(msg...) {if (drvdbg & DBG_DATA) printk(KERN_DEBUG msg);} -+/** Print error message */ -+#define PRINTM_ERROR(msg...) {if (drvdbg & DBG_ERROR) printk(KERN_DEBUG msg);} -+/** Print fatal message */ -+#define PRINTM_FATAL(msg...) {if (drvdbg & DBG_FATAL) printk(KERN_DEBUG msg);} -+/** Print message */ -+#define PRINTM_MSG(msg...) {if (drvdbg & DBG_MSG) printk(KERN_ALERT msg);} -+/** Print level */ -+#define PRINTM(level,msg...) PRINTM_##level(msg) -+ -+#else -+ -+#define PRINTM(level,msg...) do {} while (0) -+ -+#endif /* DEBUG_LEVEL1 */ -+ -+/** Wait until a condition becomes true */ -+#define ASSERT(cond) \ -+do { \ -+ if (!(cond)) \ -+ PRINTM(INFO, "ASSERT: %s, %s:%i\n", \ -+ __FUNCTION__, __FILE__, __LINE__); \ -+} while(0) -+ -+/** Log enrty point for debugging */ -+#define ENTER() PRINTM(ENTRY, "Enter: %s, %s:%i\n", __FUNCTION__, \ -+ __FILE__, __LINE__) -+/** Log exit point for debugging */ -+#define LEAVE() PRINTM(ENTRY, "Leave: %s, %s:%i\n", __FUNCTION__, \ -+ __FILE__, __LINE__) -+ -+#ifdef DEBUG_LEVEL1 -+/** Dump buffer length */ -+#define DBG_DUMP_BUF_LEN 64 -+/** Maximum dump per line */ -+#define MAX_DUMP_PER_LINE 16 -+/** Data dump length */ -+#define DATA_DUMP_LEN 32 -+ -+static inline void -+hexdump(char *prompt, u8 * buf, int len) -+{ -+ int i; -+ char dbgdumpbuf[DBG_DUMP_BUF_LEN]; -+ char *ptr = dbgdumpbuf; -+ -+ printk(KERN_DEBUG "%s:\n", prompt); -+ for (i = 1; i <= len; i++) { -+ ptr += sprintf(ptr, "%02x ", *buf); -+ buf++; -+ if (i % MAX_DUMP_PER_LINE == 0) { -+ *ptr = 0; -+ printk(KERN_DEBUG "%s\n", dbgdumpbuf); -+ ptr = dbgdumpbuf; -+ } -+ } -+ if (len % MAX_DUMP_PER_LINE) { -+ *ptr = 0; -+ printk(KERN_DEBUG "%s\n", dbgdumpbuf); -+ } -+} -+ -+/** Debug command */ -+#define DBG_HEXDUMP_CMD_D(x,y,z) {if (drvdbg & DBG_CMD_D) hexdump(x,y,z);} -+/** Debug data */ -+#define DBG_HEXDUMP_DAT_D(x,y,z) {if (drvdbg & DBG_DAT_D) hexdump(x,y,z);} -+/** Debug hexdump */ -+#define DBG_HEXDUMP(level,x,y,z) DBG_HEXDUMP_##level(x,y,z) -+/** hexdump */ -+#define HEXDUMP(x,y,z) {if (drvdbg & DBG_INFO) hexdump(x,y,z);} -+#else -+/** Do nothing since debugging is not turned on */ -+#define DBG_HEXDUMP(level,x,y,z) do {} while (0) -+/** Do nothing since debugging is not turned on */ -+#define HEXDUMP(x,y,z) do {} while (0) -+#endif -+ -+/** -+ * Typedefs -+ */ -+/** Unsigned char */ -+typedef u8 BOOLEAN; -+ -+/* -+ * OS macro definitions -+ */ -+/** OS macro to get time */ -+#define os_time_get() jiffies -+ -+/** OS macro to update transfer start time */ -+#define UpdateTransStart(dev) { \ -+ dev->trans_start = jiffies; \ -+} -+ -+/** Try to get a reference to the module */ -+#define MODULE_GET try_module_get(THIS_MODULE) -+/** Decrease module reference count */ -+#define MODULE_PUT module_put(THIS_MODULE) -+ -+/** OS macro to initialize semaphore */ -+#define OS_INIT_SEMAPHORE(x) sema_init(x,1) -+/** OS macro to acquire blocking semaphore */ -+#define OS_ACQ_SEMAPHORE_BLOCK(x) down_interruptible(x) -+/** OS macro to acquire non-blocking semaphore */ -+#define OS_ACQ_SEMAPHORE_NOBLOCK(x) down_trylock(x) -+/** OS macro to release semaphore */ -+#define OS_REL_SEMAPHORE(x) up(x) -+ -+static inline void -+os_sched_timeout(u32 millisec) -+{ -+ set_current_state(TASK_INTERRUPTIBLE); -+ schedule_timeout((millisec * HZ) / 1000); -+} -+ -+/** Maximum size of ethernet packet */ -+#define MRVDRV_MAXIMUM_ETH_PACKET_SIZE 1514 -+ -+/** Maximum size of multicast list */ -+#define MRVDRV_MAX_MULTICAST_LIST_SIZE 32 -+ -+/** Find minimum */ -+#ifndef MIN -+#define MIN(a,b) ((a) < (b) ? (a) : (b)) -+#endif -+ -+/** Find maximum */ -+#ifndef MAX -+#define MAX(a,b) ((a) > (b) ? (a) : (b)) -+#endif -+ -+/** Find number of elements */ -+#ifndef NELEMENTS -+#define NELEMENTS(x) (sizeof(x)/sizeof(x[0])) -+#endif -+ -+/** Buffer Constants */ -+ -+/** Size of command buffer */ -+#define MRVDRV_SIZE_OF_CMD_BUFFER (2 * 1024) -+ -+/** Length of device length */ -+#define DEV_NAME_LEN 32 -+ -+/** Length of ethernet address */ -+#ifndef ETH_ALEN -+#define ETH_ALEN 6 -+#endif -+ -+/** Default watchdog timeout */ -+#define MRVDRV_DEFAULT_WATCHDOG_TIMEOUT (2 * HZ) -+ -+/** Success */ -+#define UAP_STATUS_SUCCESS (0) -+/** Failure */ -+#define UAP_STATUS_FAILURE (-1) -+/** Not accepted */ -+#define UAP_STATUS_NOT_ACCEPTED (-2) -+ -+/** Max loop count (* 100ms) for waiting device ready at init time */ -+#define MAX_WAIT_DEVICE_READY_COUNT 50 -+ -+/** Tx high watermark. Stop Tx queue after this is crossed */ -+#define TX_HIGH_WATERMARK 4 -+/** Tx low watermark. Restart Tx queue after this is crossed */ -+#define TX_LOW_WATERMARK 2 -+ -+/** Netlink protocol number */ -+#define NETLINK_MARVELL (MAX_LINKS - 1) -+/** Netlink maximum payload size */ -+#define NL_MAX_PAYLOAD 1024 -+/** Netlink multicast group number */ -+#define NL_MULTICAST_GROUP 1 -+ -+/** 20 seconds */ -+#define MRVDRV_TIMER_20S 20000 -+ -+/** Host Command option for wait till Send */ -+#define HostCmd_OPTION_WAITFORSEND 0x0001 -+/** Host Command option for wait for RSP */ -+#define HostCmd_OPTION_WAITFORRSP 0x0002 -+/** Host Command option for wait for RSP or Timeout */ -+#define HostCmd_OPTION_WAITFORRSP_TIMEOUT 0x0003 -+/** Host Command option for wait for RSP of sleep confirm */ -+#define HostCmd_OPTION_WAITFORRSP_SLEEPCONFIRM 0x0004 -+ -+/** Sleep until a condition gets true or a timeout elapses */ -+#define os_wait_interruptible_timeout(waitq, cond, timeout) \ -+ wait_event_interruptible_timeout(waitq, cond, ((timeout) * HZ / 1000)) -+ -+/** Private command ID to Host command */ -+#define UAPHOSTCMD (SIOCDEVPRIVATE + 1) -+ -+/** Private command ID to Power Mode */ -+#define UAP_POWER_MODE (SIOCDEVPRIVATE + 3) -+/** sleep_param */ -+typedef struct _ps_sleep_param -+{ -+ /** control bitmap */ -+ u32 ctrl_bitmap; -+ /** minimum sleep period (micro second) */ -+ u32 min_sleep; -+ /** maximum sleep period (micro second) */ -+ u32 max_sleep; -+} ps_sleep_param; -+ -+/** inactivity sleep_param */ -+typedef struct _inact_sleep_param -+{ -+ /** inactivity timeout (micro second) */ -+ u32 inactivity_to; -+ /** miniumu awake period (micro second) */ -+ u32 min_awake; -+ /** maximum awake period (micro second) */ -+ u32 max_awake; -+} inact_sleep_param; -+ -+/** flag for ps mode */ -+#define PS_FLAG_PS_MODE 1 -+/** flag for sleep param */ -+#define PS_FLAG_SLEEP_PARAM 2 -+/** flag for inactivity sleep param */ -+#define PS_FLAG_INACT_SLEEP_PARAM 4 -+ -+/** Disable power mode */ -+#define PS_MODE_DISABLE 0 -+/** Enable periodic dtim ps */ -+#define PS_MODE_PERIODIC_DTIM 1 -+/** Enable inactivity ps */ -+#define PS_MODE_INACTIVITY 2 -+ -+/** sleep parameter */ -+#define SLEEP_PARAMETER 1 -+/** inactivity sleep parameter */ -+#define INACTIVITY_SLEEP_PARAMETER 2 -+/** ps_mgmt */ -+typedef struct _ps_mgmt -+{ -+ /** flags for valid field */ -+ u16 flags; -+ /** power mode */ -+ u16 ps_mode; -+ /** sleep param */ -+ ps_sleep_param sleep_param; -+ /** inactivity sleep param */ -+ inact_sleep_param inact_param; -+} ps_mgmt; -+ -+/** Semaphore structure */ -+typedef struct semaphore SEMAPHORE; -+ -+/** Global Varibale Declaration */ -+/** Private data structure of the device */ -+typedef struct _uap_private uap_private; -+/** Adapter data structure of the device */ -+typedef struct _uap_adapter uap_adapter; -+/** private structure */ -+extern uap_private *uappriv; -+ -+/** ENUM definition*/ -+ -+/** Hardware status codes */ -+typedef enum _HARDWARE_STATUS -+{ -+ HWReady, -+ HWInitializing, -+ HWReset, -+ HWClosing, -+ HWNotReady -+} HARDWARE_STATUS; -+ -+/** info for debug purpose */ -+typedef struct _uap_dbg -+{ -+ /** Number of host to card command failures */ -+ u32 num_cmd_host_to_card_failure; -+ /** Number of host to card Tx failures */ -+ u32 num_tx_host_to_card_failure; -+} uap_dbg; -+ -+/** Set thread state */ -+#define OS_SET_THREAD_STATE(x) set_current_state(x) -+ -+typedef struct -+{ -+ /** Task */ -+ struct task_struct *task; -+ /** Queue */ -+ wait_queue_head_t waitQ; -+ /** PID */ -+ pid_t pid; -+ /** Private structure */ -+ void *priv; -+} uap_thread; -+ -+static inline void -+uap_activate_thread(uap_thread * thr) -+{ -+ /** Record the thread pid */ -+ thr->pid = current->pid; -+ -+ /** Initialize the wait queue */ -+ init_waitqueue_head(&thr->waitQ); -+} -+ -+static inline void -+uap_deactivate_thread(uap_thread * thr) -+{ -+ thr->pid = 0; -+ return; -+} -+ -+static inline void -+uap_create_thread(int (*uapfunc) (void *), uap_thread * thr, char *name) -+{ -+ thr->task = kthread_run(uapfunc, thr, "%s", name); -+} -+ -+static inline int -+uap_terminate_thread(uap_thread * thr) -+{ -+ /* Check if the thread is active or not */ -+ if (!thr->pid) -+ return -1; -+ kthread_stop(thr->task); -+ return 0; -+} -+ -+/** Data structure for the Marvell uAP device */ -+typedef struct _uap_dev -+{ -+ /** device name */ -+ char name[DEV_NAME_LEN]; -+ /** card pointer */ -+ void *card; -+ /** IO port */ -+ u32 ioport; -+ /** Rx unit */ -+ u8 rx_unit; -+ /** Data sent: -+ TRUE - Data is sent to fw, no Tx Done received -+ FALSE - Tx done received for previous Tx */ -+ BOOLEAN data_sent; -+ /** CMD sent: -+ TRUE - CMD is sent to fw, no CMD Done received -+ FALSE - CMD done received for previous CMD */ -+ BOOLEAN cmd_sent; -+ /** netdev pointer */ -+ struct net_device *netdev; -+} uap_dev_t, *puap_dev_t; -+ -+/** Private structure for the MV device */ -+struct _uap_private -+{ -+ /** Device open */ -+ int open; -+ -+ /** Device adapter structure */ -+ uap_adapter *adapter; -+ /** Device structure */ -+ uap_dev_t uap_dev; -+ -+ /** Net device statistics structure */ -+ struct net_device_stats stats; -+ -+ /** Number of Tx timeouts */ -+ u32 num_tx_timeout; -+ -+ /** Media connection status */ -+ BOOLEAN MediaConnected; -+ -+#ifdef CONFIG_PROC_FS -+ struct proc_dir_entry *proc_uap; -+ struct proc_dir_entry *proc_entry; -+#endif /* CONFIG_PROC_FS */ -+ -+ /** Firmware helper */ -+ const struct firmware *fw_helper; -+ /** Firmware */ -+ const struct firmware *firmware; -+ /** Hotplug device */ -+ struct device *hotplug_device; -+ /** thread to service interrupts */ -+ uap_thread MainThread; -+ /** Driver lock */ -+ spinlock_t driver_lock; -+ /** Driver lock flags */ -+ ulong driver_flags; -+ -+}; -+ -+/** PS_CMD_ConfirmSleep */ -+typedef struct _PS_CMD_ConfirmSleep -+{ -+ /** SDIO Length */ -+ u16 SDLen; -+ /** SDIO Type */ -+ u16 SDType; -+ /** Command */ -+ u16 Command; -+ /** Size */ -+ u16 Size; -+ /** Sequence number */ -+ u16 SeqNum; -+ /** Result */ -+ u16 Result; -+} __ATTRIB_PACK__ PS_CMD_ConfirmSleep, *PPS_CMD_ConfirmSleep; -+ -+/** Wlan Adapter data structure*/ -+struct _uap_adapter -+{ -+ /** Power save confirm sleep command */ -+ PS_CMD_ConfirmSleep PSConfirmSleep; -+ /** Device status */ -+ HARDWARE_STATUS HardwareStatus; -+ /** Interrupt counter */ -+ u32 IntCounter; -+ /** Tx packet queue */ -+ struct sk_buff_head tx_queue; -+ /** Cmd packet queue */ -+ struct sk_buff_head cmd_queue; -+ /** Command sequence number */ -+ u16 SeqNum; -+ /** Command buffer */ -+ u8 *CmdBuf; -+ /** cmd pending flag */ -+ u8 cmd_pending; -+ /** cmd wait option */ -+ u8 cmd_wait_option; -+ /** Command buffer length */ -+ u32 CmdSize; -+ /** Command wait queue */ -+ wait_queue_head_t cmdwait_q __ATTRIB_ALIGN__; -+ /** Command wait queue state flag */ -+ u8 CmdWaitQWoken; -+ /** PnP support */ -+ BOOLEAN SurpriseRemoved; -+ /** Debug */ -+ uap_dbg dbg; -+ /** Netlink kernel socket */ -+ struct sock *nl_sk; -+ /** Semaphore for CMD */ -+ SEMAPHORE CmdSem; -+ /** Power Save mode */ -+ u8 psmode; -+ /** Power Save state */ -+ u8 ps_state; -+ /** Number of wakeup tries */ -+ u32 WakeupTries; -+}; -+ -+static inline int -+os_upload_rx_packet(uap_private * priv, struct sk_buff *skb) -+{ -+ skb->dev = priv->uap_dev.netdev; -+ skb->protocol = eth_type_trans(skb, priv->uap_dev.netdev); -+ skb->ip_summed = CHECKSUM_UNNECESSARY; -+ if (in_interrupt()) -+ netif_rx(skb); -+ else -+ netif_rx_ni(skb); -+ return 0; -+} -+ -+/* -+ * netif carrier_on/off and start(wake)/stop_queue handling -+ */ -+static inline void -+os_carrier_on(uap_private * priv) -+{ -+ if (!netif_carrier_ok(priv->uap_dev.netdev) && -+ (priv->MediaConnected == TRUE)) { -+ netif_carrier_on(priv->uap_dev.netdev); -+ } -+} -+ -+static inline void -+os_carrier_off(uap_private * priv) -+{ -+ if (netif_carrier_ok(priv->uap_dev.netdev)) { -+ netif_carrier_off(priv->uap_dev.netdev); -+ } -+} -+ -+static inline void -+os_start_queue(uap_private * priv) -+{ -+ if (netif_queue_stopped(priv->uap_dev.netdev) && -+ (priv->MediaConnected == TRUE)) { -+ netif_wake_queue(priv->uap_dev.netdev); -+ } -+} -+ -+static inline void -+os_stop_queue(uap_private * priv) -+{ -+ if (!netif_queue_stopped(priv->uap_dev.netdev)) { -+ netif_stop_queue(priv->uap_dev.netdev); -+ } -+} -+ -+/** Interface specific header */ -+#define INTF_HEADER_LEN 4 -+ -+/** headroom alignment for tx packet */ -+#define HEADER_ALIGNMENT 8 -+ -+/** The number of times to try when polling for status bits */ -+#define MAX_POLL_TRIES 100 -+ -+/** Length of SNAP header */ -+#define MRVDRV_SNAP_HEADER_LEN 8 -+ -+/** Extra length of Tx packet buffer */ -+#define EXTRA_LEN 36 -+ -+/** Buffer size for ethernet Tx packets */ -+#define MRVDRV_ETH_TX_PACKET_BUFFER_SIZE \ -+ (ETH_FRAME_LEN + sizeof(TxPD) + EXTRA_LEN) -+ -+/** Buffer size for ethernet Rx packets */ -+#define MRVDRV_ETH_RX_PACKET_BUFFER_SIZE \ -+ (ETH_FRAME_LEN + sizeof(RxPD) \ -+ + MRVDRV_SNAP_HEADER_LEN + EXTRA_LEN) -+ -+/** Packet type: data, command & event */ -+typedef enum _mv_type -+{ -+ MV_TYPE_DAT = 0, -+ MV_TYPE_CMD = 1, -+ MV_TYPE_EVENT = 3 -+} mv_type; -+ -+/** Disable interrupt */ -+#define OS_INT_DISABLE spin_lock_irqsave(&priv->driver_lock, priv->driver_flags) -+/** Enable interrupt */ -+#define OS_INT_RESTORE spin_unlock_irqrestore(&priv->driver_lock, priv->driver_flags) -+ -+int uap_process_rx_packet(uap_private * priv, struct sk_buff *skb); -+void uap_interrupt(uap_private * priv); -+uap_private *uap_add_card(void *card); -+int uap_remove_card(void *card); -+int uap_process_event(uap_private * priv, u8 * payload, uint len); -+int uap_soft_reset(uap_private * priv); -+int uap_process_sleep_confirm_resp(uap_private * priv, u8 * resp, int resp_len); -+ -+#ifdef CONFIG_PROC_FS -+/** The proc fs interface */ -+void uap_proc_entry(uap_private * priv, struct net_device *dev); -+void uap_proc_remove(uap_private * priv); -+int string_to_number(char *s); -+void uap_debug_entry(uap_private * priv, struct net_device *dev); -+void uap_debug_remove(uap_private * priv); -+#endif /* CONFIG_PROC_FS */ -+ -+int sbi_register(void); -+ -+void sbi_unregister(void); -+int sbi_register_dev(uap_private * priv); -+int sbi_unregister_dev(uap_private * priv); -+int sbi_prog_fw_w_helper(uap_private *); -+ -+int sbi_host_to_card(uap_private * priv, u8 * payload, u16 nb); -+int sbi_enable_host_int(uap_private * priv); -+int sbi_disable_host_int(uap_private * priv); -+ -+int sbi_get_int_status(uap_private * priv, u8 * ireg); -+/** Check firmware status */ -+int sbi_check_fw_status(uap_private *, int); -+int sbi_prog_helper(uap_private *); -+ -+int sbi_wakeup_firmware(uap_private * priv); -+ -+#endif /* _UAP_DRV_H */ -diff --git a/drivers/net/wireless/libertas_uap/uap_fw.h b/drivers/net/wireless/libertas_uap/uap_fw.h -new file mode 100644 -index 0000000..23a40d6 ---- /dev/null -+++ b/drivers/net/wireless/libertas_uap/uap_fw.h -@@ -0,0 +1,359 @@ -+/** @file uap_fw.h -+ * -+ * @brief This file contains firmware specific defines. -+ * -+ * Copyright (C) 2008-2009, Marvell International Ltd. -+ * -+ * This software file (the "File") is distributed by Marvell International -+ * Ltd. under the terms of the GNU General Public License Version 2, June 1991 -+ * (the "License"). You may use, redistribute and/or modify this File in -+ * accordance with the terms and conditions of the License, a copy of which -+ * is available along with the File in the gpl.txt file or by writing to -+ * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ * 02111-1307 or on the worldwide web at http://www.gnu.org/licenses/gpl.txt. -+ * -+ * THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE -+ * IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE -+ * ARE EXPRESSLY DISCLAIMED. The License provides additional details about -+ * this warranty disclaimer. -+ * -+ */ -+/******************************************************** -+Change log: -+ 02/26/08: Initial creation -+********************************************************/ -+ -+#ifndef _UAP_FW_H -+#define _UAP_FW_H -+ -+/** uap upload size */ -+#define UAP_UPLD_SIZE 2312 -+/** Packet type Micro AP */ -+#define PKT_TYPE_MICROAP 1 -+/** Packet type client */ -+#define PKT_TYPE_CLIENT 0 -+ -+/** TxPD descriptor */ -+typedef struct _TxPD -+{ -+ /** Bss Type */ -+ u8 BssType; -+ /** Bss num */ -+ u8 BssNum; -+ /** Tx packet length */ -+ u16 TxPktLength; -+ /** Tx packet offset */ -+ u16 TxPktOffset; -+ /** Tx packet type */ -+ u16 TxPktType; -+ /** Tx Control */ -+ u32 TxControl; -+ /** reserved */ -+ u32 reserved[2]; -+} __ATTRIB_PACK__ TxPD, *PTxPD; -+ -+/** RxPD Descriptor */ -+typedef struct _RxPD -+{ -+ /** Bss Type */ -+ u8 BssType; -+ /** Bss Num */ -+ u8 BssNum; -+ /** Tx packet length */ -+ u16 RxPktLength; -+ /** Tx packet offset */ -+ u16 RxPktOffset; -+} __ATTRIB_PACK__ RxPD, *PRxPD; -+ -+#ifdef BIG_ENDIAN -+/** Convert from 16 bit little endian format to CPU format */ -+#define uap_le16_to_cpu(x) le16_to_cpu(x) -+/** Convert from 32 bit little endian format to CPU format */ -+#define uap_le32_to_cpu(x) le32_to_cpu(x) -+/** Convert from 64 bit little endian format to CPU format */ -+#define uap_le64_to_cpu(x) le64_to_cpu(x) -+/** Convert to 16 bit little endian format from CPU format */ -+#define uap_cpu_to_le16(x) cpu_to_le16(x) -+/** Convert to 32 bit little endian format from CPU format */ -+#define uap_cpu_to_le32(x) cpu_to_le32(x) -+/** Convert to 64 bit little endian format from CPU format */ -+#define uap_cpu_to_le64(x) cpu_to_le64(x) -+ -+/** Convert TxPD to little endian format from CPU format */ -+#define endian_convert_TxPD(x); \ -+ { \ -+ (x)->TxPktLength = uap_cpu_to_le16((x)->TxPktLength); \ -+ (x)->TxPktOffset = uap_cpu_to_le32((x)->TxPktOffset); \ -+ (x)->TxControl = uap_cpu_to_le32((x)->TxControl); \ -+ (x)->TxPktType = uap_cpu_to_le32((x)->TxPktType); \ -+ } -+ -+/** Convert RxPD from little endian format to CPU format */ -+#define endian_convert_RxPD(x); \ -+ { \ -+ (x)->RxPktLength = uap_le16_to_cpu((x)->RxPktLength); \ -+ (x)->RxPktOffset = uap_le32_to_cpu((x)->RxPktOffset); \ -+ } -+#else /* BIG_ENDIAN */ -+/** Do nothing */ -+#define uap_le16_to_cpu(x) x -+/** Do nothing */ -+#define uap_le32_to_cpu(x) x -+/** Do nothing */ -+#define uap_le64_to_cpu(x) x -+/** Do nothing */ -+#define uap_cpu_to_le16(x) x -+/** Do nothing */ -+#define uap_cpu_to_le32(x) x -+/** Do nothing */ -+#define uap_cpu_to_le64(x) x -+ -+/** Do nothing */ -+#define endian_convert_TxPD(x) -+/** Do nothing */ -+#define endian_convert_RxPD(x) -+#endif /* BIG_ENDIAN */ -+ -+/** Host Command ID : Function initialization */ -+#define HostCmd_CMD_FUNC_INIT 0x00a9 -+/** Host Command ID : Function shutdown */ -+#define HostCmd_CMD_FUNC_SHUTDOWN 0x00aa -+ -+/** Host Command id: SYS_INFO */ -+#define HOST_CMD_APCMD_SYS_INFO 0x00ae -+/** Host Command id: SYS_RESET */ -+#define HOST_CMD_APCMD_SYS_RESET 0x00af -+/** Host Command id: SYS_CONFIGURE */ -+#define HOST_CMD_APCMD_SYS_CONFIGURE 0x00b0 -+/** Host Command id: BSS_START */ -+#define HOST_CMD_APCMD_BSS_START 0x00b1 -+/** Host Command id: SYS_STOP */ -+#define HOST_CMD_APCMD_BSS_STOP 0x00b2 -+/** Host Command id: STA_LIST */ -+#define HOST_CMD_APCMD_STA_LIST 0x00b3 -+/** Host Command id: STA_FILTER_TABLE */ -+#define HOST_CMD_APCMD_STA_FILTER_TABLE 0x00b4 -+/** Host Command id: STA_DEAUTH */ -+#define HOST_CMD_APCMD_STA_DEAUTH 0x00b5 -+/** Host Command id: SOFT_RESET */ -+#define HOST_CMD_APCMD_SOFT_RESET 0x00d5 -+/** Host Command id: POWER_MGMT_EXT */ -+#define HOST_CMD_POWER_MGMT_EXT 0x00ef -+/** Host Command id: SLEEP_CONFIRM*/ -+#define HOST_CMD_SLEEP_CONFIRM 0x00d8 -+ -+/** TLV type : SSID */ -+#define TLV_TYPE_SSID 0x0000 -+/** TLV type : Rates */ -+#define TLV_TYPE_RATES 0x0001 -+/** TLV type : PHY DS */ -+#define TLV_TYPE_PHY_DS 0x0003 -+ -+/** TLV Id : Base id */ -+#define PROPRIETARY_TLV_BASE_ID 0x0100 -+/** TLV Id : AP_MAC_ADDRESS */ -+#define MRVL_AP_MAC_ADDRESS_TLV_ID (PROPRIETARY_TLV_BASE_ID + 43) -+/** TLV Id : Beacon period */ -+#define MRVL_BEACON_PERIOD_TLV_ID (PROPRIETARY_TLV_BASE_ID + 44) -+/** TLV Id : Dtim period */ -+#define MRVL_DTIM_PERIOD_TLV_ID (PROPRIETARY_TLV_BASE_ID + 45) -+/** TLV Id : Basic rates */ -+#define MRVL_BASIC_RATES_TLV_ID (PROPRIETARY_TLV_BASE_ID + 46) -+/** TLV Id : Tx Power */ -+#define MRVL_TX_POWER_TLV_ID (PROPRIETARY_TLV_BASE_ID + 47) -+/** TLV Id : Broadcast SSID control */ -+#define MRVL_BCAST_SSID_CTL_TLV_ID (PROPRIETARY_TLV_BASE_ID + 48) -+/** TLV Id : Preamble control */ -+#define MRVL_PREAMBLE_CTL_TLV_ID (PROPRIETARY_TLV_BASE_ID + 49) -+/** TLV Id : Antenna control */ -+#define MRVL_ANTENNA_CTL_TLV_ID (PROPRIETARY_TLV_BASE_ID + 50) -+/** TLV Id : RTS threshold */ -+#define MRVL_RTS_THRESHOLD_TLV_ID (PROPRIETARY_TLV_BASE_ID + 51) -+/** TLV Id : Radio control */ -+#define MRVL_RADIO_CTL_TLV_ID (PROPRIETARY_TLV_BASE_ID + 52) -+/** TLV Id : TX data rate */ -+#define MRVL_TX_DATA_RATE_TLV_ID (PROPRIETARY_TLV_BASE_ID + 53) -+/** TLV Id : Packet forward control */ -+#define MRVL_PKT_FWD_CTL_TLV_ID (PROPRIETARY_TLV_BASE_ID + 54) -+/** TLV Id : STA info */ -+#define MRVL_STA_INFO_TLV_ID (PROPRIETARY_TLV_BASE_ID + 55) -+/** TLV Id : STA MAC address filter */ -+#define MRVL_STA_MAC_ADDR_FILTER_TLV_ID (PROPRIETARY_TLV_BASE_ID + 56) -+/** TLV Id : STA ageout timer */ -+#define MRVL_STA_AGEOUT_TIMER_TLV_ID (PROPRIETARY_TLV_BASE_ID + 57) -+/** TLV Id : Security config */ -+#define MRVL_SECURITY_CFG_TLV_ID (PROPRIETARY_TLV_BASE_ID + 58) -+/** TLV Id : WEP KEY */ -+#define MRVL_WEP_KEY_TLV_ID (PROPRIETARY_TLV_BASE_ID + 59) -+/** TLV Id : WPA Passphrase */ -+#define MRVL_WPA_PASSPHRASE_TLV_ID (PROPRIETARY_TLV_BASE_ID + 60) -+ -+/** Action get */ -+#define ACTION_GET 0 -+/** Action set */ -+#define ACTION_SET 1 -+/** Length of ethernet address */ -+#ifndef ETH_ALEN -+#define ETH_ALEN 6 -+#endif -+ -+/** HostCmd_DS_GEN */ -+typedef struct -+{ -+ /** Command */ -+ u16 Command; -+ /** Size */ -+ u16 Size; -+ /** Sequence number */ -+ u16 SeqNum; -+ /** Result */ -+ u16 Result; -+} __ATTRIB_PACK__ HostCmd_DS_GEN; -+ -+/** Size of HostCmd_DS_GEN */ -+#define S_DS_GEN sizeof(HostCmd_DS_GEN) -+ -+/** _HostCmd_HEADER*/ -+typedef struct -+{ -+ /** Command Header : Command */ -+ u16 Command; -+ /** Command Header : Size */ -+ u16 Size; -+} __ATTRIB_PACK__ HostCmd_HEADER; -+ -+/** HostCmd_SYS_CONFIG */ -+typedef struct _HostCmd_SYS_CONFIG -+{ -+ /** CMD Action GET/SET*/ -+ u16 Action; -+ /** Tlv buffer */ -+ u8 TlvBuffer[0]; -+} __ATTRIB_PACK__ HostCmd_SYS_CONFIG; -+ -+/** HostCmd_DS_POWER_MGMT_EXT */ -+typedef struct _HostCmd_DS_POWER_MGMT_EXT -+{ -+ /** CMD Action Get/Set*/ -+ u16 action; -+ /** power mode */ -+ u16 power_mode; -+} __ATTRIB_PACK__ HostCmd_DS_POWER_MGMT_EXT; -+ -+/** _HostCmd_DS_COMMAND*/ -+typedef struct _HostCmd_DS_COMMAND -+{ -+ -+ /** Command Header : Command */ -+ u16 Command; -+ /** Command Header : Size */ -+ u16 Size; -+ /** Command Header : Sequence number */ -+ u16 SeqNum; -+ /** Command Header : Result */ -+ u16 Result; -+ /** Command Body */ -+ union -+ { -+ HostCmd_SYS_CONFIG sys_config; -+ HostCmd_DS_POWER_MGMT_EXT pm_cfg; -+ -+ } params; -+} __ATTRIB_PACK__ HostCmd_DS_COMMAND; -+ -+/** MrvlIEtypesHeader_*/ -+typedef struct _MrvlIEtypesHeader -+{ -+ /** Header type */ -+ u16 Type; -+ /** Header length */ -+ u16 Len; -+} __ATTRIB_PACK__ MrvlIEtypesHeader_t; -+ -+/** MrvlIEtypes_Data_t */ -+typedef struct _MrvlIEtypes_Data_t -+{ -+ /** Header */ -+ MrvlIEtypesHeader_t Header; -+ /** Data */ -+ u8 Data[1]; -+} __ATTRIB_PACK__ MrvlIEtypes_Data_t; -+ -+/** MrvlIEtypes_ChanListParamSet_t */ -+typedef struct _MrvlIEtypes_MacAddr_t -+{ -+ /** Header */ -+ MrvlIEtypesHeader_t Header; -+ /** AP MAC address */ -+ u8 ApMacAddr[ETH_ALEN]; -+} __ATTRIB_PACK__ MrvlIEtypes_MacAddr_t; -+ -+/** Event ID: BSS started */ -+#define MICRO_AP_EV_ID_BSS_START 46 -+ -+/** Event ID: BSS idle event */ -+#define MICRO_AP_EV_BSS_IDLE 67 -+ -+/** Event ID: BSS active event */ -+#define MICRO_AP_EV_BSS_ACTIVE 68 -+ -+/** Event ID: PS_AWAKE */ -+#define EVENT_PS_AWAKE 0x0a -+ -+/** Event ID: PS_SLEEP */ -+#define EVENT_PS_SLEEP 0x0b -+ -+/** PS_STATE */ -+typedef enum _PS_STATE -+{ -+ PS_STATE_AWAKE, -+ PS_STATE_PRE_SLEEP, -+ PS_STATE_SLEEP -+} PS_STATE; -+ -+/** TLV type: AP Sleep param */ -+#define TLV_TYPE_AP_SLEEP_PARAM (PROPRIETARY_TLV_BASE_ID + 106) -+/** TLV type: AP Inactivity Sleep param */ -+#define TLV_TYPE_AP_INACT_SLEEP_PARAM (PROPRIETARY_TLV_BASE_ID + 107) -+ -+/** MrvlIEtypes_sleep_param_t */ -+typedef struct _MrvlIEtypes_sleep_param_t -+{ -+ /** Header */ -+ MrvlIEtypesHeader_t header; -+ /** control bitmap */ -+ u32 ctrl_bitmap; -+ /** min_sleep */ -+ u32 min_sleep; -+ /** max_sleep */ -+ u32 max_sleep; -+} __ATTRIB_PACK__ MrvlIEtypes_sleep_param_t; -+ -+/** MrvlIEtypes_inact_sleep_param_t */ -+typedef struct _MrvlIEtypes_inact_sleep_param_t -+{ -+ /** Header */ -+ MrvlIEtypesHeader_t header; -+ /** inactivity timeout */ -+ u32 inactivity_to; -+ /** min_awake */ -+ u32 min_awake; -+ /** max_awake */ -+ u32 max_awake; -+} __ATTRIB_PACK__ MrvlIEtypes_inact_sleep_param_t; -+ -+/** AP_Event */ -+typedef struct _AP_Event -+{ -+ /** Event ID */ -+ u32 EventId; -+ /* -+ * Reserved for STA_ASSOCIATED event and contains -+ * status information for the MIC_COUNTERMEASURES event. -+ */ -+ /** Reserved/status */ -+ u16 status; -+ /** AP MAC address */ -+ u8 MacAddr[ETH_ALEN]; -+} __ATTRIB_PACK__ AP_Event; -+#endif /* _UAP_FW_H */ -diff --git a/drivers/net/wireless/libertas_uap/uap_headers.h b/drivers/net/wireless/libertas_uap/uap_headers.h -new file mode 100644 -index 0000000..fa09af4 ---- /dev/null -+++ b/drivers/net/wireless/libertas_uap/uap_headers.h -@@ -0,0 +1,64 @@ -+/** @file uap_headers.h -+ * -+ * @brief This file contains all the necessary include file. -+ * -+ * Copyright (C) 2008-2009, Marvell International Ltd. -+ * -+ * This software file (the "File") is distributed by Marvell International -+ * Ltd. under the terms of the GNU General Public License Version 2, June 1991 -+ * (the "License"). You may use, redistribute and/or modify this File in -+ * accordance with the terms and conditions of the License, a copy of which -+ * is available along with the File in the gpl.txt file or by writing to -+ * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ * 02111-1307 or on the worldwide web at http://www.gnu.org/licenses/gpl.txt. -+ * -+ * THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE -+ * IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE -+ * ARE EXPRESSLY DISCLAIMED. The License provides additional details about -+ * this warranty disclaimer. -+ * -+ */ -+#ifndef _UAP_HEADERS_H -+#define _UAP_HEADERS_H -+ -+/* Linux header files */ -+#include <linux/kernel.h> -+#include <linux/module.h> -+#include <linux/init.h> -+#include <linux/version.h> -+#include <linux/param.h> -+#include <linux/types.h> -+#include <linux/interrupt.h> -+#include <linux/proc_fs.h> -+#include <linux/kthread.h> -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,27) -+#include <linux/semaphore.h> -+#else -+#include <asm/semaphore.h> -+#endif -+ -+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,18) -+#include <linux/config.h> -+#endif -+ -+/* Net header files */ -+#include <linux/netdevice.h> -+#include <linux/net.h> -+#include <linux/skbuff.h> -+#include <linux/if_ether.h> -+#include <linux/etherdevice.h> -+#include <net/sock.h> -+#include <linux/netlink.h> -+#include <linux/firmware.h> -+#include <linux/delay.h> -+ -+#include "uap_drv.h" -+#include "uap_fw.h" -+ -+#include <linux/mmc/sdio.h> -+#include <linux/mmc/sdio_ids.h> -+#include <linux/mmc/sdio_func.h> -+#include <linux/mmc/card.h> -+#include "uap_sdio_mmc.h" -+ -+#endif /* _UAP_HEADERS_H */ -diff --git a/drivers/net/wireless/libertas_uap/uap_main.c b/drivers/net/wireless/libertas_uap/uap_main.c -new file mode 100644 -index 0000000..6ad8403 ---- /dev/null -+++ b/drivers/net/wireless/libertas_uap/uap_main.c -@@ -0,0 +1,1817 @@ -+/** @file uap_main.c -+ * @brief This file contains the major functions in uAP -+ * driver. It includes init, exit etc.. -+ * This file also contains the initialization for SW, -+ * FW and HW -+ * -+ * Copyright (C) 2008-2009, Marvell International Ltd. -+ * -+ * This software file (the "File") is distributed by Marvell International -+ * Ltd. under the terms of the GNU General Public License Version 2, June 1991 -+ * (the "License"). You may use, redistribute and/or modify this File in -+ * accordance with the terms and conditions of the License, a copy of which -+ * is available along with the File in the gpl.txt file or by writing to -+ * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ * 02111-1307 or on the worldwide web at http://www.gnu.org/licenses/gpl.txt. -+ * -+ * THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE -+ * IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE -+ * ARE EXPRESSLY DISCLAIMED. The License provides additional details about -+ * this warranty disclaimer. -+ * -+ */ -+/** -+ * @mainpage uAP Linux Driver -+ * -+ * @section overview_sec Overview -+ * -+ * This is Linux reference driver for Marvell uAP. -+ * -+ * @section copyright_sec Copyright -+ * -+ * Copyright (C) 2008, Marvell International Ltd. -+ * -+ */ -+ -+#include "uap_headers.h" -+ -+/** -+ * the global variable of a pointer to uap_private -+ * structure variable -+ */ -+uap_private *uappriv = NULL; -+#ifdef DEBUG_LEVEL1 -+#define DEFAULT_DEBUG_MASK (DBG_MSG | DBG_FATAL | DBG_ERROR) -+u32 drvdbg = DEFAULT_DEBUG_MASK; -+#endif -+/** Helper name */ -+char *helper_name = NULL; -+/** Firmware name */ -+char *fw_name = NULL; -+ -+/** Semaphore for add/remove card */ -+SEMAPHORE AddRemoveCardSem; -+ -+/******************************************************** -+ Local Functions -+********************************************************/ -+/** -+ * @brief This function send sleep confirm command to firmware -+ * -+ * @param priv A pointer to uap_private structure -+ * @return UAP_STATUS_SUCCESS for success otherwise UAP_STATUS_FAILURE -+ */ -+static int -+uap_dnld_sleep_confirm_cmd(uap_private * priv) -+{ -+ uap_adapter *Adapter = priv->adapter; -+ int ret = UAP_STATUS_SUCCESS; -+ ENTER(); -+ PRINTM(CMND, "Sleep confirm\n"); -+ Adapter->cmd_pending = TRUE; -+ Adapter->cmd_wait_option = HostCmd_OPTION_WAITFORRSP_SLEEPCONFIRM; -+ ret = -+ sbi_host_to_card(priv, (u8 *) & Adapter->PSConfirmSleep, -+ sizeof(PS_CMD_ConfirmSleep)); -+ if (ret != UAP_STATUS_SUCCESS) { -+ Adapter->ps_state = PS_STATE_AWAKE; -+ Adapter->cmd_pending = FALSE; -+ Adapter->cmd_wait_option = FALSE; -+ } -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function process sleep confirm resp from firmware -+ * -+ * @param priv A pointer to uap_private structure -+ * @param resp A pointer to resp buf -+ * @param resp_len resp buf len -+ * @return UAP_STATUS_SUCCESS for success otherwise UAP_STATUS_FAILURE -+ */ -+int -+uap_process_sleep_confirm_resp(uap_private * priv, u8 * resp, int resp_len) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ HostCmd_DS_COMMAND *cmd; -+ uap_adapter *Adapter = priv->adapter; -+ ENTER(); -+ PRINTM(CMND, "Sleep confirm resp\n"); -+ if (!resp_len) { -+ PRINTM(ERROR, "Cmd Size is 0\n"); -+ ret = -EFAULT; -+ goto done; -+ } -+ cmd = (HostCmd_DS_COMMAND *) resp; -+ cmd->Result = uap_le16_to_cpu(cmd->Result); -+ if (cmd->Result != UAP_STATUS_SUCCESS) { -+ PRINTM(ERROR, "HOST_CMD_APCMD_PS_SLEEP_CONFIRM fail=%x\n", cmd->Result); -+ ret = -EFAULT; -+ } -+ done: -+ if (ret == UAP_STATUS_SUCCESS) -+ Adapter->ps_state = PS_STATE_SLEEP; -+ else -+ Adapter->ps_state = PS_STATE_AWAKE; -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function checks condition and prepares to -+ * send sleep confirm command to firmware if OK. -+ * -+ * @param priv A pointer to uap_private structure -+ * @return n/a -+ */ -+static void -+uap_ps_cond_check(uap_private * priv) -+{ -+ uap_adapter *Adapter = priv->adapter; -+ -+ ENTER(); -+ if (!priv->uap_dev.cmd_sent && -+ !Adapter->cmd_pending && !Adapter->IntCounter) { -+ uap_dnld_sleep_confirm_cmd(priv); -+ } else { -+ PRINTM(INFO, "Delay Sleep Confirm (%s%s%s)\n", -+ (priv->uap_dev.cmd_sent) ? "D" : "", -+ (Adapter->cmd_pending) ? "C" : "", -+ (Adapter->IntCounter) ? "I" : ""); -+ } -+ LEAVE(); -+} -+ -+/** -+ * @brief This function add cmd to cmdQ and waiting for response -+ * -+ * @param priv A pointer to uap_private structure -+ * @param skb A pointer to the skb for process -+ * @param wait_option Wait option -+ * @return UAP_STATUS_SUCCESS for success otherwise UAP_STATUS_FAILURE -+ */ -+static int -+uap_process_cmd(uap_private * priv, struct sk_buff *skb, u8 wait_option) -+{ -+ uap_adapter *Adapter = priv->adapter; -+ int ret = UAP_STATUS_SUCCESS; -+ HostCmd_DS_COMMAND *cmd; -+ u8 *headptr; -+ ENTER(); -+ if (Adapter->HardwareStatus != HWReady) { -+ PRINTM(ERROR, "Hw not ready, uap_process_cmd\n"); -+ kfree(skb); -+ LEAVE(); -+ return -EFAULT; -+ } -+ skb->cb[0] = wait_option; -+ headptr = skb->data; -+ *(u16 *) & headptr[0] = uap_cpu_to_le16(skb->len); -+ *(u16 *) & headptr[2] = uap_cpu_to_le16(MV_TYPE_CMD); -+ cmd = (HostCmd_DS_COMMAND *) (skb->data + INTF_HEADER_LEN); -+ Adapter->SeqNum++; -+ cmd->SeqNum = uap_cpu_to_le16(Adapter->SeqNum); -+ PRINTM(CMND, "process_cmd: %x\n", cmd->Command); -+ DBG_HEXDUMP(CMD_D, "process_cmd", (u8 *) cmd, cmd->Size); -+ if (!wait_option) { -+ skb_queue_tail(&priv->adapter->cmd_queue, skb); -+ wake_up_interruptible(&priv->MainThread.waitQ); -+ LEAVE(); -+ return ret; -+ } -+ if (OS_ACQ_SEMAPHORE_BLOCK(&Adapter->CmdSem)) { -+ PRINTM(ERROR, "Acquire semaphore error, uap_prepare_cmd\n"); -+ kfree(skb); -+ LEAVE(); -+ return -EBUSY; -+ } -+ skb_queue_tail(&priv->adapter->cmd_queue, skb); -+ Adapter->CmdWaitQWoken = FALSE; -+ wake_up_interruptible(&priv->MainThread.waitQ); -+ /* Sleep until response is generated by FW */ -+ if (wait_option == HostCmd_OPTION_WAITFORRSP_TIMEOUT) { -+ if (!os_wait_interruptible_timeout -+ (Adapter->cmdwait_q, Adapter->CmdWaitQWoken, MRVDRV_TIMER_20S)) { -+ PRINTM(ERROR, "Cmd timeout\n"); -+ Adapter->cmd_pending = FALSE; -+ ret = -EFAULT; -+ } -+ } else -+ wait_event_interruptible(Adapter->cmdwait_q, Adapter->CmdWaitQWoken); -+ OS_REL_SEMAPHORE(&Adapter->CmdSem); -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief Inspect the response buffer for pointers to expected TLVs -+ * -+ * -+ * @param pTlv Pointer to the start of the TLV buffer to parse -+ * @param tlvBufSize Size of the TLV buffer -+ * @param reqTlvType request tlv's tlvtype -+ * @param ppTlv Output parameter: Pointer to the request TLV if found -+ * -+ * @return void -+ */ -+static void -+uap_get_tlv_ptrs(MrvlIEtypes_Data_t * pTlv, int tlvBufSize, -+ u16 reqTlvType, MrvlIEtypes_Data_t ** ppTlv) -+{ -+ MrvlIEtypes_Data_t *pCurrentTlv; -+ int tlvBufLeft; -+ u16 tlvType; -+ u16 tlvLen; -+ -+ ENTER(); -+ pCurrentTlv = pTlv; -+ tlvBufLeft = tlvBufSize; -+ *ppTlv = NULL; -+ PRINTM(INFO, "uap_get_tlv: tlvBufSize = %d, reqTlvType=%x\n", tlvBufSize, -+ reqTlvType); -+ while (tlvBufLeft >= sizeof(MrvlIEtypesHeader_t)) { -+ tlvType = uap_le16_to_cpu(pCurrentTlv->Header.Type); -+ tlvLen = uap_le16_to_cpu(pCurrentTlv->Header.Len); -+ if (reqTlvType == tlvType) -+ *ppTlv = (MrvlIEtypes_Data_t *) pCurrentTlv; -+ if (*ppTlv) { -+ HEXDUMP("TLV Buf", (u8 *) * ppTlv, tlvLen); -+ break; -+ } -+ tlvBufLeft -= (sizeof(pTlv->Header) + tlvLen); -+ pCurrentTlv = (MrvlIEtypes_Data_t *) (pCurrentTlv->Data + tlvLen); -+ } /* while */ -+ LEAVE(); -+} -+ -+/** -+ * @brief This function get mac -+ * -+ * @param priv A pointer to uap_private structure -+ * @return UAP_STATUS_SUCCESS on success, otherwise failure code -+ */ -+static int -+uap_get_mac_address(uap_private * priv) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ u32 CmdSize; -+ HostCmd_DS_COMMAND *cmd; -+ uap_adapter *Adapter = priv->adapter; -+ struct sk_buff *skb; -+ MrvlIEtypes_MacAddr_t *pMacAddrTlv; -+ MrvlIEtypes_Data_t *pTlv; -+ u16 tlvBufSize; -+ ENTER(); -+ skb = dev_alloc_skb(MRVDRV_SIZE_OF_CMD_BUFFER); -+ if (!skb) { -+ PRINTM(ERROR, "No free skb\n"); -+ ret = -ENOMEM; -+ goto done; -+ } -+ CmdSize = -+ S_DS_GEN + sizeof(HostCmd_SYS_CONFIG) + sizeof(MrvlIEtypes_MacAddr_t); -+ cmd = (HostCmd_DS_COMMAND *) (skb->data + INTF_HEADER_LEN); -+ cmd->Command = uap_cpu_to_le16(HOST_CMD_APCMD_SYS_CONFIGURE); -+ cmd->Size = uap_cpu_to_le16(CmdSize); -+ cmd->params.sys_config.Action = uap_cpu_to_le16(ACTION_GET); -+ pMacAddrTlv = -+ (MrvlIEtypes_MacAddr_t *) (skb->data + INTF_HEADER_LEN + S_DS_GEN + -+ sizeof(HostCmd_SYS_CONFIG)); -+ pMacAddrTlv->Header.Type = uap_cpu_to_le16(MRVL_AP_MAC_ADDRESS_TLV_ID); -+ pMacAddrTlv->Header.Len = uap_cpu_to_le16(ETH_ALEN); -+ skb_put(skb, CmdSize + INTF_HEADER_LEN); -+ if (UAP_STATUS_SUCCESS != -+ uap_process_cmd(priv, skb, HostCmd_OPTION_WAITFORRSP_TIMEOUT)) { -+ PRINTM(ERROR, "Fail to process cmd SYS_CONFIGURE Query\n"); -+ ret = -EFAULT; -+ goto done; -+ } -+ if (!Adapter->CmdSize) { -+ PRINTM(ERROR, "Cmd Size is 0\n"); -+ ret = -EFAULT; -+ goto done; -+ } -+ cmd = (HostCmd_DS_COMMAND *) Adapter->CmdBuf; -+ cmd->Result = uap_le16_to_cpu(cmd->Result); -+ if (cmd->Result != UAP_STATUS_SUCCESS) { -+ PRINTM(ERROR, "uap_get_mac_address fail=%x\n", cmd->Result); -+ ret = -EFAULT; -+ goto done; -+ } -+ pTlv = -+ (MrvlIEtypes_Data_t *) (Adapter->CmdBuf + S_DS_GEN + -+ sizeof(HostCmd_SYS_CONFIG)); -+ tlvBufSize = Adapter->CmdSize - S_DS_GEN - sizeof(HostCmd_SYS_CONFIG); -+ uap_get_tlv_ptrs(pTlv, tlvBufSize, MRVL_AP_MAC_ADDRESS_TLV_ID, -+ (MrvlIEtypes_Data_t **) & pMacAddrTlv); -+ if (pMacAddrTlv) { -+ memcpy(priv->uap_dev.netdev->dev_addr, pMacAddrTlv->ApMacAddr, -+ ETH_ALEN); -+ HEXDUMP("Original MAC addr", priv->uap_dev.netdev->dev_addr, ETH_ALEN); -+ } -+ done: -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function checks the conditions and sends packet to device -+ * -+ * @param priv A pointer to uap_private structure -+ * @param skb A pointer to the skb for process -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+static int -+uap_process_tx(uap_private * priv, struct sk_buff *skb) -+{ -+ uap_adapter *Adapter = priv->adapter; -+ int ret = UAP_STATUS_SUCCESS; -+ TxPD *pLocalTxPD; -+ u8 *headptr; -+ struct sk_buff *newskb; -+ int newheadlen; -+ ENTER(); -+ ASSERT(skb); -+ if (!skb) { -+ LEAVE(); -+ return UAP_STATUS_FAILURE; -+ } -+ if (skb_headroom(skb) < (sizeof(TxPD) + INTF_HEADER_LEN + HEADER_ALIGNMENT)) { -+ newheadlen = sizeof(TxPD) + INTF_HEADER_LEN + HEADER_ALIGNMENT; -+ PRINTM(WARN, "Tx: Insufficient skb headroom %d\n", skb_headroom(skb)); -+ /* Insufficient skb headroom - allocate a new skb */ -+ newskb = skb_realloc_headroom(skb, newheadlen); -+ if (unlikely(newskb == NULL)) { -+ PRINTM(ERROR, "Tx: Cannot allocate skb\n"); -+ ret = UAP_STATUS_FAILURE; -+ goto done; -+ } -+ kfree_skb(skb); -+ skb = newskb; -+ PRINTM(INFO, "new skb headroom %d\n", skb_headroom(skb)); -+ } -+ /* headptr should be aligned */ -+ headptr = skb->data - sizeof(TxPD) - INTF_HEADER_LEN; -+ headptr = (u8 *) ((u32) headptr & ~((u32) (HEADER_ALIGNMENT - 1))); -+ -+ pLocalTxPD = (TxPD *) (headptr + INTF_HEADER_LEN); -+ memset(pLocalTxPD, 0, sizeof(TxPD)); -+ pLocalTxPD->BssType = PKT_TYPE_MICROAP; -+ pLocalTxPD->TxPktLength = skb->len; -+ /* offset of actual data */ -+ pLocalTxPD->TxPktOffset = (long) skb->data - (long) pLocalTxPD; -+ endian_convert_TxPD(pLocalTxPD); -+ *(u16 *) & headptr[0] = -+ uap_cpu_to_le16(skb->len + ((long) skb->data - (long) headptr)); -+ *(u16 *) & headptr[2] = uap_cpu_to_le16(MV_TYPE_DAT); -+ ret = -+ sbi_host_to_card(priv, headptr, -+ skb->len + ((long) skb->data - (long) headptr)); -+ if (ret) { -+ PRINTM(ERROR, "uap_process_tx Error: sbi_host_to_card failed: 0x%X\n", -+ ret); -+ Adapter->dbg.num_tx_host_to_card_failure++; -+ goto done; -+ } -+ PRINTM(DATA, "Data => FW\n"); -+ DBG_HEXDUMP(DAT_D, "Tx", headptr, -+ MIN(skb->len + sizeof(TxPD), DATA_DUMP_LEN)); -+ done: -+ /* Freed skb */ -+ kfree_skb(skb); -+ LEAVE(); -+ return ret; -+} -+ -+static struct netlink_kernel_cfg cfg = { -+ .groups = NL_MULTICAST_GROUP, -+}; -+ -+/** -+ * @brief This function initializes the adapter structure -+ * and set default value to the member of adapter. -+ * -+ * @param priv A pointer to uap_private structure -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+static int -+uap_init_sw(uap_private * priv) -+{ -+ uap_adapter *Adapter = priv->adapter; -+ -+ ENTER(); -+ -+ if (!(Adapter->CmdBuf = kmalloc(MRVDRV_SIZE_OF_CMD_BUFFER, GFP_KERNEL))) { -+ PRINTM(INFO, "Failed to allocate command buffer!\n"); -+ LEAVE(); -+ return UAP_STATUS_FAILURE; -+ } -+ -+ Adapter->cmd_pending = FALSE; -+ Adapter->CmdWaitQWoken = FALSE; -+ Adapter->ps_state = PS_STATE_AWAKE; -+ Adapter->WakeupTries = 0; -+ -+ memset(&Adapter->PSConfirmSleep, 0, sizeof(PS_CMD_ConfirmSleep)); -+ /** SDIO header */ -+ Adapter->PSConfirmSleep.SDLen = -+ uap_cpu_to_le16(sizeof(PS_CMD_ConfirmSleep)); -+ Adapter->PSConfirmSleep.SDType = uap_cpu_to_le16(MV_TYPE_CMD); -+ Adapter->PSConfirmSleep.SeqNum = 0; -+ Adapter->PSConfirmSleep.Command = uap_cpu_to_le16(HOST_CMD_SLEEP_CONFIRM); -+ Adapter->PSConfirmSleep.Size = uap_cpu_to_le16(sizeof(HostCmd_DS_GEN)); -+ Adapter->PSConfirmSleep.Result = 0; -+ -+ init_waitqueue_head(&Adapter->cmdwait_q); -+ OS_INIT_SEMAPHORE(&Adapter->CmdSem); -+ -+ skb_queue_head_init(&Adapter->tx_queue); -+ skb_queue_head_init(&Adapter->cmd_queue); -+ -+ /* Status variable */ -+ Adapter->HardwareStatus = HWInitializing; -+ -+ /* PnP support */ -+ Adapter->SurpriseRemoved = FALSE; -+ -+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,22) -+ Adapter->nl_sk = netlink_kernel_create(NETLINK_MARVELL, -+ NL_MULTICAST_GROUP, NULL, -+ THIS_MODULE); -+#else -+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24) -+ Adapter->nl_sk = netlink_kernel_create(NETLINK_MARVELL, -+ NL_MULTICAST_GROUP, NULL, NULL, -+ THIS_MODULE); -+#else -+ Adapter->nl_sk = netlink_kernel_create(&init_net, NETLINK_MARVELL, &cfg); -+#endif -+#endif -+ if (!Adapter->nl_sk) { -+ PRINTM(ERROR, -+ "Could not initialize netlink event passing mechanism!\n"); -+ } -+ LEAVE(); -+ return UAP_STATUS_SUCCESS; -+} -+ -+/** -+ * @brief This function sends FUNC_INIT command to firmware -+ * -+ * @param priv A pointer to uap_private structure -+ * @return UAP_STATUS_SUCCESS on success, otherwise failure code -+ */ -+static int -+uap_func_init(uap_private * priv) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ u32 CmdSize; -+ HostCmd_DS_GEN *cmd; -+ uap_adapter *Adapter = priv->adapter; -+ struct sk_buff *skb; -+ ENTER(); -+ if (Adapter->HardwareStatus != HWReady) { -+ PRINTM(ERROR, "uap_func_init:Hardware is not ready!\n"); -+ ret = -EFAULT; -+ goto done; -+ } -+ skb = dev_alloc_skb(MRVDRV_SIZE_OF_CMD_BUFFER); -+ if (!skb) { -+ PRINTM(ERROR, "No free skb\n"); -+ ret = -ENOMEM; -+ goto done; -+ } -+ CmdSize = sizeof(HostCmd_DS_GEN); -+ cmd = (HostCmd_DS_GEN *) (skb->data + INTF_HEADER_LEN); -+ cmd->Command = uap_cpu_to_le16(HostCmd_CMD_FUNC_INIT); -+ cmd->Size = uap_cpu_to_le16(CmdSize); -+ skb_put(skb, CmdSize + INTF_HEADER_LEN); -+ PRINTM(CMND, "HostCmd_CMD_FUNC_INIT\n"); -+ if (UAP_STATUS_SUCCESS != -+ uap_process_cmd(priv, skb, HostCmd_OPTION_WAITFORRSP_TIMEOUT)) { -+ PRINTM(ERROR, "Fail to process cmd HostCmd_CMD_FUNC_INIT\n"); -+ ret = -EFAULT; -+ goto done; -+ } -+ done: -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function sends FUNC_SHUTDOWN command to firmware -+ * -+ * @param priv A pointer to uap_private structure -+ * @return UAP_STATUS_SUCCESS on success, otherwise failure code -+ */ -+static int __exit -+uap_func_shutdown(uap_private * priv) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ u32 CmdSize; -+ HostCmd_DS_GEN *cmd; -+ uap_adapter *Adapter = priv->adapter; -+ struct sk_buff *skb; -+ ENTER(); -+ if (Adapter->HardwareStatus != HWReady) { -+ PRINTM(ERROR, "uap_func_shutdown:Hardware is not ready!\n"); -+ ret = -EFAULT; -+ goto done; -+ } -+ skb = dev_alloc_skb(MRVDRV_SIZE_OF_CMD_BUFFER); -+ if (!skb) { -+ PRINTM(ERROR, "No free skb\n"); -+ ret = -ENOMEM; -+ goto done; -+ } -+ CmdSize = sizeof(HostCmd_DS_GEN); -+ cmd = (HostCmd_DS_GEN *) (skb->data + INTF_HEADER_LEN); -+ cmd->Command = uap_cpu_to_le16(HostCmd_CMD_FUNC_SHUTDOWN); -+ cmd->Size = uap_cpu_to_le16(CmdSize); -+ skb_put(skb, CmdSize + INTF_HEADER_LEN); -+ PRINTM(CMND, "HostCmd_CMD_FUNC_SHUTDOWN\n"); -+ if (UAP_STATUS_SUCCESS != -+ uap_process_cmd(priv, skb, HostCmd_OPTION_WAITFORRSP_TIMEOUT)) { -+ PRINTM(ERROR, "Fail to process cmd HostCmd_CMD_FUNC_SHUTDOWN\n"); -+ ret = -EFAULT; -+ goto done; -+ } -+ done: -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function initializes firmware -+ * -+ * @param priv A pointer to uap_private structure -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+static int -+uap_init_fw(uap_private * priv) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ ENTER(); -+ sbi_disable_host_int(priv); -+ /* Check if firmware is already running */ -+ if (sbi_check_fw_status(priv, 1) == UAP_STATUS_SUCCESS) { -+ PRINTM(MSG, "UAP FW already running! Skip FW download\n"); -+ } else { -+ if ((ret = request_firmware(&priv->fw_helper, helper_name, -+ priv->hotplug_device)) < 0) { -+ PRINTM(FATAL, -+ "request_firmware() failed (helper), error code = %#x\n", -+ ret); -+ goto done; -+ } -+ -+ /* Download the helper */ -+ ret = sbi_prog_helper(priv); -+ -+ if (ret) { -+ PRINTM(FATAL, -+ "Bootloader in invalid state! Helper download failed!\n"); -+ ret = UAP_STATUS_FAILURE; -+ goto done; -+ } -+ if ((ret = request_firmware(&priv->firmware, fw_name, -+ priv->hotplug_device)) < 0) { -+ PRINTM(FATAL, "request_firmware() failed, error code = %#x\n", ret); -+ goto done; -+ } -+ -+ /* Download the main firmware via the helper firmware */ -+ if (sbi_prog_fw_w_helper(priv)) { -+ PRINTM(FATAL, "UAP FW download failed!\n"); -+ ret = UAP_STATUS_FAILURE; -+ goto done; -+ } -+ /* Check if the firmware is downloaded successfully or not */ -+ if (sbi_check_fw_status(priv, MAX_FIRMWARE_POLL_TRIES) == -+ UAP_STATUS_FAILURE) { -+ PRINTM(FATAL, "FW failed to be active in time!\n"); -+ ret = UAP_STATUS_FAILURE; -+ goto done; -+ } -+ PRINTM(MSG, "UAP FW is active\n"); -+ } -+ sbi_enable_host_int(priv); -+ priv->adapter->HardwareStatus = HWReady; -+ if (uap_func_init(priv) != UAP_STATUS_SUCCESS) { -+ ret = UAP_STATUS_FAILURE; -+ goto done; -+ } -+ done: -+ if (priv->fw_helper) -+ release_firmware(priv->fw_helper); -+ if (priv->firmware) -+ release_firmware(priv->firmware); -+ LEAVE(); -+ return ret; -+ -+} -+ -+/** -+ * @brief This function frees the structure of adapter -+ * -+ * @param priv A pointer to uap_private structure -+ * @return n/a -+ */ -+static void -+uap_free_adapter(uap_private * priv) -+{ -+ uap_adapter *Adapter = priv->adapter; -+ -+ ENTER(); -+ -+ if (Adapter) { -+ if ((Adapter->nl_sk) && ((Adapter->nl_sk)->sk_socket)) { -+ sock_release((Adapter->nl_sk)->sk_socket); -+ Adapter->nl_sk = NULL; -+ } -+ if (Adapter->CmdBuf) -+ kfree(Adapter->CmdBuf); -+ skb_queue_purge(&priv->adapter->tx_queue); -+ skb_queue_purge(&priv->adapter->cmd_queue); -+ /* Free the adapter object itself */ -+ kfree(Adapter); -+ priv->adapter = NULL; -+ } -+ -+ LEAVE(); -+} -+ -+/** -+ * @brief This function handles the major job in uap driver. -+ * it handles the event generated by firmware, rx data received -+ * from firmware and tx data sent from kernel. -+ * -+ * @param data A pointer to uap_thread structure -+ * @return BT_STATUS_SUCCESS -+ */ -+static int -+uap_service_main_thread(void *data) -+{ -+ uap_thread *thread = data; -+ uap_private *priv = thread->priv; -+ uap_adapter *Adapter = priv->adapter; -+ wait_queue_t wait; -+ u8 ireg = 0; -+ struct sk_buff *skb; -+ ENTER(); -+ uap_activate_thread(thread); -+ init_waitqueue_entry(&wait, current); -+ current->flags |= PF_NOFREEZE; -+ -+ for (;;) { -+ add_wait_queue(&thread->waitQ, &wait); -+ OS_SET_THREAD_STATE(TASK_INTERRUPTIBLE); -+ if ((Adapter->WakeupTries) || -+ (!Adapter->IntCounter && Adapter->ps_state == PS_STATE_PRE_SLEEP) || -+ (!priv->adapter->IntCounter -+ && (priv->uap_dev.data_sent || -+ skb_queue_empty(&priv->adapter->tx_queue)) -+ && (priv->uap_dev.cmd_sent || Adapter->cmd_pending || -+ skb_queue_empty(&priv->adapter->cmd_queue)) -+ )) { -+ PRINTM(INFO, "Main: Thread sleeping...\n"); -+ schedule(); -+ } -+ OS_SET_THREAD_STATE(TASK_RUNNING); -+ remove_wait_queue(&thread->waitQ, &wait); -+ if (kthread_should_stop() || Adapter->SurpriseRemoved) { -+ PRINTM(INFO, "main-thread: break from main thread: " -+ "SurpriseRemoved=0x%x\n", Adapter->SurpriseRemoved); -+ /* Cancel pending command */ -+ if (Adapter->cmd_pending == TRUE) { -+ /* Wake up cmd Q */ -+ Adapter->CmdWaitQWoken = TRUE; -+ wake_up_interruptible(&Adapter->cmdwait_q); -+ } -+ break; -+ } -+ -+ PRINTM(INFO, "Main: Thread waking up...\n"); -+ if (priv->adapter->IntCounter) { -+ OS_INT_DISABLE; -+ Adapter->IntCounter = 0; -+ OS_INT_RESTORE; -+ sbi_get_int_status(priv, &ireg); -+ } else if ((priv->adapter->ps_state == PS_STATE_SLEEP) && -+ (!skb_queue_empty(&priv->adapter->cmd_queue) || -+ !skb_queue_empty(&priv->adapter->tx_queue))) { -+ priv->adapter->WakeupTries++; -+ PRINTM(CMND, "%lu : Wakeup device...\n", os_time_get()); -+ sbi_wakeup_firmware(priv); -+ continue; -+ } -+ if (Adapter->ps_state == PS_STATE_PRE_SLEEP) -+ uap_ps_cond_check(priv); -+ -+ /* The PS state is changed during processing of Sleep Request event -+ above */ -+ if ((Adapter->ps_state == PS_STATE_SLEEP) || -+ (Adapter->ps_state == PS_STATE_PRE_SLEEP)) -+ continue; -+ /* Execute the next command */ -+ if (!priv->uap_dev.cmd_sent && !Adapter->cmd_pending && -+ (Adapter->HardwareStatus == HWReady)) { -+ if (!skb_queue_empty(&priv->adapter->cmd_queue)) { -+ skb = skb_dequeue(&priv->adapter->cmd_queue); -+ if (skb) { -+ Adapter->CmdSize = 0; -+ Adapter->cmd_pending = TRUE; -+ Adapter->cmd_wait_option = skb->cb[0]; -+ if (sbi_host_to_card(priv, skb->data, skb->len)) { -+ PRINTM(ERROR, "Cmd:sbi_host_to_card failed!\n"); -+ Adapter->cmd_pending = FALSE; -+ Adapter->dbg.num_cmd_host_to_card_failure++; -+ /* Wake up cmd Q */ -+ Adapter->CmdWaitQWoken = TRUE; -+ wake_up_interruptible(&Adapter->cmdwait_q); -+ } else { -+ if (Adapter->cmd_wait_option == -+ HostCmd_OPTION_WAITFORSEND) { -+ /* Wake up cmd Q */ -+ Adapter->CmdWaitQWoken = TRUE; -+ wake_up_interruptible(&Adapter->cmdwait_q); -+ Adapter->cmd_wait_option = FALSE; -+ } -+ } -+ kfree_skb(skb); -+ } -+ } -+ } -+ if (!priv->uap_dev.data_sent && (Adapter->HardwareStatus == HWReady)) { -+ if (!skb_queue_empty(&priv->adapter->tx_queue)) { -+ skb = skb_dequeue(&priv->adapter->tx_queue); -+ if (skb) { -+ if (uap_process_tx(priv, skb)) { -+ priv->stats.tx_dropped++; -+ priv->stats.tx_errors++; -+ os_start_queue(priv); -+ } else { -+ priv->stats.tx_packets++; -+ priv->stats.tx_bytes += skb->len; -+ } -+ -+ } -+ } -+ } -+ } -+ uap_deactivate_thread(thread); -+ LEAVE(); -+ return UAP_STATUS_SUCCESS; -+} -+ -+/** -+ * @brief uap hostcmd ioctl handler -+ * -+ * @param dev A pointer to net_device structure -+ * @param req A pointer to ifreq structure -+ * @return UAP_STATUS_SUCCESS --success, otherwise fail -+ */ -+/********* format of ifr_data *************/ -+/* buf_len + Hostcmd_body */ -+/* buf_len: 4 bytes */ -+/* the length of the buf which */ -+/* can be used to return data */ -+/* to application */ -+/* Hostcmd_body */ -+/*******************************************/ -+static int -+uap_hostcmd_ioctl(struct net_device *dev, struct ifreq *req) -+{ -+ u32 buf_len; -+ HostCmd_HEADER head; -+ uap_private *priv = (uap_private *) netdev_priv(dev); -+ uap_adapter *Adapter = priv->adapter; -+ int ret = UAP_STATUS_SUCCESS; -+ struct sk_buff *skb; -+ -+ ENTER(); -+ -+ /* Sanity check */ -+ if (req->ifr_data == NULL) { -+ PRINTM(ERROR, "uap_hostcmd_ioctl() corrupt data\n"); -+ LEAVE(); -+ return -EFAULT; -+ } -+ if (copy_from_user(&buf_len, req->ifr_data, sizeof(buf_len))) { -+ PRINTM(ERROR, "Copy from user failed\n"); -+ LEAVE(); -+ return -EFAULT; -+ } -+ memset(&head, 0, sizeof(HostCmd_HEADER)); -+ /* Get the command size from user space */ -+ if (copy_from_user -+ (&head, req->ifr_data + sizeof(buf_len), sizeof(HostCmd_HEADER))) { -+ PRINTM(ERROR, "Copy from user failed\n"); -+ LEAVE(); -+ return -EFAULT; -+ } -+ head.Size = uap_le16_to_cpu(head.Size); -+ if (head.Size > MRVDRV_SIZE_OF_CMD_BUFFER) { -+ PRINTM(ERROR, "CmdSize too big=%d\n", head.Size); -+ LEAVE(); -+ return -EFAULT; -+ } -+ PRINTM(CMND, "ioctl: hostcmd=%x, size=%d,buf_len=%d\n", head.Command, -+ head.Size, buf_len); -+ skb = dev_alloc_skb(head.Size + INTF_HEADER_LEN); -+ if (!skb) { -+ PRINTM(ERROR, "No free skb\n"); -+ LEAVE(); -+ return -ENOMEM; -+ } -+ -+ /* Get the command from user space */ -+ if (copy_from_user -+ (skb->data + INTF_HEADER_LEN, req->ifr_data + sizeof(buf_len), -+ head.Size)) { -+ PRINTM(ERROR, "Copy from user failed\n"); -+ LEAVE(); -+ return -EFAULT; -+ } -+ skb_put(skb, head.Size + INTF_HEADER_LEN); -+ if (UAP_STATUS_SUCCESS != -+ uap_process_cmd(priv, skb, HostCmd_OPTION_WAITFORRSP)) { -+ PRINTM(ERROR, "Fail to process cmd\n"); -+ LEAVE(); -+ return -EFAULT; -+ } -+ if (!Adapter->CmdSize) { -+ PRINTM(ERROR, "Cmd Size is 0\n"); -+ LEAVE(); -+ return -EFAULT; -+ } -+ if (Adapter->CmdSize > buf_len) { -+ PRINTM(ERROR, "buf_len is too small\n"); -+ LEAVE(); -+ return -EFAULT; -+ } -+ /* Copy to user */ -+ if (copy_to_user -+ (req->ifr_data + sizeof(buf_len), Adapter->CmdBuf, Adapter->CmdSize)) { -+ PRINTM(ERROR, "Copy to user failed!\n"); -+ LEAVE(); -+ return -EFAULT; -+ } -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief uap power mode ioctl handler -+ * -+ * @param dev A pointer to net_device structure -+ * @param req A pointer to ifreq structure -+ * @return UAP_STATUS_SUCCESS --success, otherwise fail -+ */ -+static int -+uap_power_mode_ioctl(struct net_device *dev, struct ifreq *req) -+{ -+ ps_mgmt pm_cfg; -+ int ret = UAP_STATUS_SUCCESS; -+ uap_private *priv = (uap_private *) netdev_priv(dev); -+ uap_adapter *Adapter = priv->adapter; -+ struct sk_buff *skb = NULL; -+ HostCmd_DS_COMMAND *cmd; -+ u32 CmdSize; -+ u8 *tlv = NULL; -+ MrvlIEtypes_sleep_param_t *sleep_tlv = NULL; -+ MrvlIEtypes_inact_sleep_param_t *inact_tlv = NULL; -+ u16 tlv_buf_left = 0; -+ MrvlIEtypesHeader_t *tlvbuf = NULL; -+ u16 tlv_type = 0; -+ u16 tlv_len = 0; -+ -+ ENTER(); -+ -+ /* Sanity check */ -+ if (req->ifr_data == NULL) { -+ PRINTM(ERROR, "uap_power_mode_ioctl() corrupt data\n"); -+ LEAVE(); -+ return -EFAULT; -+ } -+ -+ memset(&pm_cfg, 0, sizeof(ps_mgmt)); -+ if (copy_from_user(&pm_cfg, req->ifr_data, sizeof(ps_mgmt))) { -+ PRINTM(ERROR, "Copy from user failed\n"); -+ LEAVE(); -+ return -EFAULT; -+ } -+ PRINTM(CMND, -+ "ioctl power: flag=0x%x ps_mode=%d ctrl_bitmap=%d min_sleep=%d max_sleep=%d " -+ "inact_to=%d min_awake=%d max_awake=%d\n", pm_cfg.flags, -+ (int) pm_cfg.ps_mode, (int) pm_cfg.sleep_param.ctrl_bitmap, -+ (int) pm_cfg.sleep_param.min_sleep, -+ (int) pm_cfg.sleep_param.max_sleep, -+ (int) pm_cfg.inact_param.inactivity_to, -+ (int) pm_cfg.inact_param.min_awake, -+ (int) pm_cfg.inact_param.max_awake); -+ -+ if (pm_cfg. -+ flags & ~(PS_FLAG_PS_MODE | PS_FLAG_SLEEP_PARAM | -+ PS_FLAG_INACT_SLEEP_PARAM)) { -+ PRINTM(ERROR, "Invalid parameter: flags = 0x%x\n", pm_cfg.flags); -+ ret = -EINVAL; -+ goto done; -+ } -+ if (pm_cfg.ps_mode > PS_MODE_INACTIVITY) { -+ PRINTM(ERROR, "Invalid parameter: ps_mode = %d\n", (int) pm_cfg.flags); -+ ret = -EINVAL; -+ goto done; -+ } -+ -+ skb = dev_alloc_skb(MRVDRV_SIZE_OF_CMD_BUFFER); -+ if (!skb) { -+ PRINTM(INFO, "No free skb\n"); -+ ret = -ENOMEM; -+ goto done; -+ } -+ -+ CmdSize = S_DS_GEN + sizeof(HostCmd_DS_POWER_MGMT_EXT); -+ -+ cmd = (HostCmd_DS_COMMAND *) (skb->data + INTF_HEADER_LEN); -+ cmd->Command = uap_cpu_to_le16(HOST_CMD_POWER_MGMT_EXT); -+ if (!pm_cfg.flags) { -+ cmd->params.pm_cfg.action = uap_cpu_to_le16(ACTION_GET); -+ } else { -+ cmd->params.pm_cfg.action = uap_cpu_to_le16(ACTION_SET); -+ cmd->params.pm_cfg.power_mode = uap_cpu_to_le16(pm_cfg.ps_mode); -+ tlv = (u8 *) & cmd->params.pm_cfg + sizeof(HostCmd_DS_POWER_MGMT_EXT); -+ -+ if ((pm_cfg.ps_mode) && (pm_cfg.flags & PS_FLAG_SLEEP_PARAM)) { -+ sleep_tlv = (MrvlIEtypes_sleep_param_t *) tlv; -+ sleep_tlv->header.Type = uap_cpu_to_le16(TLV_TYPE_AP_SLEEP_PARAM); -+ sleep_tlv->header.Len = -+ uap_cpu_to_le16(sizeof(MrvlIEtypes_sleep_param_t) - -+ sizeof(MrvlIEtypesHeader_t)); -+ sleep_tlv->ctrl_bitmap = -+ uap_cpu_to_le32(pm_cfg.sleep_param.ctrl_bitmap); -+ sleep_tlv->min_sleep = -+ uap_cpu_to_le32(pm_cfg.sleep_param.min_sleep); -+ sleep_tlv->max_sleep = -+ uap_cpu_to_le32(pm_cfg.sleep_param.max_sleep); -+ CmdSize += sizeof(MrvlIEtypes_sleep_param_t); -+ tlv += sizeof(MrvlIEtypes_sleep_param_t); -+ } -+ if ((pm_cfg.ps_mode == PS_MODE_INACTIVITY) && -+ (pm_cfg.flags & PS_FLAG_INACT_SLEEP_PARAM)) { -+ inact_tlv = (MrvlIEtypes_inact_sleep_param_t *) tlv; -+ inact_tlv->header.Type = -+ uap_cpu_to_le16(TLV_TYPE_AP_INACT_SLEEP_PARAM); -+ inact_tlv->header.Len = -+ uap_cpu_to_le16(sizeof(MrvlIEtypes_inact_sleep_param_t) - -+ sizeof(MrvlIEtypesHeader_t)); -+ inact_tlv->inactivity_to = -+ uap_cpu_to_le32(pm_cfg.inact_param.inactivity_to); -+ inact_tlv->min_awake = -+ uap_cpu_to_le32(pm_cfg.inact_param.min_awake); -+ inact_tlv->max_awake = -+ uap_cpu_to_le32(pm_cfg.inact_param.max_awake); -+ CmdSize += sizeof(MrvlIEtypes_inact_sleep_param_t); -+ tlv += sizeof(MrvlIEtypes_inact_sleep_param_t); -+ } -+ } -+ cmd->Size = uap_cpu_to_le16(CmdSize); -+ skb_put(skb, CmdSize + INTF_HEADER_LEN); -+ if (UAP_STATUS_SUCCESS != -+ uap_process_cmd(priv, skb, HostCmd_OPTION_WAITFORRSP)) { -+ PRINTM(ERROR, "Fail to process cmd POWER_MODE\n"); -+ ret = -EFAULT; -+ goto done; -+ } -+ if (!Adapter->CmdSize) { -+ PRINTM(ERROR, "Cmd Size is 0\n"); -+ ret = -EFAULT; -+ goto done; -+ } -+ cmd = (HostCmd_DS_COMMAND *) Adapter->CmdBuf; -+ cmd->Result = uap_le16_to_cpu(cmd->Result); -+ if (cmd->Result != UAP_STATUS_SUCCESS) { -+ PRINTM(ERROR, "HOST_CMD_APCMD_POWER_MODE fail=%x\n", cmd->Result); -+ ret = -EFAULT; -+ goto done; -+ } -+ if (pm_cfg.flags) { -+ Adapter->psmode = uap_le16_to_cpu(cmd->params.pm_cfg.power_mode); -+ } else { -+ pm_cfg.flags = PS_FLAG_PS_MODE; -+ pm_cfg.ps_mode = uap_le16_to_cpu(cmd->params.pm_cfg.power_mode); -+ tlv_buf_left = -+ cmd->Size - (sizeof(HostCmd_DS_POWER_MGMT_EXT) + S_DS_GEN); -+ tlvbuf = -+ (MrvlIEtypesHeader_t *) ((u8 *) & cmd->params.pm_cfg + -+ sizeof(HostCmd_DS_POWER_MGMT_EXT)); -+ while (tlv_buf_left >= sizeof(MrvlIEtypesHeader_t)) { -+ tlv_type = uap_le16_to_cpu(tlvbuf->Type); -+ tlv_len = uap_le16_to_cpu(tlvbuf->Len); -+ switch (tlv_type) { -+ case TLV_TYPE_AP_SLEEP_PARAM: -+ sleep_tlv = (MrvlIEtypes_sleep_param_t *) tlvbuf; -+ pm_cfg.flags |= PS_FLAG_SLEEP_PARAM; -+ pm_cfg.sleep_param.ctrl_bitmap = -+ uap_le32_to_cpu(sleep_tlv->ctrl_bitmap); -+ pm_cfg.sleep_param.min_sleep = -+ uap_le32_to_cpu(sleep_tlv->min_sleep); -+ pm_cfg.sleep_param.max_sleep = -+ uap_le32_to_cpu(sleep_tlv->max_sleep); -+ break; -+ case TLV_TYPE_AP_INACT_SLEEP_PARAM: -+ inact_tlv = (MrvlIEtypes_inact_sleep_param_t *) tlvbuf; -+ pm_cfg.flags |= PS_FLAG_INACT_SLEEP_PARAM; -+ pm_cfg.inact_param.inactivity_to = -+ uap_le32_to_cpu(inact_tlv->inactivity_to); -+ pm_cfg.inact_param.min_awake = -+ uap_le32_to_cpu(inact_tlv->min_awake); -+ pm_cfg.inact_param.max_awake = -+ uap_le32_to_cpu(inact_tlv->max_awake); -+ break; -+ } -+ tlv_buf_left -= tlv_len + sizeof(MrvlIEtypesHeader_t); -+ tlvbuf = -+ (MrvlIEtypesHeader_t *) ((u8 *) tlvbuf + tlv_len + -+ sizeof(MrvlIEtypesHeader_t)); -+ } -+ /* Copy to user */ -+ if (copy_to_user(req->ifr_data, &pm_cfg, sizeof(ps_mgmt))) { -+ PRINTM(ERROR, "Copy to user failed!\n"); -+ LEAVE(); -+ return -EFAULT; -+ } -+ } -+ done: -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function send bss_stop command to firmware -+ * -+ * @param priv A pointer to uap_private structure -+ * @return UAP_STATUS_SUCCESS on success, otherwise failure code -+ */ -+static int -+uap_bss_stop(uap_private * priv) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ u32 CmdSize; -+ HostCmd_DS_GEN *cmd; -+ uap_adapter *Adapter = priv->adapter; -+ struct sk_buff *skb; -+ ENTER(); -+ if (Adapter->HardwareStatus != HWReady) { -+ PRINTM(ERROR, "uap_bss_stop:Hardware is not ready!\n"); -+ ret = -EFAULT; -+ goto done; -+ } -+ skb = dev_alloc_skb(MRVDRV_SIZE_OF_CMD_BUFFER); -+ if (!skb) { -+ PRINTM(ERROR, "No free skb\n"); -+ ret = -ENOMEM; -+ goto done; -+ } -+ CmdSize = sizeof(HostCmd_DS_GEN); -+ cmd = (HostCmd_DS_GEN *) (skb->data + INTF_HEADER_LEN); -+ cmd->Command = uap_cpu_to_le16(HOST_CMD_APCMD_BSS_STOP); -+ cmd->Size = uap_cpu_to_le16(CmdSize); -+ skb_put(skb, CmdSize + INTF_HEADER_LEN); -+ PRINTM(CMND, "APCMD_BSS_STOP\n"); -+ if (UAP_STATUS_SUCCESS != -+ uap_process_cmd(priv, skb, HostCmd_OPTION_WAITFORRSP_TIMEOUT)) { -+ PRINTM(ERROR, "Fail to process cmd BSS_STOP\n"); -+ ret = -EFAULT; -+ goto done; -+ } -+ done: -+ LEAVE(); -+ return ret; -+} -+ -+/******************************************************** -+ Global Functions -+********************************************************/ -+/** -+ * @brief This function send soft_reset command to firmware -+ * -+ * @param priv A pointer to uap_private structure -+ * @return UAP_STATUS_SUCCESS on success, otherwise failure code -+ */ -+int -+uap_soft_reset(uap_private * priv) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ u32 CmdSize; -+ HostCmd_DS_GEN *cmd; -+ uap_adapter *Adapter = priv->adapter; -+ struct sk_buff *skb; -+ ENTER(); -+ ret = uap_bss_stop(priv); -+ if (ret != UAP_STATUS_SUCCESS) -+ goto done; -+ skb = dev_alloc_skb(MRVDRV_SIZE_OF_CMD_BUFFER); -+ if (!skb) { -+ PRINTM(ERROR, "No free skb\n"); -+ ret = -ENOMEM; -+ goto done; -+ } -+ CmdSize = sizeof(HostCmd_DS_GEN); -+ cmd = (HostCmd_DS_GEN *) (skb->data + INTF_HEADER_LEN); -+ cmd->Command = uap_cpu_to_le16(HOST_CMD_APCMD_SOFT_RESET); -+ cmd->Size = uap_cpu_to_le16(CmdSize); -+ skb_put(skb, CmdSize + INTF_HEADER_LEN); -+ PRINTM(CMND, "APCMD_SOFT_RESET\n"); -+ if (UAP_STATUS_SUCCESS != -+ uap_process_cmd(priv, skb, HostCmd_OPTION_WAITFORSEND)) { -+ PRINTM(ERROR, "Fail to process cmd SOFT_RESET\n"); -+ ret = -EFAULT; -+ goto done; -+ } -+ Adapter->SurpriseRemoved = TRUE; -+ /* delay to allow hardware complete reset */ -+ os_sched_timeout(5); -+ if (priv->MediaConnected == TRUE) { -+ os_stop_queue(priv); -+ os_carrier_off(priv); -+ priv->MediaConnected = FALSE; -+ } -+ Adapter->CmdSize = 0; -+ Adapter->CmdWaitQWoken = TRUE; -+ wake_up_interruptible(&Adapter->cmdwait_q); -+ skb_queue_purge(&priv->adapter->tx_queue); -+ skb_queue_purge(&priv->adapter->cmd_queue); -+ done: -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function processes received packet and forwards it -+ * to kernel/upper layer -+ * -+ * @param priv A pointer to uap_private -+ * @param skb A pointer to skb which includes the received packet -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+int -+uap_process_rx_packet(uap_private * priv, struct sk_buff *skb) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ RxPD *pRxPD; -+ ENTER(); -+ priv->adapter->ps_state = PS_STATE_AWAKE; -+ pRxPD = (RxPD *) skb->data; -+ endian_convert_RxPD(pRxPD); -+ DBG_HEXDUMP(DAT_D, "Rx", skb->data, MIN(skb->len, DATA_DUMP_LEN)); -+ skb_pull(skb, pRxPD->RxPktOffset); -+ priv->stats.rx_packets++; -+ priv->stats.rx_bytes += skb->len; -+ os_upload_rx_packet(priv, skb); -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function opens the network device -+ * -+ * @param dev A pointer to net_device structure -+ * @return UAP_STATUS_SUCCESS -+ */ -+static int -+uap_open(struct net_device *dev) -+{ -+ uap_private *priv = (uap_private *) (uap_private *) netdev_priv(dev); -+ uap_adapter *Adapter = priv->adapter; -+ int i = 0; -+ -+ ENTER(); -+ -+ /* On some systems the device open handler will be called before HW ready. */ -+ /* Use the following flag check and wait function to work around the issue. */ -+ while ((Adapter->HardwareStatus != HWReady) && -+ (i < MAX_WAIT_DEVICE_READY_COUNT)) { -+ i++; -+ os_sched_timeout(100); -+ } -+ if (i >= MAX_WAIT_DEVICE_READY_COUNT) { -+ PRINTM(FATAL, "HW not ready, uap_open() return failure\n"); -+ LEAVE(); -+ return UAP_STATUS_FAILURE; -+ } -+ -+ if (MODULE_GET == 0) -+ return UAP_STATUS_FAILURE; -+ -+ priv->open = TRUE; -+ if (priv->MediaConnected == TRUE) { -+ os_carrier_on(priv); -+ os_start_queue(priv); -+ } else { -+ os_stop_queue(priv); -+ os_carrier_off(priv); -+ } -+ LEAVE(); -+ return UAP_STATUS_SUCCESS; -+} -+ -+/** -+ * @brief This function closes the network device -+ * -+ * @param dev A pointer to net_device structure -+ * @return UAP_STATUS_SUCCESS -+ */ -+static int -+uap_close(struct net_device *dev) -+{ -+ uap_private *priv = (uap_private *) netdev_priv(dev); -+ -+ ENTER(); -+ skb_queue_purge(&priv->adapter->tx_queue); -+ os_stop_queue(priv); -+ os_carrier_off(priv); -+ -+ MODULE_PUT; -+ priv->open = FALSE; -+ LEAVE(); -+ return UAP_STATUS_SUCCESS; -+} -+ -+/** -+ * @brief This function returns the network statistics -+ * -+ * @param dev A pointer to uap_private structure -+ * @return A pointer to net_device_stats structure -+ */ -+static struct net_device_stats * -+uap_get_stats(struct net_device *dev) -+{ -+ uap_private *priv = (uap_private *) netdev_priv(dev); -+ -+ return &priv->stats; -+} -+ -+/** -+ * @brief This function sets the MAC address to firmware. -+ * -+ * @param dev A pointer to uap_private structure -+ * @param addr MAC address to set -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+static int -+uap_set_mac_address(struct net_device *dev, void *addr) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ uap_private *priv = (uap_private *) netdev_priv(dev); -+ struct sockaddr *pHwAddr = (struct sockaddr *) addr; -+ u32 CmdSize; -+ HostCmd_DS_COMMAND *cmd; -+ MrvlIEtypes_MacAddr_t *pMacAddrTlv; -+ uap_adapter *Adapter = priv->adapter; -+ struct sk_buff *skb; -+ -+ ENTER(); -+ -+ /* Dump MAC address */ -+ DBG_HEXDUMP(CMD_D, "Original MAC addr", dev->dev_addr, ETH_ALEN); -+ DBG_HEXDUMP(CMD_D, "New MAC addr", pHwAddr->sa_data, ETH_ALEN); -+ if (priv->open && (priv->MediaConnected == TRUE)) { -+ os_carrier_on(priv); -+ os_start_queue(priv); -+ } -+ skb = dev_alloc_skb(MRVDRV_SIZE_OF_CMD_BUFFER); -+ if (!skb) { -+ PRINTM(ERROR, "No free skb\n"); -+ LEAVE(); -+ return -ENOMEM; -+ } -+ CmdSize = -+ S_DS_GEN + sizeof(HostCmd_SYS_CONFIG) + sizeof(MrvlIEtypes_MacAddr_t); -+ cmd = (HostCmd_DS_COMMAND *) (skb->data + INTF_HEADER_LEN); -+ cmd->Command = uap_cpu_to_le16(HOST_CMD_APCMD_SYS_CONFIGURE); -+ cmd->Size = uap_cpu_to_le16(CmdSize); -+ cmd->params.sys_config.Action = uap_cpu_to_le16(ACTION_SET); -+ pMacAddrTlv = -+ (MrvlIEtypes_MacAddr_t *) ((u8 *) cmd + S_DS_GEN + -+ sizeof(HostCmd_SYS_CONFIG)); -+ pMacAddrTlv->Header.Type = uap_cpu_to_le16(MRVL_AP_MAC_ADDRESS_TLV_ID); -+ pMacAddrTlv->Header.Len = uap_cpu_to_le16(ETH_ALEN); -+ memcpy(pMacAddrTlv->ApMacAddr, pHwAddr->sa_data, ETH_ALEN); -+ skb_put(skb, CmdSize + INTF_HEADER_LEN); -+ PRINTM(CMND, "set_mac_address\n"); -+ if (UAP_STATUS_SUCCESS != -+ uap_process_cmd(priv, skb, HostCmd_OPTION_WAITFORRSP_TIMEOUT)) { -+ PRINTM(ERROR, "Fail to set mac address\n"); -+ LEAVE(); -+ return -EFAULT; -+ } -+ if (!Adapter->CmdSize) { -+ PRINTM(ERROR, "Cmd Size is 0\n"); -+ LEAVE(); -+ return -EFAULT; -+ } -+ cmd = (HostCmd_DS_COMMAND *) Adapter->CmdBuf; -+ cmd->Result = uap_cpu_to_le16(cmd->Result); -+ if (cmd->Result != UAP_STATUS_SUCCESS) { -+ PRINTM(ERROR, "set mac addrress fail,cmd result=%x\n", cmd->Result); -+ ret = -EFAULT; -+ } else -+ memcpy(dev->dev_addr, pHwAddr->sa_data, ETH_ALEN); -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function handles the timeout of packet -+ * transmission -+ * -+ * @param dev A pointer to net_device structure -+ * @return n/a -+ */ -+static void -+uap_tx_timeout(struct net_device *dev) -+{ -+ uap_private *priv = (uap_private *) netdev_priv(dev); -+ -+ ENTER(); -+ -+ PRINTM(DATA, "Tx timeout\n"); -+ UpdateTransStart(dev); -+ priv->num_tx_timeout++; -+ priv->adapter->IntCounter++; -+ wake_up_interruptible(&priv->MainThread.waitQ); -+ -+ LEAVE(); -+} -+ -+/** -+ * @brief This function handles packet transmission -+ * -+ * @param skb A pointer to sk_buff structure -+ * @param dev A pointer to net_device structure -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+static int -+uap_hard_start_xmit(struct sk_buff *skb, struct net_device *dev) -+{ -+ uap_private *priv = (uap_private *) netdev_priv(dev); -+ int ret = UAP_STATUS_SUCCESS; -+ -+ ENTER(); -+ PRINTM(DATA, "Data <= kernel\n"); -+ DBG_HEXDUMP(DAT_D, "Tx", skb->data, MIN(skb->len, DATA_DUMP_LEN)); -+ /* skb sanity check */ -+ if (!skb->len || (skb->len > MRVDRV_MAXIMUM_ETH_PACKET_SIZE)) { -+ PRINTM(ERROR, "Tx Error: Bad skb length %d : %d\n", skb->len, -+ MRVDRV_MAXIMUM_ETH_PACKET_SIZE); -+ priv->stats.tx_dropped++; -+ kfree(skb); -+ goto done; -+ } -+ skb_queue_tail(&priv->adapter->tx_queue, skb); -+ wake_up_interruptible(&priv->MainThread.waitQ); -+ if (skb_queue_len(&priv->adapter->tx_queue) > TX_HIGH_WATERMARK) { -+ UpdateTransStart(dev); -+ os_stop_queue(priv); -+ } -+ done: -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief ioctl function - entry point -+ * -+ * @param dev A pointer to net_device structure -+ * @param req A pointer to ifreq structure -+ * @param cmd command -+ * @return UAP_STATUS_SUCCESS--success, otherwise fail -+ */ -+static int -+uap_do_ioctl(struct net_device *dev, struct ifreq *req, int cmd) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ -+ ENTER(); -+ -+ PRINTM(CMND, "uap_do_ioctl: ioctl cmd = 0x%x\n", cmd); -+ -+ switch (cmd) { -+ case UAPHOSTCMD: -+ ret = uap_hostcmd_ioctl(dev, req); -+ break; -+ case UAP_POWER_MODE: -+ ret = uap_power_mode_ioctl(dev, req); -+ break; -+ default: -+ ret = -EINVAL; -+ break; -+ } -+ -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function handles events generated by firmware -+ * -+ * @param priv A pointer to uap_private structure -+ * @param payload A pointer to payload buffer -+ * @param len Length of the payload -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+int -+uap_process_event(uap_private * priv, u8 * payload, uint len) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ uap_adapter *Adapter = priv->adapter; -+ struct sk_buff *skb = NULL; -+ struct nlmsghdr *nlh = NULL; -+ struct sock *sk = Adapter->nl_sk; -+ AP_Event *pEvent; -+ -+ ENTER(); -+ Adapter->ps_state = PS_STATE_AWAKE; -+ if (len > NL_MAX_PAYLOAD) { -+ PRINTM(ERROR, "event size is too big!!! len=%d\n", len); -+ ret = UAP_STATUS_FAILURE; -+ goto done; -+ } -+ pEvent = (AP_Event *) payload; -+ PRINTM(CMND, "Event: %d\n", pEvent->EventId); -+ switch (pEvent->EventId) { -+ case MICRO_AP_EV_ID_BSS_START: -+ memcpy(priv->uap_dev.netdev->dev_addr, pEvent->MacAddr, ETH_ALEN); -+ DBG_HEXDUMP(CMD_D, "BSS MAC addr", priv->uap_dev.netdev->dev_addr, -+ ETH_ALEN); -+ break; -+ case MICRO_AP_EV_BSS_ACTIVE: -+ // carrier on -+ priv->MediaConnected = TRUE; -+ os_carrier_on(priv); -+ os_start_queue(priv); -+ break; -+ case MICRO_AP_EV_BSS_IDLE: -+ os_stop_queue(priv); -+ os_carrier_off(priv); -+ priv->MediaConnected = FALSE; -+ break; -+ case EVENT_PS_AWAKE: -+ PRINTM(CMND, "UAP: PS_AWAKE\n"); -+ Adapter->ps_state = PS_STATE_AWAKE; -+ Adapter->WakeupTries = 0; -+ break; -+ case EVENT_PS_SLEEP: -+ PRINTM(CMND, "UAP: PS_SLEEP\n"); -+ Adapter->ps_state = PS_STATE_PRE_SLEEP; -+ break; -+ default: -+ break; -+ } -+ if ((pEvent->EventId == EVENT_PS_AWAKE) || -+ (pEvent->EventId == EVENT_PS_SLEEP)) -+ goto done; -+ if (sk) { -+ /* Allocate skb */ -+ if (!(skb = alloc_skb(NLMSG_SPACE(NL_MAX_PAYLOAD), GFP_ATOMIC))) { -+ PRINTM(ERROR, "Could not allocate skb for netlink.\n"); -+ ret = UAP_STATUS_FAILURE; -+ goto done; -+ } -+ nlh = (struct nlmsghdr *) skb->data; -+ nlh->nlmsg_len = NLMSG_SPACE(len); -+ -+ /* From kernel */ -+ nlh->nlmsg_pid = 0; -+ nlh->nlmsg_flags = 0; -+ -+ /* Data */ -+ skb_put(skb, nlh->nlmsg_len); -+ memcpy(NLMSG_DATA(nlh), payload, len); -+ -+ /* From Kernel */ -+ NETLINK_CB(skb).portid = 0; -+ -+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,20) -+ /* Multicast message */ -+ NETLINK_CB(skb).dst_pid = 0; -+#endif -+ -+ /* Multicast group number */ -+ NETLINK_CB(skb).dst_group = NL_MULTICAST_GROUP; -+ -+ /* Send message */ -+ netlink_broadcast(sk, skb, 0, NL_MULTICAST_GROUP, GFP_KERNEL); -+ -+ ret = UAP_STATUS_SUCCESS; -+ } else { -+ PRINTM(ERROR, "Could not send event through NETLINK. Link down.\n"); -+ ret = UAP_STATUS_FAILURE; -+ } -+ done: -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function handles the interrupt. it will change PS -+ * state if applicable. it will wake up main_thread to handle -+ * the interrupt event as well. -+ * -+ * @param priv A pointer to uap_private structure -+ * @return n/a -+ */ -+void -+uap_interrupt(uap_private * priv) -+{ -+ ENTER(); -+ priv->adapter->IntCounter++; -+ priv->adapter->WakeupTries = 0; -+ PRINTM(INFO, "*\n"); -+ wake_up_interruptible(&priv->MainThread.waitQ); -+ -+ LEAVE(); -+ -+} -+ -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,29) -+/** Network device handlers */ -+static const struct net_device_ops uap_netdev_ops = { -+ .ndo_open = uap_open, -+ .ndo_start_xmit = uap_hard_start_xmit, -+ .ndo_stop = uap_close, -+ .ndo_do_ioctl = uap_do_ioctl, -+ .ndo_set_mac_address = uap_set_mac_address, -+ .ndo_tx_timeout = uap_tx_timeout, -+ .ndo_get_stats = uap_get_stats, -+}; -+#endif -+ -+/** -+ * @brief This function adds the card. it will probe the -+ * card, allocate the uap_priv and initialize the device. -+ * -+ * @param card A pointer to card -+ * @return A pointer to uap_private structure -+ */ -+uap_private * -+uap_add_card(void *card) -+{ -+ struct net_device *dev = NULL; -+ uap_private *priv = NULL; -+ -+ ENTER(); -+ -+ if (OS_ACQ_SEMAPHORE_BLOCK(&AddRemoveCardSem)) -+ goto exit_sem_err; -+ -+ /* Allocate an Ethernet device */ -+ if (!(dev = alloc_etherdev(sizeof(uap_private)))) { -+ PRINTM(FATAL, "Init ethernet device failed!\n"); -+ goto error; -+ } -+ priv = (uap_private *) netdev_priv(dev); -+ -+ /* Allocate name */ -+ if (dev_alloc_name(dev, "uap%d") < 0) { -+ PRINTM(ERROR, "Could not allocate device name!\n"); -+ goto error; -+ } -+ -+ /* Allocate buffer for uap_adapter */ -+ if (!(priv->adapter = kmalloc(sizeof(uap_adapter), GFP_KERNEL))) { -+ PRINTM(FATAL, "Allocate buffer for uap_adapter failed!\n"); -+ goto error; -+ } -+ memset(priv->adapter, 0, sizeof(uap_adapter)); -+ -+ priv->uap_dev.netdev = dev; -+ priv->uap_dev.card = card; -+ priv->MediaConnected = FALSE; -+ uappriv = priv; -+ ((struct sdio_mmc_card *) card)->priv = priv; -+ -+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,24) -+ SET_MODULE_OWNER(dev); -+#endif -+ -+ /* Setup the OS Interface to our functions */ -+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,29) -+ dev->open = uap_open; -+ dev->stop = uap_close; -+ dev->hard_start_xmit = uap_hard_start_xmit; -+ dev->tx_timeout = uap_tx_timeout; -+ dev->get_stats = uap_get_stats; -+ dev->do_ioctl = uap_do_ioctl; -+ dev->set_mac_address = uap_set_mac_address; -+ dev->set_multicast_list = uap_set_multicast_list; -+#else -+ dev->netdev_ops = &uap_netdev_ops; -+#endif -+ dev->watchdog_timeo = MRVDRV_DEFAULT_WATCHDOG_TIMEOUT; -+ dev->hard_header_len += sizeof(TxPD) + INTF_HEADER_LEN; -+ dev->hard_header_len += HEADER_ALIGNMENT; -+#define NETIF_F_DYNALLOC 16 -+ dev->features |= NETIF_F_DYNALLOC; -+ dev->flags |= IFF_BROADCAST | IFF_MULTICAST; -+ -+ /* Init SW */ -+ if (uap_init_sw(priv)) { -+ PRINTM(FATAL, "Software Init Failed\n"); -+ goto error; -+ } -+ -+ PRINTM(INFO, "Starting kthread...\n"); -+ priv->MainThread.priv = priv; -+ spin_lock_init(&priv->driver_lock); -+ uap_create_thread(uap_service_main_thread, &priv->MainThread, -+ "uap_main_service"); -+ while (priv->MainThread.pid == 0) { -+ os_sched_timeout(2); -+ } -+ -+ /* Register the device */ -+ if (sbi_register_dev(priv) < 0) { -+ PRINTM(FATAL, "Failed to register uap device!\n"); -+ goto err_registerdev; -+ } -+#ifdef FW_DNLD_NEEDED -+ SET_NETDEV_DEV(dev, priv->hotplug_device); -+#endif -+ -+ /* Init FW and HW */ -+ if (uap_init_fw(priv)) { -+ PRINTM(FATAL, "Firmware Init Failed\n"); -+ goto err_init_fw; -+ } -+ -+ priv->uap_dev.cmd_sent = FALSE; -+ priv->uap_dev.data_sent = FALSE; -+ -+ /* Get mac address from firmware */ -+ if (uap_get_mac_address(priv)) { -+ PRINTM(FATAL, "Fail to get mac address\n"); -+ goto err_init_fw; -+ } -+ /* Register network device */ -+ if (register_netdev(dev)) { -+ printk(KERN_ERR "Cannot register network device!\n"); -+ goto err_init_fw; -+ } -+#ifdef CONFIG_PROC_FS -+ uap_proc_entry(priv, dev); -+ uap_debug_entry(priv, dev); -+#endif /* CPNFIG_PROC_FS */ -+ OS_REL_SEMAPHORE(&AddRemoveCardSem); -+ -+ LEAVE(); -+ return priv; -+ err_init_fw: -+ sbi_unregister_dev(priv); -+ err_registerdev: -+ ((struct sdio_mmc_card *) card)->priv = NULL; -+ /* Stop the thread servicing the interrupts */ -+ priv->adapter->SurpriseRemoved = TRUE; -+ wake_up_interruptible(&priv->MainThread.waitQ); -+ while (priv->MainThread.pid) { -+ os_sched_timeout(1); -+ } -+ error: -+ if (dev) { -+ if (dev->reg_state == NETREG_REGISTERED) -+ unregister_netdev(dev); -+ if (priv->adapter) -+ uap_free_adapter(priv); -+ free_netdev(dev); -+ uappriv = NULL; -+ } -+ OS_REL_SEMAPHORE(&AddRemoveCardSem); -+ exit_sem_err: -+ LEAVE(); -+ return NULL; -+} -+ -+/** -+ * @brief This function removes the card. -+ * -+ * @param card A pointer to card -+ * @return UAP_STATUS_SUCCESS -+ */ -+int -+uap_remove_card(void *card) -+{ -+ uap_private *priv = uappriv; -+ uap_adapter *Adapter; -+ struct net_device *dev; -+ -+ ENTER(); -+ -+ if (OS_ACQ_SEMAPHORE_BLOCK(&AddRemoveCardSem)) -+ goto exit_sem_err; -+ -+ if (!priv || !(Adapter = priv->adapter)) { -+ goto exit_remove; -+ } -+ Adapter->SurpriseRemoved = TRUE; -+ if (Adapter->cmd_pending == TRUE) { -+ /* Wake up cmd Q */ -+ Adapter->CmdWaitQWoken = TRUE; -+ wake_up_interruptible(&Adapter->cmdwait_q); -+ } -+ dev = priv->uap_dev.netdev; -+ if (priv->MediaConnected == TRUE) { -+ os_stop_queue(priv); -+ os_carrier_off(priv); -+ priv->MediaConnected = FALSE; -+ } -+ Adapter->CmdSize = 0; -+ Adapter->CmdWaitQWoken = TRUE; -+ wake_up_interruptible(&Adapter->cmdwait_q); -+ skb_queue_purge(&priv->adapter->tx_queue); -+ skb_queue_purge(&priv->adapter->cmd_queue); -+ -+ /* Disable interrupts on the card */ -+ sbi_disable_host_int(priv); -+ PRINTM(INFO, "netdev_finish_unregister: %s%s.\n", dev->name, -+ (dev->features & NETIF_F_DYNALLOC) ? "" : ", old style"); -+ unregister_netdev(dev); -+ PRINTM(INFO, "Unregister finish\n"); -+ wake_up_interruptible(&priv->MainThread.waitQ); -+ while (priv->MainThread.pid) { -+ os_sched_timeout(1); -+ } -+ -+ if ((Adapter->nl_sk) && ((Adapter->nl_sk)->sk_socket)) { -+ sock_release((Adapter->nl_sk)->sk_socket); -+ Adapter->nl_sk = NULL; -+ } -+#ifdef CONFIG_PROC_FS -+ uap_debug_remove(priv); -+ uap_proc_remove(priv); -+#endif -+ sbi_unregister_dev(priv); -+ PRINTM(INFO, "Free Adapter\n"); -+ uap_free_adapter(priv); -+ priv->uap_dev.netdev = NULL; -+ free_netdev(dev); -+ uappriv = NULL; -+ -+ exit_remove: -+ OS_REL_SEMAPHORE(&AddRemoveCardSem); -+ exit_sem_err: -+ LEAVE(); -+ return UAP_STATUS_SUCCESS; -+} -+ -+/** -+ * @brief This function initializes module. -+ * -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+static int __init -+uap_init_module(void) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ ENTER(); -+ -+ OS_INIT_SEMAPHORE(&AddRemoveCardSem); -+ ret = sbi_register(); -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function cleans module -+ * -+ * @return n/a -+ */ -+static void __exit -+uap_cleanup_module(void) -+{ -+ ENTER(); -+ -+ if (OS_ACQ_SEMAPHORE_BLOCK(&AddRemoveCardSem)) -+ goto exit_sem_err; -+ -+ if ((uappriv) && (uappriv->adapter)) { -+ uap_func_shutdown(uappriv); -+ } -+ OS_REL_SEMAPHORE(&AddRemoveCardSem); -+ exit_sem_err: -+ sbi_unregister(); -+ LEAVE(); -+} -+ -+module_init(uap_init_module); -+module_exit(uap_cleanup_module); -+module_param(helper_name, charp, 0); -+MODULE_PARM_DESC(helper_name, "Helper name"); -+module_param(fw_name, charp, 0); -+MODULE_PARM_DESC(fw_name, "Firmware name"); -+ -+MODULE_DESCRIPTION("M-UAP Driver"); -+MODULE_AUTHOR("Marvell International Ltd."); -+MODULE_VERSION(DRIVER_VERSION); -+MODULE_LICENSE("GPL"); -diff --git a/drivers/net/wireless/libertas_uap/uap_proc.c b/drivers/net/wireless/libertas_uap/uap_proc.c -new file mode 100644 -index 0000000..d673f56 ---- /dev/null -+++ b/drivers/net/wireless/libertas_uap/uap_proc.c -@@ -0,0 +1,258 @@ -+/** @file uap_proc.c -+ * @brief This file contains functions for proc file. -+ * -+ * Copyright (C) 2008-2009, Marvell International Ltd. -+ * -+ * This software file (the "File") is distributed by Marvell International -+ * Ltd. under the terms of the GNU General Public License Version 2, June 1991 -+ * (the "License"). You may use, redistribute and/or modify this File in -+ * accordance with the terms and conditions of the License, a copy of which -+ * is available along with the File in the gpl.txt file or by writing to -+ * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ * 02111-1307 or on the worldwide web at http://www.gnu.org/licenses/gpl.txt. -+ * -+ * THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE -+ * IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE -+ * ARE EXPRESSLY DISCLAIMED. The License provides additional details about -+ * this warranty disclaimer. -+ * -+ */ -+#ifdef CONFIG_PROC_FS -+#include <linux/proc_fs.h> -+#include <linux/seq_file.h> -+#include "uap_headers.h" -+ -+/** /proc directory root */ -+#if LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,26) -+#define PROC_DIR NULL -+#elif LINUX_VERSION_CODE >= KERNEL_VERSION(2,6,24) -+#define PROC_DIR &proc_root -+#else -+#define PROC_DIR proc_net -+#endif -+ -+/******************************************************** -+ Local Variables -+********************************************************/ -+ -+/******************************************************** -+ Global Variables -+********************************************************/ -+ -+/******************************************************** -+ Local Functions -+********************************************************/ -+ -+static int uap_info_proc_show(struct seq_file *s, void *data) { -+ int i; -+ struct net_device *netdev = (struct net_device*)s->private; -+ struct netdev_hw_addr *ha; -+ uap_private *priv = (uap_private *) netdev_priv(netdev); -+ -+ seq_printf(s, "driver_name = " ""uap"\n"); -+ seq_printf(s, "driver_version = %s-(FP%s)", DRIVER_VERSION, FPNUM); -+ seq_printf(s, "\nInterfaceName="%s"\n", netdev->name); -+ -+ seq_printf(s, "State="%s"\n", -+ ((priv->MediaConnected == -+ FALSE) ? "Disconnected" : "Connected")); -+ seq_printf(s, "MACAddress="%02x:%02x:%02x:%02x:%02x:%02x"\n", -+ netdev->dev_addr[0], netdev->dev_addr[1], netdev->dev_addr[2], -+ netdev->dev_addr[3], netdev->dev_addr[4], netdev->dev_addr[5]); -+ i = 0; -+ netdev_for_each_mc_addr(ha, netdev) { -+ ++i; -+ } -+ seq_printf(s, "MCCount="%d"\n", i); -+ -+ /* -+ * Put out the multicast list -+ */ -+ i = 0; -+ netdev_for_each_mc_addr(ha, netdev) { -+ seq_printf(s, -+ "MCAddr[%d]="%02x:%02x:%02x:%02x:%02x:%02x"\n", -+ i++, -+ ha->addr[0], ha->addr[1], -+ ha->addr[2], ha->addr[3], -+ ha->addr[4], ha->addr[5]); -+ } -+ -+ seq_printf(s, "num_tx_bytes = %lu\n", priv->stats.tx_bytes); -+ seq_printf(s, "num_rx_bytes = %lu\n", priv->stats.rx_bytes); -+ seq_printf(s, "num_tx_pkts = %lu\n", priv->stats.tx_packets); -+ seq_printf(s, "num_rx_pkts = %lu\n", priv->stats.rx_packets); -+ seq_printf(s, "num_tx_pkts_dropped = %lu\n", priv->stats.tx_dropped); -+ seq_printf(s, "num_rx_pkts_dropped = %lu\n", priv->stats.rx_dropped); -+ seq_printf(s, "num_tx_pkts_err = %lu\n", priv->stats.tx_errors); -+ seq_printf(s, "num_rx_pkts_err = %lu\n", priv->stats.rx_errors); -+ seq_printf(s, "num_tx_timeout = %u\n", priv->num_tx_timeout); -+ seq_printf(s, "carrier %s\n", -+ ((netif_carrier_ok(priv->uap_dev.netdev)) ? "on" : "off")); -+ seq_printf(s, "tx queue %s\n", -+ ((netif_queue_stopped(priv->uap_dev.netdev)) ? "stopped" : -+ "started")); -+ -+ return 0; -+} -+ -+static int uap_info_proc_open(struct inode *inode, struct file *file) { -+ return single_open(file, uap_info_proc_show, PDE_DATA(inode)); -+} -+ -+static int uap_hwstatus_proc_show(struct seq_file *s, void *data) { -+ struct net_device *netdev = (struct net_device*)s->private; -+ uap_private *priv = (uap_private *) netdev_priv(netdev); -+ -+ MODULE_GET; -+ seq_printf(s, "%d\n", priv->adapter->HardwareStatus); -+ MODULE_PUT; -+ -+ return 0; -+} -+ -+static int uap_hwstatus_proc_open(struct inode *inode, struct file *file) { -+ return single_open(file, uap_hwstatus_proc_show, PDE_DATA(inode)); -+} -+ -+static ssize_t uap_hwstatus_proc_write(struct file *file, const char __user *buffer, size_t count, loff_t *data) { -+ struct net_device *netdev = (struct net_device *)PDE_DATA(file_inode(file)); -+ uap_private *priv = (uap_private *) netdev_priv(netdev); -+ -+ int hwstatus; -+ char value[10]; -+ -+ if (count > sizeof(value)) -+ return count; -+ -+ if (copy_from_user(&value, buffer, count)) -+ return -EFAULT; -+ -+ hwstatus = string_to_number(value); -+ switch (hwstatus) { -+ case HWReset: -+ PRINTM(MSG, "reset hw\n"); -+ uap_soft_reset(priv); -+ priv->adapter->HardwareStatus = HWReset; -+ break; -+ default: -+ break; -+ } -+ -+ MODULE_PUT; -+ return count; -+} -+ -+static const struct file_operations uap_info_proc_fops = { -+ .owner = THIS_MODULE, -+ .open = uap_info_proc_open, -+ .read = seq_read, -+ .llseek = seq_lseek, -+ .release = single_release, -+}; -+ -+static const struct file_operations uap_hwstatus_proc_fops = { -+ .owner = THIS_MODULE, -+ .open = uap_hwstatus_proc_open, -+ .read = seq_read, -+ .llseek = seq_lseek, -+ .release = single_release, -+ .write = uap_hwstatus_proc_write, -+}; -+ -+/******************************************************** -+ Global Functions -+********************************************************/ -+/** -+ * @brief create uap proc file -+ * -+ * @param priv pointer uap_private -+ * @param dev pointer net_device -+ * @return N/A -+ */ -+void -+uap_proc_entry(uap_private * priv, struct net_device *dev) -+{ -+ PRINTM(INFO, "Creating Proc Interface\n"); -+ /* Check if uap directory already exists */ -+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,26) -+ struct proc_dir_entry *r = PROC_DIR; -+ -+ for (r = r->subdir; r; r = r->next) { -+ if (r->namelen && !strcmp("uap", r->name)) { -+ /* Directory exists */ -+ PRINTM(WARN, "proc directory already exists!\n"); -+ priv->proc_uap = r; -+ break; -+ } -+ } -+#endif -+ if (!priv->proc_uap) { -+ priv->proc_uap = proc_mkdir("uap", PROC_DIR); -+ if (!priv->proc_uap) -+ return; -+ } -+ priv->proc_entry = proc_mkdir(dev->name, priv->proc_uap); -+ -+ if (priv->proc_entry) { -+ proc_create_data("info", 0644, priv->proc_entry, &uap_info_proc_fops, dev); -+ proc_create_data("hwinfo", 0644, priv->proc_entry, &uap_hwstatus_proc_fops, dev); -+ } -+} -+ -+/** -+ * @brief remove proc file -+ * -+ * @param priv pointer uap_private -+ * @return N/A -+ */ -+void -+uap_proc_remove(uap_private * priv) -+{ -+ if (priv->proc_uap) { -+ if (priv->proc_entry) { -+ remove_proc_entry("info", priv->proc_entry); -+ remove_proc_entry("hwstatus", priv->proc_entry); -+ } -+ remove_proc_entry(priv->uap_dev.netdev->name, priv->proc_uap); -+ } -+} -+ -+/** -+ * @brief convert string to number -+ * -+ * @param s pointer to numbered string -+ * @return converted number from string s -+ */ -+int -+string_to_number(char *s) -+{ -+ int r = 0; -+ int base = 0; -+ int pn = 1; -+ -+ if (strncmp(s, "-", 1) == 0) { -+ pn = -1; -+ s++; -+ } -+ if ((strncmp(s, "0x", 2) == 0) || (strncmp(s, "0X", 2) == 0)) { -+ base = 16; -+ s += 2; -+ } else -+ base = 10; -+ -+ for (s = s; *s != 0; s++) { -+ if ((*s >= '0') && (*s <= '9')) -+ r = (r * base) + (*s - '0'); -+ else if ((*s >= 'A') && (*s <= 'F')) -+ r = (r * base) + (*s - 'A' + 10); -+ else if ((*s >= 'a') && (*s <= 'f')) -+ r = (r * base) + (*s - 'a' + 10); -+ else -+ break; -+ } -+ -+ return (r * pn); -+} -+ -+#endif -diff --git a/drivers/net/wireless/libertas_uap/uap_sdio_mmc.c b/drivers/net/wireless/libertas_uap/uap_sdio_mmc.c -new file mode 100644 -index 0000000..86f55b5 ---- /dev/null -+++ b/drivers/net/wireless/libertas_uap/uap_sdio_mmc.c -@@ -0,0 +1,1428 @@ -+/** @file uap_sdio_mmc.c -+ * @brief This file contains SDIO IF (interface) module -+ * related functions. -+ * -+ * Copyright (C) 2007-2009, Marvell International Ltd. -+ * -+ * This software file (the "File") is distributed by Marvell International -+ * Ltd. under the terms of the GNU General Public License Version 2, June 1991 -+ * (the "License"). You may use, redistribute and/or modify this File in -+ * accordance with the terms and conditions of the License, a copy of which -+ * is available along with the File in the gpl.txt file or by writing to -+ * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ * 02111-1307 or on the worldwide web at http://www.gnu.org/licenses/gpl.txt. -+ * -+ * THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE -+ * IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE -+ * ARE EXPRESSLY DISCLAIMED. The License provides additional details about -+ * this warranty disclaimer. -+ * -+ */ -+/**************************************************** -+Change log: -+****************************************************/ -+ -+#include "uap_sdio_mmc.h" -+ -+#include <linux/firmware.h> -+ -+/** define SDIO block size */ -+/* We support up to 480-byte block size due to FW buffer limitation. */ -+#define SD_BLOCK_SIZE 256 -+ -+/** define allocated buffer size */ -+#define ALLOC_BUF_SIZE (((MAX(MRVDRV_ETH_RX_PACKET_BUFFER_SIZE, \ -+ MRVDRV_SIZE_OF_CMD_BUFFER) + INTF_HEADER_LEN \ -+ + SD_BLOCK_SIZE - 1) / SD_BLOCK_SIZE) * SD_BLOCK_SIZE) -+ -+/** Max retry number of CMD53 write */ -+#define MAX_WRITE_IOMEM_RETRY 2 -+ -+/******************************************************** -+ Local Variables -+********************************************************/ -+ -+/** SDIO Rx unit */ -+static u8 sdio_rx_unit = 0; -+ -+/**Interrupt status */ -+static u8 sd_ireg = 0; -+/******************************************************** -+ Global Variables -+********************************************************/ -+extern u8 *helper_name; -+extern u8 *fw_name; -+/** Default helper name */ -+#define DEFAULT_HELPER_NAME "mrvl/helper_sd.bin" -+/** Default firmware name */ -+#define DEFAULT_FW_NAME "mrvl/sd8688_ap.bin" -+ -+/******************************************************** -+ Local Functions -+********************************************************/ -+/** -+ * @brief This function reads the IO register. -+ * -+ * @param priv A pointer to uap_private structure -+ * @param reg register to be read -+ * @param dat A pointer to variable that keeps returned value -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+static int -+sbi_read_ioreg(uap_private * priv, u32 reg, u8 * dat) -+{ -+ struct sdio_mmc_card *card; -+ int ret = UAP_STATUS_FAILURE; -+ -+ ENTER(); -+ -+ card = priv->uap_dev.card; -+ if (!card || !card->func) { -+ PRINTM(ERROR, "sbi_read_ioreg(): card or function is NULL!\n"); -+ goto done; -+ } -+ -+ *dat = sdio_readb(card->func, reg, &ret); -+ if (ret) { -+ PRINTM(ERROR, "sbi_read_ioreg(): sdio_readb failed! ret=%d\n", ret); -+ goto done; -+ } -+ -+ PRINTM(INFO, "sbi_read_ioreg() priv=%p func=%d reg=%#x dat=%#x\n", priv, -+ card->func->num, reg, *dat); -+ -+ done: -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function writes the IO register. -+ * -+ * @param priv A pointer to uap_private structure -+ * @param reg register to be written -+ * @param dat the value to be written -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+static int -+sbi_write_ioreg(uap_private * priv, u32 reg, u8 dat) -+{ -+ struct sdio_mmc_card *card; -+ int ret = UAP_STATUS_FAILURE; -+ -+ ENTER(); -+ -+ card = priv->uap_dev.card; -+ if (!card || !card->func) { -+ PRINTM(ERROR, "sbi_write_ioreg(): card or function is NULL!\n"); -+ goto done; -+ } -+ -+ PRINTM(INFO, "sbi_write_ioreg() priv=%p func=%d reg=%#x dat=%#x\n", priv, -+ card->func->num, reg, dat); -+ -+ sdio_writeb(card->func, dat, reg, &ret); -+ if (ret) { -+ PRINTM(ERROR, "sbi_write_ioreg(): sdio_readb failed! ret=%d\n", ret); -+ goto done; -+ } -+ -+ done: -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function get rx_unit value -+ * -+ * @param priv A pointer to uap_private structure -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+static int -+sd_get_rx_unit(uap_private * priv) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ u8 reg; -+ -+ ENTER(); -+ -+ ret = sbi_read_ioreg(priv, CARD_RX_UNIT_REG, ®); -+ if (ret == UAP_STATUS_SUCCESS) -+ sdio_rx_unit = reg; -+ -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function reads rx length -+ * -+ * @param priv A pointer to uap_private structure -+ * @param dat A pointer to keep returned data -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+static int -+sd_read_rx_len(uap_private * priv, u16 * dat) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ u8 reg; -+ -+ ENTER(); -+ -+ ret = sbi_read_ioreg(priv, CARD_RX_LEN_REG, ®); -+ if (ret == UAP_STATUS_SUCCESS) -+ *dat = (u16) reg << sdio_rx_unit; -+ -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function reads fw status registers -+ * -+ * @param priv A pointer to uap_private structure -+ * @param dat A pointer to keep returned data -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+static int -+sd_read_firmware_status(uap_private * priv, u16 * dat) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ u8 fws0; -+ u8 fws1; -+ -+ ENTER(); -+ -+ ret = sbi_read_ioreg(priv, CARD_FW_STATUS0_REG, &fws0); -+ if (ret < 0) { -+ LEAVE(); -+ return UAP_STATUS_FAILURE; -+ } -+ -+ ret = sbi_read_ioreg(priv, CARD_FW_STATUS1_REG, &fws1); -+ if (ret < 0) { -+ LEAVE(); -+ return UAP_STATUS_FAILURE; -+ } -+ -+ *dat = (((u16) fws1) << 8) | fws0; -+ -+ LEAVE(); -+ return UAP_STATUS_SUCCESS; -+} -+ -+/** -+ * @brief This function polls the card status register. -+ * -+ * @param priv A pointer to uap_private structure -+ * @param bits the bit mask -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+static int -+mv_sdio_poll_card_status(uap_private * priv, u8 bits) -+{ -+ int tries; -+ u8 cs; -+ -+ ENTER(); -+ -+ for (tries = 0; tries < MAX_POLL_TRIES; tries++) { -+ if (sbi_read_ioreg(priv, CARD_STATUS_REG, &cs) < 0) -+ break; -+ else if ((cs & bits) == bits) { -+ LEAVE(); -+ return UAP_STATUS_SUCCESS; -+ } -+ udelay(10); -+ } -+ -+ PRINTM(WARN, "mv_sdio_poll_card_status failed, tries = %d\n", tries); -+ -+ LEAVE(); -+ return UAP_STATUS_FAILURE; -+} -+ -+/** -+ * @brief This function set the sdio bus width. -+ * -+ * @param priv A pointer to uap_private structure -+ * @param mode 1--1 bit mode, 4--4 bit mode -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+#if 0 -+static int -+sdio_set_bus_width(uap_private * priv, u8 mode) -+{ -+ ENTER(); -+ LEAVE(); -+ return UAP_STATUS_SUCCESS; -+} -+#endif -+ -+/** -+ * @brief This function reads data from the card. -+ * -+ * @param priv A pointer to uap_private structure -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+static int -+sd_card_to_host(uap_private * priv) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ u16 buf_len = 0; -+ int buf_block_len; -+ int blksz; -+ struct sk_buff *skb = NULL; -+ u16 type; -+ u8 *payload = NULL; -+ struct sdio_mmc_card *card = priv->uap_dev.card; -+ -+ ENTER(); -+ -+ if (!card || !card->func) { -+ PRINTM(ERROR, "card or function is NULL!\n"); -+ ret = UAP_STATUS_FAILURE; -+ goto exit; -+ } -+ -+ /* Read the length of data to be transferred */ -+ ret = sd_read_rx_len(priv, &buf_len); -+ if (ret < 0) { -+ PRINTM(ERROR, "card_to_host, read scratch reg failed\n"); -+ ret = UAP_STATUS_FAILURE; -+ goto exit; -+ } -+ -+ /* Allocate buffer */ -+ blksz = SD_BLOCK_SIZE; -+ buf_block_len = (buf_len + blksz - 1) / blksz; -+ if (buf_len <= INTF_HEADER_LEN || (buf_block_len * blksz) > ALLOC_BUF_SIZE) { -+ PRINTM(ERROR, "card_to_host, invalid packet length: %d\n", buf_len); -+ ret = UAP_STATUS_FAILURE; -+ goto exit; -+ } -+#ifdef PXA3XX_DMA_ALIGN -+ skb = dev_alloc_skb(buf_block_len * blksz + PXA3XX_DMA_ALIGNMENT); -+#else -+ skb = dev_alloc_skb(buf_block_len * blksz); -+#endif -+ if (skb == NULL) { -+ PRINTM(WARN, "No free skb\n"); -+ goto exit; -+ } -+#ifdef PXA3XX_DMA_ALIGN -+ if ((u32) skb->data & (PXA3XX_DMA_ALIGNMENT - 1)) { -+ skb_put(skb, (u32) skb->data & (PXA3XX_DMA_ALIGNMENT - 1)); -+ skb_pull(skb, (u32) skb->data & (PXA3XX_DMA_ALIGNMENT - 1)); -+ } -+#endif /* PXA3XX_DMA_ALIGN */ -+ -+ payload = skb->tail; -+ ret = sdio_readsb(card->func, payload, priv->uap_dev.ioport, -+ buf_block_len * blksz); -+ if (ret < 0) { -+ PRINTM(ERROR, "card_to_host, read iomem failed: %d\n", ret); -+ ret = UAP_STATUS_FAILURE; -+ goto exit; -+ } -+ HEXDUMP("SDIO Blk Rd", payload, blksz * buf_block_len); -+ /* -+ * This is SDIO specific header -+ * u16 length, -+ * u16 type (MV_TYPE_DAT = 0, MV_TYPE_CMD = 1, MV_TYPE_EVENT = 3) -+ */ -+ buf_len = uap_le16_to_cpu(*(u16 *) & payload[0]); -+ type = uap_le16_to_cpu(*(u16 *) & payload[2]); -+ switch (type) { -+ case MV_TYPE_EVENT: -+ skb_put(skb, buf_len); -+ skb_pull(skb, INTF_HEADER_LEN); -+ uap_process_event(priv, skb->data, skb->len); -+ kfree_skb(skb); -+ skb = NULL; -+ break; -+ case MV_TYPE_CMD: -+ skb_put(skb, buf_len); -+ skb_pull(skb, INTF_HEADER_LEN); -+ priv->adapter->cmd_pending = FALSE; -+ if (priv->adapter->cmd_wait_option == -+ HostCmd_OPTION_WAITFORRSP_SLEEPCONFIRM) { -+ priv->adapter->cmd_wait_option = FALSE; -+ uap_process_sleep_confirm_resp(priv, skb->data, skb->len); -+ } else if (priv->adapter->cmd_wait_option) { -+ memcpy(priv->adapter->CmdBuf, skb->data, skb->len); -+ priv->adapter->CmdSize = skb->len; -+ priv->adapter->cmd_wait_option = FALSE; -+ priv->adapter->CmdWaitQWoken = TRUE; -+ wake_up_interruptible(&priv->adapter->cmdwait_q); -+ } -+ kfree_skb(skb); -+ skb = NULL; -+ break; -+ case MV_TYPE_DAT: -+ skb_put(skb, buf_len); -+ skb_pull(skb, INTF_HEADER_LEN); -+ uap_process_rx_packet(priv, skb); -+ break; -+ default: -+ priv->stats.rx_errors++; -+ priv->stats.rx_dropped++; -+ /* Driver specified event and command resp should be handle here */ -+ PRINTM(INFO, "Unknown PKT type:%d\n", type); -+ kfree_skb(skb); -+ skb = NULL; -+ break; -+ } -+ exit: -+ if (ret) { -+ if (skb) -+ kfree_skb(skb); -+ } -+ -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function enables the host interrupts mask -+ * -+ * @param priv A pointer to uap_private structure -+ * @param mask the interrupt mask -+ * @return UAP_STATUS_SUCCESS -+ */ -+static int -+enable_host_int_mask(uap_private * priv, u8 mask) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ -+ ENTER(); -+ -+ /* Simply write the mask to the register */ -+ ret = sbi_write_ioreg(priv, HOST_INT_MASK_REG, mask); -+ -+ if (ret) { -+ PRINTM(WARN, "Unable to enable the host interrupt!\n"); -+ ret = UAP_STATUS_FAILURE; -+ } -+ -+ LEAVE(); -+ return ret; -+} -+ -+/** @brief This function disables the host interrupts mask. -+ * -+ * @param priv A pointer to uap_private structure -+ * @param mask the interrupt mask -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+static int -+disable_host_int_mask(uap_private * priv, u8 mask) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ u8 host_int_mask; -+ -+ ENTER(); -+ -+ /* Read back the host_int_mask register */ -+ ret = sbi_read_ioreg(priv, HOST_INT_MASK_REG, &host_int_mask); -+ if (ret) { -+ ret = UAP_STATUS_FAILURE; -+ goto done; -+ } -+ -+ /* Update with the mask and write back to the register */ -+ host_int_mask &= ~mask; -+ ret = sbi_write_ioreg(priv, HOST_INT_MASK_REG, host_int_mask); -+ if (ret < 0) { -+ PRINTM(WARN, "Unable to diable the host interrupt!\n"); -+ ret = UAP_STATUS_FAILURE; -+ goto done; -+ } -+ -+ done: -+ LEAVE(); -+ return ret; -+} -+ -+/******************************************************** -+ Global Functions -+********************************************************/ -+ -+/** -+ * @brief This function handles the interrupt. -+ * -+ * @param func A pointer to sdio_func structure. -+ * @return n/a -+ */ -+static void -+sbi_interrupt(struct sdio_func *func) -+{ -+ struct sdio_mmc_card *card; -+ uap_private *priv; -+ u8 ireg = 0; -+ int ret = UAP_STATUS_SUCCESS; -+ -+ ENTER(); -+ -+ card = sdio_get_drvdata(func); -+ if (!card || !card->priv) { -+ PRINTM(MSG, "%s: sbi_interrupt(%p) card or priv is NULL, card=%p\n", -+ __FUNCTION__, func, card); -+ LEAVE(); -+ return; -+ } -+ priv = card->priv; -+#ifdef FW_WAKEUP_TIME -+ if ((priv->adapter->wt_pwrup_sending != 0L) && -+ (priv->adapter->wt_int == 0L)) -+ priv->adapter->wt_int = get_utimeofday(); -+#endif -+ -+ ireg = sdio_readb(card->func, HOST_INTSTATUS_REG, &ret); -+ if (ret) { -+ PRINTM(WARN, "sdio_read_ioreg: read int status register failed\n"); -+ goto done; -+ } -+ if (ireg != 0) { -+ /* -+ * DN_LD_HOST_INT_STATUS and/or UP_LD_HOST_INT_STATUS -+ * Clear the interrupt status register and re-enable the interrupt -+ */ -+ PRINTM(INFO, "sdio_ireg = 0x%x\n", ireg); -+ sdio_writeb(card->func, -+ ~(ireg) & (DN_LD_HOST_INT_STATUS | UP_LD_HOST_INT_STATUS), -+ HOST_INTSTATUS_REG, &ret); -+ if (ret) { -+ PRINTM(WARN, -+ "sdio_write_ioreg: clear int status register failed\n"); -+ goto done; -+ } -+ } -+ OS_INT_DISABLE; -+ sd_ireg |= ireg; -+ OS_INT_RESTORE; -+ -+ uap_interrupt(priv); -+ done: -+ LEAVE(); -+} -+ -+/** -+ * @brief This function probe the card -+ * -+ * @param func A pointer to sdio_func structure -+ * @param id A pointer to structure sd_device_id -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+static int -+uap_probe(struct sdio_func *func, const struct sdio_device_id *id) -+{ -+ int ret = UAP_STATUS_FAILURE; -+ struct sdio_mmc_card *card = NULL; -+ -+ ENTER(); -+ -+ PRINTM(MSG, "%s: vendor=0x%4.04X device=0x%4.04X class=%d function=%d\n", -+ __FUNCTION__, func->vendor, func->device, func->class, func->num); -+ -+ card = kzalloc(sizeof(struct sdio_mmc_card), GFP_KERNEL); -+ if (!card) { -+ ret = -ENOMEM; -+ goto done; -+ } -+ -+ card->func = func; -+ -+ if (!uap_add_card(card)) { -+ PRINTM(ERROR, "%s: uap_add_callback failed\n", __FUNCTION__); -+ kfree(card); -+ ret = UAP_STATUS_FAILURE; -+ goto done; -+ } -+ -+ ret = UAP_STATUS_SUCCESS; -+ -+ done: -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function removes the card -+ * -+ * @param func A pointer to sdio_func structure -+ * @return N/A -+ */ -+static void -+uap_remove(struct sdio_func *func) -+{ -+ struct sdio_mmc_card *card; -+ -+ ENTER(); -+ -+ if (func) { -+ card = sdio_get_drvdata(func); -+ if (card) { -+ uap_remove_card(card); -+ kfree(card); -+ } -+ } -+ -+ LEAVE(); -+} -+ -+#ifdef CONFIG_PM -+/** -+ * @brief This function handles client driver suspend -+ * -+ * @param func A pointer to sdio_func structure -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+int -+uap_suspend(struct sdio_func *func) -+{ -+ ENTER(); -+ LEAVE(); -+ return 0; -+} -+ -+/** -+ * @brief This function handles client driver resume -+ * -+ * @param func A pointer to sdio_func structure -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+int -+uap_resume(struct sdio_func *func) -+{ -+ ENTER(); -+ LEAVE(); -+ return 0; -+} -+#endif -+ -+/** Device ID for SD8688 */ -+#define SD_DEVICE_ID_8688_UAP 0x9104 -+/** UAP IDs */ -+static const struct sdio_device_id uap_ids[] = { -+ {SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, SD_DEVICE_ID_8688_UAP)}, -+ {}, -+}; -+ -+MODULE_DEVICE_TABLE(sdio, uap_ids); -+ -+static struct sdio_driver uap_sdio = { -+ .name = "uap_sdio", -+ .id_table = uap_ids, -+ .probe = uap_probe, -+ .remove = uap_remove, -+#ifdef CONFIG_PM -+/* .suspend = uap_suspend, */ -+/* .resume = uap_resume, */ -+#endif -+ -+}; -+ -+/** -+ * @brief This function registers the IF module in bus driver. -+ * -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+int __init -+sbi_register() -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ -+ ENTER(); -+ -+ /* SDIO Driver Registration */ -+ if (sdio_register_driver(&uap_sdio) != 0) { -+ PRINTM(FATAL, "SDIO Driver Registration Failed \n"); -+ ret = UAP_STATUS_FAILURE; -+ } -+ -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function de-registers the IF module in bus driver. -+ * -+ * @return n/a -+ */ -+void __exit -+sbi_unregister(void) -+{ -+ ENTER(); -+ -+ /* SDIO Driver Unregistration */ -+ sdio_unregister_driver(&uap_sdio); -+ -+ LEAVE(); -+} -+ -+/** -+ * @brief This function checks the interrupt status and handle it accordingly. -+ * -+ * @param priv A pointer to uap_private structure -+ * @param ireg A pointer to variable that keeps returned value -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+int -+sbi_get_int_status(uap_private * priv, u8 * ireg) -+{ -+ int ret = UAP_STATUS_SUCCESS; -+ u8 sdio_ireg = 0; -+ struct sdio_mmc_card *card = priv->uap_dev.card; -+ -+ ENTER(); -+ -+ *ireg = 0; -+ OS_INT_DISABLE; -+ sdio_ireg = sd_ireg; -+ sd_ireg = 0; -+ OS_INT_RESTORE; -+ -+ sdio_claim_host(card->func); -+ -+ if (sdio_ireg & DN_LD_HOST_INT_STATUS) { /* tx_done INT */ -+ if (!priv->uap_dev.cmd_sent) { /* tx_done already received */ -+ PRINTM(INFO, -+ "warning: tx_done already received: tx_dnld_rdy=0x%x int status=0x%x\n", -+ priv->uap_dev.cmd_sent, sdio_ireg); -+ } else { -+ priv->uap_dev.cmd_sent = FALSE; -+ priv->uap_dev.data_sent = FALSE; -+ if ( (priv->uap_dev.netdev->reg_state == NETREG_REGISTERED) && (skb_queue_len(&priv->adapter->tx_queue) < TX_LOW_WATERMARK)) { -+ os_start_queue(priv); -+ } -+ } -+ } -+ if (sdio_ireg & UP_LD_HOST_INT_STATUS) { -+ sd_card_to_host(priv); -+ } -+ -+ *ireg = sdio_ireg; -+ ret = UAP_STATUS_SUCCESS; -+ sdio_release_host(card->func); -+ -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function disables the host interrupts. -+ * -+ * @param priv A pointer to uap_private structure -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+int -+sbi_disable_host_int(uap_private * priv) -+{ -+ struct sdio_mmc_card *card = priv->uap_dev.card; -+ int ret; -+ -+ ENTER(); -+ -+ sdio_claim_host(card->func); -+ ret = disable_host_int_mask(priv, HIM_DISABLE); -+ sdio_release_host(card->func); -+ -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function enables the host interrupts. -+ * -+ * @param priv A pointer to uap_private structure -+ * @return UAP_STATUS_SUCCESS -+ */ -+int -+sbi_enable_host_int(uap_private * priv) -+{ -+ struct sdio_mmc_card *card = priv->uap_dev.card; -+ int ret; -+ -+ ENTER(); -+ -+ sdio_claim_host(card->func); -+ ret = enable_host_int_mask(priv, HIM_ENABLE); -+ sdio_release_host(card->func); -+ -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function de-registers the device. -+ * -+ * @param priv A pointer to uap_private structure -+ * @return UAP_STATUS_SUCCESS -+ */ -+int -+sbi_unregister_dev(uap_private * priv) -+{ -+ struct sdio_mmc_card *card = priv->uap_dev.card; -+ -+ ENTER(); -+ -+ if (!card || !card->func) { -+ PRINTM(ERROR, "Error: card or function is NULL!\n"); -+ goto done; -+ } -+ -+ sdio_claim_host(card->func); -+ sdio_release_irq(card->func); -+ sdio_disable_func(card->func); -+ sdio_release_host(card->func); -+ -+ sdio_set_drvdata(card->func, NULL); -+ -+ done: -+ LEAVE(); -+ return UAP_STATUS_SUCCESS; -+} -+ -+/** -+ * @brief This function registers the device. -+ * -+ * @param priv A pointer to uap_private structure -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+int -+sbi_register_dev(uap_private * priv) -+{ -+ int ret = UAP_STATUS_FAILURE; -+ u8 reg; -+ struct sdio_mmc_card *card = priv->uap_dev.card; -+ struct sdio_func *func; -+ -+ ENTER(); -+ -+ if (!card || !card->func) { -+ PRINTM(ERROR, "Error: card or function is NULL!\n"); -+ goto done; -+ } -+ -+ func = card->func; -+ -+ /* Initialize the private structure */ -+ priv->uap_dev.ioport = 0; -+ -+ sdio_claim_host(func); -+ -+ ret = sdio_enable_func(func); -+ if (ret) { -+ PRINTM(FATAL, "sdio_enable_func() failed: ret=%d\n", ret); -+ goto release_host; -+ } -+ -+ ret = sdio_claim_irq(func, sbi_interrupt); -+ if (ret) { -+ PRINTM(FATAL, "sdio_claim_irq failed: ret=%d\n", ret); -+ goto disable_func; -+ } -+ -+ /* Read the IO port */ -+ ret = sbi_read_ioreg(priv, IO_PORT_0_REG, ®); -+ if (ret) -+ goto release_irq; -+ else -+ priv->uap_dev.ioport |= reg; -+ -+ ret = sbi_read_ioreg(priv, IO_PORT_1_REG, ®); -+ if (ret) -+ goto release_irq; -+ else -+ priv->uap_dev.ioport |= (reg << 8); -+ -+ ret = sbi_read_ioreg(priv, IO_PORT_2_REG, ®); -+ if (ret) -+ goto release_irq; -+ else -+ priv->uap_dev.ioport |= (reg << 16); -+ -+ PRINTM(INFO, "SDIO FUNC #%d IO port: 0x%x\n", func->num, -+ priv->uap_dev.ioport); -+ -+ ret = sdio_set_block_size(card->func, SD_BLOCK_SIZE); -+ if (ret) { -+ PRINTM(ERROR, "%s: cannot set SDIO block size\n", __FUNCTION__); -+ ret = UAP_STATUS_FAILURE; -+ goto release_irq; -+ } -+ priv->hotplug_device = &func->dev; -+ -+ if (helper_name == NULL) { -+ helper_name = DEFAULT_HELPER_NAME; -+ } -+ if (fw_name == NULL) { -+ fw_name = DEFAULT_FW_NAME; -+ } -+ sdio_release_host(func); -+ -+ sdio_set_drvdata(func, card); -+ -+ ret = UAP_STATUS_SUCCESS; -+ goto done; -+ -+ release_irq: -+ sdio_release_irq(func); -+ disable_func: -+ sdio_disable_func(func); -+ release_host: -+ sdio_release_host(func); -+ -+ done: -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function sends data to the card. -+ * -+ * @param priv A pointer to uap_private structure -+ * @param payload A pointer to the data/cmd buffer -+ * @param nb the length of data/cmd -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+int -+sbi_host_to_card(uap_private * priv, u8 * payload, u16 nb) -+{ -+ struct sdio_mmc_card *card = priv->uap_dev.card; -+ int ret = UAP_STATUS_SUCCESS; -+ int buf_block_len; -+ int blksz; -+ int i = 0; -+ u8 *buf = NULL; -+#ifdef PXA3XX_DMA_ALIGN -+ void *tmpbuf = NULL; -+ int tmpbufsz; -+#endif -+ -+ ENTER(); -+ -+ if (!card || !card->func) { -+ PRINTM(ERROR, "card or function is NULL!\n"); -+ LEAVE(); -+ return UAP_STATUS_FAILURE; -+ } -+ buf = payload; -+#ifdef PXA3XX_DMA_ALIGN -+ if ((u32) payload & (PXA3XX_DMA_ALIGNMENT - 1)) { -+ tmpbufsz = ALIGN_SZ(nb, PXA3XX_DMA_ALIGNMENT); -+ tmpbuf = kmalloc(tmpbufsz, GFP_KERNEL); -+ memset(tmpbuf, 0, tmpbufsz); -+ /* Ensure 8-byte aligned CMD buffer */ -+ buf = (u8 *) ALIGN_ADDR(tmpbuf, PXA3XX_DMA_ALIGNMENT); -+ memcpy(buf, payload, nb); -+ } -+#endif -+ /* Allocate buffer and copy payload */ -+ blksz = SD_BLOCK_SIZE; -+ buf_block_len = (nb + blksz - 1) / blksz; -+ sdio_claim_host(card->func); -+#define MAX_WRITE_IOMEM_RETRY 2 -+ priv->uap_dev.cmd_sent = TRUE; -+ priv->uap_dev.data_sent = TRUE; -+ do { -+ /* Transfer data to card */ -+ ret = sdio_writesb(card->func, priv->uap_dev.ioport, buf, -+ buf_block_len * blksz); -+ if (ret < 0) { -+ i++; -+ PRINTM(ERROR, "host_to_card, write iomem (%d) failed: %d\n", i, -+ ret); -+ ret = UAP_STATUS_FAILURE; -+ if (i > MAX_WRITE_IOMEM_RETRY) -+ goto exit; -+ } else { -+ HEXDUMP("SDIO Blk Wr", payload, nb); -+ } -+ } while (ret == UAP_STATUS_FAILURE); -+ exit: -+ sdio_release_host(card->func); -+#ifdef PXA3XX_DMA_ALIGN -+ if (tmpbuf) -+ kfree(tmpbuf); -+#endif -+ if (ret == UAP_STATUS_FAILURE) { -+ priv->uap_dev.cmd_sent = FALSE; -+ priv->uap_dev.data_sent = FALSE; -+ } -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function reads CIS information. -+ * -+ * @param priv A pointer to uap_private structure -+ * @param cisinfo A pointer to CIS information output buffer -+ * @param cislen A pointer to length of CIS info output buffer -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+#if 0 -+static int -+sbi_get_cis_info(uap_private * priv, void *cisinfo, int *cislen) -+{ -+#define CIS_PTR (0x8000) -+ struct sdio_mmc_card *card = priv->uap_dev.card; -+ unsigned int i, cis_ptr = CIS_PTR; -+ int ret = UAP_STATUS_FAILURE; -+ -+ ENTER(); -+ -+ if (!card || !card->func) { -+ PRINTM(ERROR, "sbi_get_cis_info(): card or function is NULL!\n"); -+ goto exit; -+ } -+#define MAX_SDIO_CIS_INFO_LEN (256) -+ if (!cisinfo || (*cislen < MAX_SDIO_CIS_INFO_LEN)) { -+ PRINTM(WARN, "ERROR! get_cis_info: insufficient buffer passed\n"); -+ goto exit; -+ } -+ -+ *cislen = MAX_SDIO_CIS_INFO_LEN; -+ -+ sdio_claim_host(card->func); -+ -+ PRINTM(INFO, "cis_ptr=%#x\n", cis_ptr); -+ -+ /* Read the Tuple Data */ -+ for (i = 0; i < *cislen; i++) { -+ ((unsigned char *) cisinfo)[i] = -+ sdio_readb(card->func, cis_ptr + i, &ret); -+ if (ret) { -+ PRINTM(WARN, "get_cis_info error: ret=%d\n", ret); -+ ret = UAP_STATUS_FAILURE; -+ goto done; -+ } -+ PRINTM(INFO, "cisinfo[%d]=%#x\n", i, ((unsigned char *) cisinfo)[i]); -+ } -+ -+ done: -+ sdio_release_host(card->func); -+ exit: -+ LEAVE(); -+ return ret; -+} -+#endif -+/** -+ * @brief This function downloads helper image to the card. -+ * -+ * @param priv A pointer to uap_private structure -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+int -+sbi_prog_helper(uap_private * priv) -+{ -+ struct sdio_mmc_card *card = priv->uap_dev.card; -+ u8 *helper = NULL; -+ int helperlen; -+ int ret = UAP_STATUS_SUCCESS; -+ void *tmphlprbuf = NULL; -+ int tmphlprbufsz; -+ u8 *hlprbuf; -+ int hlprblknow; -+ u32 tx_len; -+#ifdef FW_DOWNLOAD_SPEED -+ u32 tv1, tv2; -+#endif -+ -+ ENTER(); -+ -+ if (!card || !card->func) { -+ PRINTM(ERROR, "sbi_prog_helper(): card or function is NULL!\n"); -+ goto done; -+ } -+ -+ if (priv->fw_helper) { -+ helper = (u8 *) priv->fw_helper->data; -+ helperlen = priv->fw_helper->size; -+ } else { -+ PRINTM(MSG, "No helper image found! Terminating download.\n"); -+ LEAVE(); -+ return UAP_STATUS_FAILURE; -+ } -+ -+ PRINTM(INFO, "Downloading helper image (%d bytes), block size %d bytes\n", -+ helperlen, SD_BLOCK_SIZE); -+ -+#ifdef FW_DOWNLOAD_SPEED -+ tv1 = get_utimeofday(); -+#endif -+ -+#ifdef PXA3XX_DMA_ALIGN -+ tmphlprbufsz = ALIGN_SZ(UAP_UPLD_SIZE, PXA3XX_DMA_ALIGNMENT); -+#else /* !PXA3XX_DMA_ALIGN */ -+ tmphlprbufsz = UAP_UPLD_SIZE; -+#endif /* !PXA3XX_DMA_ALIGN */ -+ tmphlprbuf = kmalloc(tmphlprbufsz, GFP_KERNEL); -+ if (!tmphlprbuf) { -+ PRINTM(ERROR, -+ "Unable to allocate buffer for helper. Terminating download\n"); -+ ret = UAP_STATUS_FAILURE; -+ goto done; -+ } -+ memset(tmphlprbuf, 0, tmphlprbufsz); -+#ifdef PXA3XX_DMA_ALIGN -+ hlprbuf = (u8 *) ALIGN_ADDR(tmphlprbuf, PXA3XX_DMA_ALIGNMENT); -+#else /* !PXA3XX_DMA_ALIGN */ -+ hlprbuf = (u8 *) tmphlprbuf; -+#endif /* !PXA3XX_DMA_ALIGN */ -+ -+ sdio_claim_host(card->func); -+ -+ /* Perform helper data transfer */ -+ tx_len = (FIRMWARE_TRANSFER_NBLOCK * SD_BLOCK_SIZE) - INTF_HEADER_LEN; -+ hlprblknow = 0; -+ do { -+ /* The host polls for the DN_LD_CARD_RDY and CARD_IO_READY bits */ -+ ret = mv_sdio_poll_card_status(priv, CARD_IO_READY | DN_LD_CARD_RDY); -+ if (ret < 0) { -+ PRINTM(FATAL, "Helper download poll status timeout @ %d\n", -+ hlprblknow); -+ goto done; -+ } -+ -+ /* More data? */ -+ if (hlprblknow >= helperlen) -+ break; -+ -+ /* Set blocksize to transfer - checking for last block */ -+ if (helperlen - hlprblknow < tx_len) -+ tx_len = helperlen - hlprblknow; -+ -+ /* Set length to the 4-byte header */ -+ *(u32 *) hlprbuf = uap_cpu_to_le32(tx_len); -+ -+ /* Copy payload to buffer */ -+ memcpy(&hlprbuf[INTF_HEADER_LEN], &helper[hlprblknow], tx_len); -+ -+ PRINTM(INFO, "."); -+ -+ /* Send data */ -+ ret = sdio_writesb(card->func, priv->uap_dev.ioport, -+ hlprbuf, FIRMWARE_TRANSFER_NBLOCK * SD_BLOCK_SIZE); -+ -+ if (ret < 0) { -+ PRINTM(FATAL, "IO error during helper download @ %d\n", hlprblknow); -+ goto done; -+ } -+ -+ hlprblknow += tx_len; -+ } while (TRUE); -+ -+#ifdef FW_DOWNLOAD_SPEED -+ tv2 = get_utimeofday(); -+ PRINTM(INFO, "helper: %ld.%03ld.%03ld ", tv1 / 1000000, -+ (tv1 % 1000000) / 1000, tv1 % 1000); -+ PRINTM(INFO, " -> %ld.%03ld.%03ld ", tv2 / 1000000, (tv2 % 1000000) / 1000, -+ tv2 % 1000); -+ tv2 -= tv1; -+ PRINTM(INFO, " == %ld.%03ld.%03ld\n", tv2 / 1000000, (tv2 % 1000000) / 1000, -+ tv2 % 1000); -+#endif -+ -+ /* Write last EOF data */ -+ PRINTM(INFO, "\nTransferring helper image EOF block\n"); -+ memset(hlprbuf, 0x0, SD_BLOCK_SIZE); -+ ret = sdio_writesb(card->func, priv->uap_dev.ioport, -+ hlprbuf, SD_BLOCK_SIZE); -+ -+ if (ret < 0) { -+ PRINTM(FATAL, "IO error in writing helper image EOF block\n"); -+ goto done; -+ } -+ -+ ret = UAP_STATUS_SUCCESS; -+ -+ done: -+ sdio_release_host(card->func); -+ if (tmphlprbuf) -+ kfree(tmphlprbuf); -+ -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function downloads firmware image to the card. -+ * -+ * @param priv A pointer to uap_private structure -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+int -+sbi_prog_fw_w_helper(uap_private * priv) -+{ -+ struct sdio_mmc_card *card = priv->uap_dev.card; -+ u8 *firmware = NULL; -+ int firmwarelen; -+ u8 base0; -+ u8 base1; -+ int ret = UAP_STATUS_SUCCESS; -+ int offset; -+ void *tmpfwbuf = NULL; -+ int tmpfwbufsz; -+ u8 *fwbuf; -+ u16 len; -+ int txlen = 0; -+ int tx_blocks = 0; -+ int i = 0; -+ int tries = 0; -+#ifdef FW_DOWNLOAD_SPEED -+ u32 tv1, tv2; -+#endif -+ -+ ENTER(); -+ -+ if (!card || !card->func) { -+ PRINTM(ERROR, "sbi_prog_fw_w_helper(): card or function is NULL!\n"); -+ goto done; -+ } -+ -+ if (priv->firmware) { -+ firmware = (u8 *) priv->firmware->data; -+ firmwarelen = priv->firmware->size; -+ } else { -+ PRINTM(MSG, "No firmware image found! Terminating download.\n"); -+ LEAVE(); -+ return UAP_STATUS_FAILURE; -+ } -+ -+ PRINTM(INFO, "Downloading FW image (%d bytes)\n", firmwarelen); -+ -+#ifdef FW_DOWNLOAD_SPEED -+ tv1 = get_utimeofday(); -+#endif -+ -+#ifdef PXA3XX_DMA_ALIGN -+ tmpfwbufsz = ALIGN_SZ(UAP_UPLD_SIZE, PXA3XX_DMA_ALIGNMENT); -+#else /* PXA3XX_DMA_ALIGN */ -+ tmpfwbufsz = UAP_UPLD_SIZE; -+#endif /* PXA3XX_DMA_ALIGN */ -+ tmpfwbuf = kmalloc(tmpfwbufsz, GFP_KERNEL); -+ if (!tmpfwbuf) { -+ PRINTM(ERROR, -+ "Unable to allocate buffer for firmware. Terminating download.\n"); -+ ret = UAP_STATUS_FAILURE; -+ goto done; -+ } -+ memset(tmpfwbuf, 0, tmpfwbufsz); -+#ifdef PXA3XX_DMA_ALIGN -+ /* Ensure 8-byte aligned firmware buffer */ -+ fwbuf = (u8 *) ALIGN_ADDR(tmpfwbuf, PXA3XX_DMA_ALIGNMENT); -+#else /* PXA3XX_DMA_ALIGN */ -+ fwbuf = (u8 *) tmpfwbuf; -+#endif /* PXA3XX_DMA_ALIGN */ -+ -+ sdio_claim_host(card->func); -+ -+ /* Perform firmware data transfer */ -+ offset = 0; -+ do { -+ /* The host polls for the DN_LD_CARD_RDY and CARD_IO_READY bits */ -+ ret = mv_sdio_poll_card_status(priv, CARD_IO_READY | DN_LD_CARD_RDY); -+ if (ret < 0) { -+ PRINTM(FATAL, "FW download with helper poll status timeout @ %d\n", -+ offset); -+ goto done; -+ } -+ -+ /* More data? */ -+ if (offset >= firmwarelen) -+ break; -+ -+ for (tries = 0; tries < MAX_POLL_TRIES; tries++) { -+ if ((ret = sbi_read_ioreg(priv, HOST_F1_RD_BASE_0, &base0)) < 0) { -+ PRINTM(WARN, "Dev BASE0 register read failed:" -+ " base0=0x%04X(%d). Terminating download.\n", base0, -+ base0); -+ ret = UAP_STATUS_FAILURE; -+ goto done; -+ } -+ if ((ret = sbi_read_ioreg(priv, HOST_F1_RD_BASE_1, &base1)) < 0) { -+ PRINTM(WARN, "Dev BASE1 register read failed:" -+ " base1=0x%04X(%d). Terminating download.\n", base1, -+ base1); -+ ret = UAP_STATUS_FAILURE; -+ goto done; -+ } -+ len = (((u16) base1) << 8) | base0; -+ -+ /* For SD8688 wait until the length is not 0, 1 or 2 before -+ downloading the first FW block, since BOOT code writes the -+ register to indicate the helper/FW download winner, the value -+ could be 1 or 2 (Func1 or Func2). */ -+ if ((len && offset) || (len > 2)) -+ break; -+ udelay(10); -+ } -+ -+ if (len == 0) -+ break; -+ else if (len > UAP_UPLD_SIZE) { -+ PRINTM(FATAL, "FW download failure @ %d, invalid length %d\n", -+ offset, len); -+ ret = UAP_STATUS_FAILURE; -+ goto done; -+ } -+ -+ txlen = len; -+ -+ if (len & BIT(0)) { -+ i++; -+ if (i > MAX_WRITE_IOMEM_RETRY) { -+ PRINTM(FATAL, -+ "FW download failure @ %d, over max retry count\n", -+ offset); -+ ret = UAP_STATUS_FAILURE; -+ goto done; -+ } -+ PRINTM(ERROR, "FW CRC error indicated by the helper:" -+ " len = 0x%04X, txlen = %d\n", len, txlen); -+ len &= ~BIT(0); -+ /* Setting this to 0 to resend from same offset */ -+ txlen = 0; -+ } else { -+ i = 0; -+ -+ /* Set blocksize to transfer - checking for last block */ -+ if (firmwarelen - offset < txlen) { -+ txlen = firmwarelen - offset; -+ } -+ PRINTM(INFO, "."); -+ -+ tx_blocks = (txlen + SD_BLOCK_SIZE - 1) / SD_BLOCK_SIZE; -+ -+ /* Copy payload to buffer */ -+ memcpy(fwbuf, &firmware[offset], txlen); -+ } -+ -+ /* Send data */ -+ ret = sdio_writesb(card->func, priv->uap_dev.ioport, -+ fwbuf, tx_blocks * SD_BLOCK_SIZE); -+ -+ if (ret < 0) { -+ PRINTM(ERROR, "FW download, write iomem (%d) failed @ %d\n", i, -+ offset); -+ if (sbi_write_ioreg(priv, CONFIGURATION_REG, 0x04) < 0) { -+ PRINTM(ERROR, "write ioreg failed (CFG)\n"); -+ } -+ } -+ -+ offset += txlen; -+ } while (TRUE); -+ -+ PRINTM(INFO, "\nFW download over, size %d bytes\n", offset); -+ -+ ret = UAP_STATUS_SUCCESS; -+ done: -+#ifdef FW_DOWNLOAD_SPEED -+ tv2 = get_utimeofday(); -+ PRINTM(INFO, "FW: %ld.%03ld.%03ld ", tv1 / 1000000, -+ (tv1 % 1000000) / 1000, tv1 % 1000); -+ PRINTM(INFO, " -> %ld.%03ld.%03ld ", tv2 / 1000000, -+ (tv2 % 1000000) / 1000, tv2 % 1000); -+ tv2 -= tv1; -+ PRINTM(INFO, " == %ld.%03ld.%03ld\n", tv2 / 1000000, -+ (tv2 % 1000000) / 1000, tv2 % 1000); -+#endif -+ sdio_release_host(card->func); -+ if (tmpfwbuf) -+ kfree(tmpfwbuf); -+ -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function checks if the firmware is ready to accept -+ * command or not. -+ * -+ * @param priv A pointer to uap_private structure -+ * @param pollnum Poll number -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+int -+sbi_check_fw_status(uap_private * priv, int pollnum) -+{ -+ struct sdio_mmc_card *card = priv->uap_dev.card; -+ int ret = UAP_STATUS_SUCCESS; -+ u16 firmwarestat; -+ int tries; -+ -+ ENTER(); -+ -+ sdio_claim_host(card->func); -+ -+ /* Wait for firmware initialization event */ -+ for (tries = 0; tries < pollnum; tries++) { -+ if ((ret = sd_read_firmware_status(priv, &firmwarestat)) < 0) -+ continue; -+ if (firmwarestat == FIRMWARE_READY) { -+ ret = UAP_STATUS_SUCCESS; -+ break; -+ } else { -+ mdelay(10); -+ ret = UAP_STATUS_FAILURE; -+ } -+ } -+ -+ if (ret < 0) -+ goto done; -+ -+ ret = UAP_STATUS_SUCCESS; -+ sd_get_rx_unit(priv); -+ -+ done: -+ sdio_release_host(card->func); -+ -+ LEAVE(); -+ return ret; -+} -+ -+/** -+ * @brief This function set bus clock on/off -+ * -+ * @param priv A pointer to uap_private structure -+ * @param option TRUE--on , FALSE--off -+ * @return UAP_STATUS_SUCCESS -+ */ -+#if 0 -+static int -+sbi_set_bus_clock(uap_private * priv, u8 option) -+{ -+ ENTER(); -+ LEAVE(); -+ return UAP_STATUS_SUCCESS; -+} -+#endif -+ -+/** -+ * @brief This function wakeup firmware -+ * -+ * @param priv A pointer to uap_private structure -+ * @return UAP_STATUS_SUCCESS or UAP_STATUS_FAILURE -+ */ -+int -+sbi_wakeup_firmware(uap_private * priv) -+{ -+ struct sdio_mmc_card *card = priv->uap_dev.card; -+ int ret = UAP_STATUS_SUCCESS; -+ -+ ENTER(); -+ -+ if (!card || !card->func) { -+ PRINTM(ERROR, "card or function is NULL!\n"); -+ LEAVE(); -+ return UAP_STATUS_FAILURE; -+ } -+ sdio_claim_host(card->func); -+ sdio_writeb(card->func, HOST_POWER_UP, CONFIGURATION_REG, &ret); -+ sdio_release_host(card->func); -+ LEAVE(); -+ return ret; -+} -diff --git a/drivers/net/wireless/libertas_uap/uap_sdio_mmc.h b/drivers/net/wireless/libertas_uap/uap_sdio_mmc.h -new file mode 100644 -index 0000000..191c67f ---- /dev/null -+++ b/drivers/net/wireless/libertas_uap/uap_sdio_mmc.h -@@ -0,0 +1,136 @@ -+/** @file uap_sdio_mmc.h -+ * @brief This file contains SDIO IF (interface) module -+ * related macros, enum, and structure. -+ * -+ * Copyright (C) 2007-2009, Marvell International Ltd. -+ * -+ * This software file (the "File") is distributed by Marvell International -+ * Ltd. under the terms of the GNU General Public License Version 2, June 1991 -+ * (the "License"). You may use, redistribute and/or modify this File in -+ * accordance with the terms and conditions of the License, a copy of which -+ * is available along with the File in the gpl.txt file or by writing to -+ * the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA -+ * 02111-1307 or on the worldwide web at http://www.gnu.org/licenses/gpl.txt. -+ * -+ * THE FILE IS DISTRIBUTED AS-IS, WITHOUT WARRANTY OF ANY KIND, AND THE -+ * IMPLIED WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE -+ * ARE EXPRESSLY DISCLAIMED. The License provides additional details about -+ * this warranty disclaimer. -+ * -+ */ -+/**************************************************** -+Change log: -+ 10/10/07: initial version -+****************************************************/ -+ -+#ifndef _UAP_SDIO_MMC_H -+#define _UAP_SDIO_MMC_H -+ -+#include <linux/mmc/sdio.h> -+#include <linux/mmc/sdio_ids.h> -+#include <linux/mmc/sdio_func.h> -+#include <linux/mmc/card.h> -+ -+#include "uap_headers.h" -+ -+/** The number of times to try when waiting for downloaded firmware to -+ become active. (polling the scratch register). */ -+#define MAX_FIRMWARE_POLL_TRIES 100 -+ -+/** Firmware ready */ -+#define FIRMWARE_READY 0xfedc -+ -+/** Number of firmware blocks to transfer */ -+#define FIRMWARE_TRANSFER_NBLOCK 2 -+ -+/* Host Control Registers */ -+/** Host Control Registers : I/O port 0 */ -+#define IO_PORT_0_REG 0x00 -+/** Host Control Registers : I/O port 1 */ -+#define IO_PORT_1_REG 0x01 -+/** Host Control Registers : I/O port 2 */ -+#define IO_PORT_2_REG 0x02 -+ -+/** Host Control Registers : Configuration */ -+#define CONFIGURATION_REG 0x03 -+/** Host Control Registers : Host without Command 53 finish host */ -+#define HOST_WO_CMD53_FINISH_HOST (0x1U << 2) -+/** Host Control Registers : Host power up */ -+#define HOST_POWER_UP (0x1U << 1) -+/** Host Control Registers : Host power down */ -+#define HOST_POWER_DOWN (0x1U << 0) -+ -+/** Host Control Registers : Host interrupt mask */ -+#define HOST_INT_MASK_REG 0x04 -+/** Host Control Registers : Upload host interrupt mask */ -+#define UP_LD_HOST_INT_MASK (0x1U) -+/** Host Control Registers : Download host interrupt mask */ -+#define DN_LD_HOST_INT_MASK (0x2U) -+/** Enable Host interrupt mask */ -+#define HIM_ENABLE (UP_LD_HOST_INT_MASK | DN_LD_HOST_INT_MASK) -+/** Disable Host interrupt mask */ -+#define HIM_DISABLE 0xff -+ -+/** Host Control Registers : Host interrupt status */ -+#define HOST_INTSTATUS_REG 0x05 -+/** Host Control Registers : Upload host interrupt status */ -+#define UP_LD_HOST_INT_STATUS (0x1U) -+/** Host Control Registers : Download host interrupt status */ -+#define DN_LD_HOST_INT_STATUS (0x2U) -+ -+/** Host F1 read base 0 */ -+#define HOST_F1_RD_BASE_0 0x10 -+/** Host F1 read base 1 */ -+#define HOST_F1_RD_BASE_1 0x11 -+ -+/** Card Control Registers : Card status register */ -+#define CARD_STATUS_REG 0x20 -+/** Card Control Registers : Card I/O ready */ -+#define CARD_IO_READY (0x1U << 3) -+/** Card Control Registers : CIS card ready */ -+#define CIS_CARD_RDY (0x1U << 2) -+/** Card Control Registers : Upload card ready */ -+#define UP_LD_CARD_RDY (0x1U << 1) -+/** Card Control Registers : Download card ready */ -+#define DN_LD_CARD_RDY (0x1U << 0) -+ -+/** Card Control Registers : Card OCR 0 register */ -+#define CARD_OCR_0_REG 0x34 -+/** Card Control Registers : Card OCR 1 register */ -+#define CARD_OCR_1_REG 0x35 -+ -+/** Firmware status 0 register */ -+#define CARD_FW_STATUS0_REG 0x40 -+/** Firmware status 1 register */ -+#define CARD_FW_STATUS1_REG 0x41 -+/** Rx length register */ -+#define CARD_RX_LEN_REG 0x42 -+/** Rx unit register */ -+#define CARD_RX_UNIT_REG 0x43 -+ -+/** Chip Id Register 0 */ -+#define CARD_CHIP_ID_0_REG 0x801c -+/** Chip Id Register 1 */ -+#define CARD_CHIP_ID_1_REG 0x801d -+ -+#ifdef PXA3XX_DMA_ALIGN -+/** DMA alignment value for PXA3XX platforms */ -+#define PXA3XX_DMA_ALIGNMENT 8 -+/** Macros for Data Alignment : size */ -+#define ALIGN_SZ(p, a) \ -+ (((p) + ((a) - 1)) & ~((a) - 1)) -+ -+/** Macros for Data Alignment : address */ -+#define ALIGN_ADDR(p, a) \ -+ ((((u32)(p)) + (((u32)(a)) - 1)) & ~(((u32)(a)) - 1)) -+#endif /* PXA3XX_DMA_ALIGN */ -+ -+struct sdio_mmc_card -+{ -+ /** sdio_func structure pointer */ -+ struct sdio_func *func; -+ /** uap_private structure pointer */ -+ uap_private *priv; -+}; -+ -+#endif /* _UAP_SDIO_MMC_H */ diff --git a/src/patches/linux/linux-3.14.79-rpi-suspend-not-inline.patch b/src/patches/linux/linux-3.14.79-rpi-suspend-not-inline.patch deleted file mode 100644 index da7cf802d..000000000 --- a/src/patches/linux/linux-3.14.79-rpi-suspend-not-inline.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur linux-3.14.79.ORG/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_arm.c linux-3.14.79/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_arm.c ---- linux-3.14.79.ORG/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_arm.c 2017-06-16 19:58:56.000000000 +0200 -+++ linux-3.14.79/drivers/misc/vc04_services/interface/vchiq_arm/vchiq_arm.c 2017-06-17 09:32:51.645096482 +0200 -@@ -1776,7 +1776,7 @@ - ** VC_RESUME_FAILED - Currently unused - no mechanism to fail resume exists. - */ - --inline void -+void - set_suspend_state(VCHIQ_ARM_STATE_T *arm_state, - enum vc_suspend_status new_state) - { diff --git a/src/patches/linux/linux-4.14-Revert-usb-dwc2-Fix-DMA-alignment.patch b/src/patches/linux/linux-4.14-Revert-usb-dwc2-Fix-DMA-alignment.patch deleted file mode 100644 index e4c8b9982..000000000 --- a/src/patches/linux/linux-4.14-Revert-usb-dwc2-Fix-DMA-alignment.patch +++ /dev/null @@ -1,99 +0,0 @@ -From a44147a09baf8c46cc0b02332df3a4656e0659d5 Mon Sep 17 00:00:00 2001 -From: Arne Fitzenreiter arne_f@ipfire.org -Date: Mon, 10 Dec 2018 13:12:00 +0100 -Subject: [PATCH] Revert "usb: dwc2: Fix DMA alignment to start at allocated - boundary" - -This reverts commit 68fc92a0f3913d539d1ac68a861f895e34099e46. ---- - drivers/usb/dwc2/hcd.c | 44 +++++++++++++++++++++----------------------- - 1 file changed, 21 insertions(+), 23 deletions(-) - -diff --git a/drivers/usb/dwc2/hcd.c b/drivers/usb/dwc2/hcd.c -index fa20ec4..4b81d08 100644 ---- a/drivers/usb/dwc2/hcd.c -+++ b/drivers/usb/dwc2/hcd.c -@@ -2644,29 +2644,34 @@ static int dwc2_alloc_split_dma_aligned_buf(struct dwc2_hsotg *hsotg, - - #define DWC2_USB_DMA_ALIGN 4 - -+struct dma_aligned_buffer { -+ void *kmalloc_ptr; -+ void *old_xfer_buffer; -+ u8 data[0]; -+}; -+ - static void dwc2_free_dma_aligned_buffer(struct urb *urb) - { -- void *stored_xfer_buffer; -+ struct dma_aligned_buffer *temp; - - if (!(urb->transfer_flags & URB_ALIGNED_TEMP_BUFFER)) - return; - -- /* Restore urb->transfer_buffer from the end of the allocated area */ -- memcpy(&stored_xfer_buffer, urb->transfer_buffer + -- urb->transfer_buffer_length, sizeof(urb->transfer_buffer)); -+ temp = container_of(urb->transfer_buffer, -+ struct dma_aligned_buffer, data); - - if (usb_urb_dir_in(urb)) -- memcpy(stored_xfer_buffer, urb->transfer_buffer, -+ memcpy(temp->old_xfer_buffer, temp->data, - urb->transfer_buffer_length); -- kfree(urb->transfer_buffer); -- urb->transfer_buffer = stored_xfer_buffer; -+ urb->transfer_buffer = temp->old_xfer_buffer; -+ kfree(temp->kmalloc_ptr); - - urb->transfer_flags &= ~URB_ALIGNED_TEMP_BUFFER; - } - - static int dwc2_alloc_dma_aligned_buffer(struct urb *urb, gfp_t mem_flags) - { -- void *kmalloc_ptr; -+ struct dma_aligned_buffer *temp, *kmalloc_ptr; - size_t kmalloc_size; - - if (urb->num_sgs || urb->sg || -@@ -2674,29 +2679,22 @@ static int dwc2_alloc_dma_aligned_buffer(struct urb *urb, gfp_t mem_flags) - !((uintptr_t)urb->transfer_buffer & (DWC2_USB_DMA_ALIGN - 1))) - return 0; - -- /* -- * Allocate a buffer with enough padding for original transfer_buffer -- * pointer. This allocation is guaranteed to be aligned properly for -- * DMA -- */ -+ /* Allocate a buffer with enough padding for alignment */ - kmalloc_size = urb->transfer_buffer_length + -- sizeof(urb->transfer_buffer); -+ sizeof(struct dma_aligned_buffer) + DWC2_USB_DMA_ALIGN - 1; - - kmalloc_ptr = kmalloc(kmalloc_size, mem_flags); - if (!kmalloc_ptr) - return -ENOMEM; - -- /* -- * Position value of original urb->transfer_buffer pointer to the end -- * of allocation for later referencing -- */ -- memcpy(kmalloc_ptr + urb->transfer_buffer_length, -- &urb->transfer_buffer, sizeof(urb->transfer_buffer)); -- -+ /* Position our struct dma_aligned_buffer such that data is aligned */ -+ temp = PTR_ALIGN(kmalloc_ptr + 1, DWC2_USB_DMA_ALIGN) - 1; -+ temp->kmalloc_ptr = kmalloc_ptr; -+ temp->old_xfer_buffer = urb->transfer_buffer; - if (usb_urb_dir_out(urb)) -- memcpy(kmalloc_ptr, urb->transfer_buffer, -+ memcpy(temp->data, urb->transfer_buffer, - urb->transfer_buffer_length); -- urb->transfer_buffer = kmalloc_ptr; -+ urb->transfer_buffer = temp->data; - - urb->transfer_flags |= URB_ALIGNED_TEMP_BUFFER; - --- -2.7.4 - diff --git a/src/patches/linux/linux-4.9.8-rt2x00usb_suppress_queue_warnings.patch b/src/patches/linux/linux-4.9.8-rt2x00usb_suppress_queue_warnings.patch deleted file mode 100644 index e145cb460..000000000 --- a/src/patches/linux/linux-4.9.8-rt2x00usb_suppress_queue_warnings.patch +++ /dev/null @@ -1,42 +0,0 @@ -diff -Naur linux-4.9.8.org/drivers/net/wireless/ralink/rt2x00/rt2800usb.c linux-4.9.8/drivers/net/wireless/ralink/rt2x00/rt2800usb.c ---- linux-4.9.8.org/drivers/net/wireless/ralink/rt2x00/rt2800usb.c 2017-02-04 09:47:29.000000000 +0100 -+++ linux-4.9.8/drivers/net/wireless/ralink/rt2x00/rt2800usb.c 2017-02-11 10:50:04.909859370 +0100 -@@ -448,7 +448,7 @@ - - rt2x00usb_register_read(rt2x00dev, TXRXQ_PCNT, ®); - if (rt2x00_get_field32(reg, TXRXQ_PCNT_TX0Q)) { -- rt2x00_warn(rt2x00dev, "TX HW queue 0 timed out, invoke forced kick\n"); -+ rt2x00_dbg(rt2x00dev, "TX HW queue 0 timed out, invoke forced kick\n"); - - rt2x00usb_register_write(rt2x00dev, PBF_CFG, 0xf40012); - -@@ -463,7 +463,7 @@ - - rt2x00usb_register_read(rt2x00dev, TXRXQ_PCNT, ®); - if (rt2x00_get_field32(reg, TXRXQ_PCNT_TX1Q)) { -- rt2x00_warn(rt2x00dev, "TX HW queue 1 timed out, invoke forced kick\n"); -+ rt2x00_dbg(rt2x00dev, "TX HW queue 1 timed out, invoke forced kick\n"); - - rt2x00usb_register_write(rt2x00dev, PBF_CFG, 0xf4000a); - -@@ -613,7 +613,7 @@ - - if (unlikely(test_bit(ENTRY_OWNER_DEVICE_DATA, &entry->flags) || - !test_bit(ENTRY_DATA_STATUS_PENDING, &entry->flags))) { -- rt2x00_warn(rt2x00dev, "Data pending for entry %u in queue %u\n", -+ rt2x00_dbg(rt2x00dev, "Data pending for entry %u in queue %u\n", - entry->entry_idx, qid); - break; - } -diff -Naur linux-4.9.8.org/drivers/net/wireless/ralink/rt2x00/rt2x00usb.c linux-4.9.8/drivers/net/wireless/ralink/rt2x00/rt2x00usb.c ---- linux-4.9.8.org/drivers/net/wireless/ralink/rt2x00/rt2x00usb.c 2017-02-04 09:47:29.000000000 +0100 -+++ linux-4.9.8/drivers/net/wireless/ralink/rt2x00/rt2x00usb.c 2017-02-11 10:50:04.909859370 +0100 -@@ -524,7 +524,7 @@ - - static void rt2x00usb_watchdog_tx_dma(struct data_queue *queue) - { -- rt2x00_warn(queue->rt2x00dev, "TX queue %d DMA timed out, invoke forced forced reset\n", -+ rt2x00_dbg(queue->rt2x00dev, "TX queue %d DMA timed out, invoke forced reset\n", - queue->qid); - - rt2x00queue_stop_queue(queue); diff --git a/src/patches/lzo-2.06-CVE-2014-4607.patch b/src/patches/lzo-2.06-CVE-2014-4607.patch deleted file mode 100644 index d22c406e0..000000000 --- a/src/patches/lzo-2.06-CVE-2014-4607.patch +++ /dev/null @@ -1,245 +0,0 @@ -diff --git a/minilzo/minilzo.c b/minilzo/minilzo.c -index 34ce0f0..ecfdf66 100644 ---- a/minilzo/minilzo.c -+++ b/minilzo/minilzo.c -@@ -3547,6 +3547,8 @@ DO_COMPRESS ( const lzo_bytep in , lzo_uint in_len, - #undef TEST_LBO - #undef NEED_IP - #undef NEED_OP -+#undef TEST_IV -+#undef TEST_OV - #undef HAVE_TEST_IP - #undef HAVE_TEST_OP - #undef HAVE_NEED_IP -@@ -3561,6 +3563,7 @@ DO_COMPRESS ( const lzo_bytep in , lzo_uint in_len, - # if (LZO_TEST_OVERRUN_INPUT >= 2) - # define NEED_IP(x) \ - if ((lzo_uint)(ip_end - ip) < (lzo_uint)(x)) goto input_overrun -+# define TEST_IV(x) if ((x) > (lzo_uint)0 - (511)) goto input_overrun - # endif - #endif - -@@ -3572,6 +3575,7 @@ DO_COMPRESS ( const lzo_bytep in , lzo_uint in_len, - # undef TEST_OP - # define NEED_OP(x) \ - if ((lzo_uint)(op_end - op) < (lzo_uint)(x)) goto output_overrun -+# define TEST_OV(x) if ((x) > (lzo_uint)0 - (511)) goto output_overrun - # endif - #endif - -@@ -3602,11 +3606,13 @@ DO_COMPRESS ( const lzo_bytep in , lzo_uint in_len, - # define HAVE_NEED_IP 1 - #else - # define NEED_IP(x) ((void) 0) -+# define TEST_IV(x) ((void) 0) - #endif - #if defined(NEED_OP) - # define HAVE_NEED_OP 1 - #else - # define NEED_OP(x) ((void) 0) -+# define TEST_OV(x) ((void) 0) - #endif - - #if defined(HAVE_TEST_IP) || defined(HAVE_NEED_IP) -@@ -3687,6 +3693,7 @@ DO_DECOMPRESS ( const lzo_bytep in , lzo_uint in_len, - { - t += 255; - ip++; -+ TEST_IV(t); - NEED_IP(1); - } - t += 15 + *ip++; -@@ -3835,6 +3842,7 @@ match: - { - t += 255; - ip++; -+ TEST_OV(t); - NEED_IP(1); - } - t += 31 + *ip++; -@@ -3879,6 +3887,7 @@ match: - { - t += 255; - ip++; -+ TEST_OV(t); - NEED_IP(1); - } - t += 7 + *ip++; -@@ -4073,6 +4082,8 @@ lookbehind_overrun: - #undef TEST_LBO - #undef NEED_IP - #undef NEED_OP -+#undef TEST_IV -+#undef TEST_OV - #undef HAVE_TEST_IP - #undef HAVE_TEST_OP - #undef HAVE_NEED_IP -@@ -4087,6 +4098,7 @@ lookbehind_overrun: - # if (LZO_TEST_OVERRUN_INPUT >= 2) - # define NEED_IP(x) \ - if ((lzo_uint)(ip_end - ip) < (lzo_uint)(x)) goto input_overrun -+# define TEST_IV(x) if ((x) > (lzo_uint)0 - (511)) goto input_overrun - # endif - #endif - -@@ -4098,6 +4110,7 @@ lookbehind_overrun: - # undef TEST_OP - # define NEED_OP(x) \ - if ((lzo_uint)(op_end - op) < (lzo_uint)(x)) goto output_overrun -+# define TEST_OV(x) if ((x) > (lzo_uint)0 - (511)) goto output_overrun - # endif - #endif - -@@ -4128,11 +4141,13 @@ lookbehind_overrun: - # define HAVE_NEED_IP 1 - #else - # define NEED_IP(x) ((void) 0) -+# define TEST_IV(x) ((void) 0) - #endif - #if defined(NEED_OP) - # define HAVE_NEED_OP 1 - #else - # define NEED_OP(x) ((void) 0) -+# define TEST_OV(x) ((void) 0) - #endif - - #if defined(HAVE_TEST_IP) || defined(HAVE_NEED_IP) -@@ -4213,6 +4228,7 @@ DO_DECOMPRESS ( const lzo_bytep in , lzo_uint in_len, - { - t += 255; - ip++; -+ TEST_IV(t); - NEED_IP(1); - } - t += 15 + *ip++; -@@ -4361,6 +4377,7 @@ match: - { - t += 255; - ip++; -+ TEST_OV(t); - NEED_IP(1); - } - t += 31 + *ip++; -@@ -4405,6 +4422,7 @@ match: - { - t += 255; - ip++; -+ TEST_OV(t); - NEED_IP(1); - } - t += 7 + *ip++; -diff --git a/src/lzo1_d.ch b/src/lzo1_d.ch -index 40a5bfd..c442d9c 100644 ---- a/src/lzo1_d.ch -+++ b/src/lzo1_d.ch -@@ -76,6 +76,8 @@ - #undef TEST_LBO - #undef NEED_IP - #undef NEED_OP -+#undef TEST_IV -+#undef TEST_OV - #undef HAVE_TEST_IP - #undef HAVE_TEST_OP - #undef HAVE_NEED_IP -@@ -91,6 +93,7 @@ - # if (LZO_TEST_OVERRUN_INPUT >= 2) - # define NEED_IP(x) \ - if ((lzo_uint)(ip_end - ip) < (lzo_uint)(x)) goto input_overrun -+# define TEST_IV(x) if ((x) > (lzo_uint)0 - (511)) goto input_overrun - # endif - #endif - -@@ -102,6 +105,7 @@ - # undef TEST_OP /* don't need both of the tests here */ - # define NEED_OP(x) \ - if ((lzo_uint)(op_end - op) < (lzo_uint)(x)) goto output_overrun -+# define TEST_OV(x) if ((x) > (lzo_uint)0 - (511)) goto output_overrun - # endif - #endif - -@@ -135,11 +139,13 @@ - # define HAVE_NEED_IP 1 - #else - # define NEED_IP(x) ((void) 0) -+# define TEST_IV(x) ((void) 0) - #endif - #if defined(NEED_OP) - # define HAVE_NEED_OP 1 - #else - # define NEED_OP(x) ((void) 0) -+# define TEST_OV(x) ((void) 0) - #endif - - -diff --git a/src/lzo1b_d.ch b/src/lzo1b_d.ch -index fe5f361..36b4b6b 100644 ---- a/src/lzo1b_d.ch -+++ b/src/lzo1b_d.ch -@@ -187,6 +187,7 @@ match: - { - t += 255; - ip++; -+ TEST_OV(t); - NEED_IP(1); - } - t += (M4_MIN_LEN - M3_MIN_LEN) + *ip++; -diff --git a/src/lzo1f_d.ch b/src/lzo1f_d.ch -index 9e942f5..0c2199e 100644 ---- a/src/lzo1f_d.ch -+++ b/src/lzo1f_d.ch -@@ -84,6 +84,7 @@ DO_DECOMPRESS ( const lzo_bytep in , lzo_uint in_len, - { - t += 255; - ip++; -+ TEST_IV(t); - NEED_IP(1); - } - t += 31 + *ip++; -@@ -138,6 +139,7 @@ match: - { - t += 255; - ip++; -+ TEST_OV(t); - NEED_IP(1); - } - t += 31 + *ip++; -diff --git a/src/lzo1x_d.ch b/src/lzo1x_d.ch -index 49cf326..c804cc7 100644 ---- a/src/lzo1x_d.ch -+++ b/src/lzo1x_d.ch -@@ -120,6 +120,7 @@ DO_DECOMPRESS ( const lzo_bytep in , lzo_uint in_len, - { - t += 255; - ip++; -+ TEST_IV(t); - NEED_IP(1); - } - t += 15 + *ip++; -@@ -273,6 +274,7 @@ match: - { - t += 255; - ip++; -+ TEST_OV(t); - NEED_IP(1); - } - t += 31 + *ip++; -@@ -317,6 +319,7 @@ match: - { - t += 255; - ip++; -+ TEST_OV(t); - NEED_IP(1); - } - t += 7 + *ip++; -diff --git a/src/lzo2a_d.ch b/src/lzo2a_d.ch -index 48e51ca..954f07e 100644 ---- a/src/lzo2a_d.ch -+++ b/src/lzo2a_d.ch -@@ -131,6 +131,7 @@ DO_DECOMPRESS ( const lzo_bytep in , lzo_uint in_len, - { - t += 255; - ip++; -+ TEST_OV(t); - NEED_IP(1); - } - t += *ip++; diff --git a/src/patches/netpbm-10.26.46-getline.patch b/src/patches/netpbm-10.26.46-getline.patch deleted file mode 100644 index c5a961b30..000000000 --- a/src/patches/netpbm-10.26.46-getline.patch +++ /dev/null @@ -1,202 +0,0 @@ -The getline function used in a couple of places in netpbm-free is also -defined by POSIX:2008, and so netpbm-free fails to build with newer -versions of (e)glibc. Here's a patch to rename it. - - * Rename getline functions to get_line to avoid conflict with POSIX:2008. - ---- netpbm-free-10.0.orig/ppm/xvminitoppm.c -+++ netpbm-free-10.0/ppm/xvminitoppm.c -@@ -14,7 +14,7 @@ - #include "ppm.h" - #define BUFSIZE 256 - --static void getline ARGS((FILE *fp, char *buf)); -+static void get_line ARGS((FILE *fp, char *buf)); - - int - main(argc, argv) -@@ -48,18 +48,18 @@ - i++; - } - -- getline(ifp, buf); -+ get_line(ifp, buf); - if( strncmp(buf, "P7 332", 6) != 0 ) - pm_error("bad magic number - not a XV thumbnail picture"); - - while(1) { -- getline(ifp, buf); -+ get_line(ifp, buf); - if( strncmp(buf, "#END_OF_COMMENTS", 16)==0 ) - break; - if( strncmp(buf, "#BUILTIN", 8)==0 ) - pm_error("cannot convert builtin XV thumbnail pictures"); - } -- getline(ifp, buf); -+ get_line(ifp, buf); - if( sscanf(buf, "%d %d %d", &cols, &rows, &maxval) != 3 ) - pm_error("error parsing dimension info"); - if( maxval != 255 ) -@@ -85,7 +85,7 @@ - - - static void --getline(fp, buf) -+get_line(fp, buf) - FILE *fp; - char *buf; - { ---- netpbm-free-10.0.orig/ppm/xpmtoppm.c -+++ netpbm-free-10.0/ppm/xpmtoppm.c -@@ -114,7 +114,7 @@ - - - static void --getline(char * const line, int const size, FILE * const stream) { -+get_line(char * const line, int const size, FILE * const stream) { - /*---------------------------------------------------------------------------- - Read the next line from the input file 'stream', through the one-line - buffer lastInputLine[]. -@@ -130,7 +130,7 @@ - Exit program if the line doesn't fit in the buffer. - -----------------------------------------------------------------------------*/ - if (size > MAX_LINE+1) -- pm_error("INTERNAL ERROR: getline() received 'size' parameter " -+ pm_error("INTERNAL ERROR: get_line() received 'size' parameter " - "which is out of bounds"); - - if (backup) { -@@ -346,7 +346,7 @@ - int * const transparentP) { - /*---------------------------------------------------------------------------- - Read the header of the XPM file on stream 'stream'. Assume the -- getline() stream is presently positioned to the beginning of the -+ get_line() stream is presently positioned to the beginning of the - file and it is a Version 3 XPM file. Leave the stream positioned - after the header. - -@@ -377,25 +377,25 @@ - *widthP = *heightP = *ncolorsP = *chars_per_pixelP = -1; - - /* Read the XPM signature comment */ -- getline(line, sizeof(line), stream); -+ get_line(line, sizeof(line), stream); - if (strncmp(line, xpm3_signature, strlen(xpm3_signature)) != 0) - pm_error("Apparent XPM 3 file does not start with '/* XPM */'. " - "First line is '%s'", xpm3_signature); - - /* Read the assignment line */ -- getline(line, sizeof(line), stream); -+ get_line(line, sizeof(line), stream); - if (strncmp(line, "static char", 11) != 0) - pm_error("Cannot find data structure declaration. Expected a " - "line starting with 'static char', but found the line " - "'%s'.", line); - - /* Read the hints line */ -- getline(line, sizeof(line), stream); -+ get_line(line, sizeof(line), stream); - /* skip the comment line if any */ - if (!strncmp(line, "/*", 2)) { - while (!strstr(line, "*/")) -- getline(line, sizeof(line), stream); -- getline(line, sizeof(line), stream); -+ get_line(line, sizeof(line), stream); -+ get_line(line, sizeof(line), stream); - } - if (sscanf(line, ""%d %d %d %d",", widthP, heightP, - ncolorsP, chars_per_pixelP) != 4) -@@ -427,10 +427,10 @@ - *transparentP = -1; /* initial value */ - - for (seqNum = 0; seqNum < *ncolorsP; seqNum++) { -- getline(line, sizeof(line), stream); -+ get_line(line, sizeof(line), stream); - /* skip the comment line if any */ - if (!strncmp(line, "/*", 2)) -- getline(line, sizeof(line), stream); -+ get_line(line, sizeof(line), stream); - - interpretXpm3ColorTableLine(line, seqNum, *chars_per_pixelP, - *colorsP, *ptabP, transparentP); -@@ -445,7 +445,7 @@ - pixel ** const colorsP, int ** const ptabP) { - /*---------------------------------------------------------------------------- - Read the header of the XPM file on stream 'stream'. Assume the -- getline() stream is presently positioned to the beginning of the -+ get_line() stream is presently positioned to the beginning of the - file and it is a Version 1 XPM file. Leave the stream positioned - after the header. - -@@ -464,7 +464,7 @@ - /* Read the initial defines. */ - processedStaticChar = FALSE; - while (!processedStaticChar) { -- getline(line, sizeof(line), stream); -+ get_line(line, sizeof(line), stream); - - if (sscanf(line, "#define %s %d", str1, &v) == 2) { - char *t1; -@@ -512,7 +512,7 @@ - /* If there's a monochrome color table, skip it. */ - if (!strncmp(t1, "mono", 4)) { - for (;;) { -- getline(line, sizeof(line), stream); -+ get_line(line, sizeof(line), stream); - if (!strncmp(line, "static char", 11)) - break; - } -@@ -533,7 +533,7 @@ - - /* Read color table. */ - for (i = 0; i < *ncolorsP; ++i) { -- getline(line, sizeof(line), stream); -+ get_line(line, sizeof(line), stream); - - if ((t1 = strchr(line, '"')) == NULL) - pm_error("D error scanning color table"); -@@ -569,7 +569,7 @@ - "static char ..."). - */ - for (;;) { -- getline(line, sizeof(line), stream); -+ get_line(line, sizeof(line), stream); - if (strncmp(line, "static char", 11) == 0) - break; - } -@@ -660,7 +660,7 @@ - backup = FALSE; - - /* Read the header line */ -- getline(line, sizeof(line), stream); -+ get_line(line, sizeof(line), stream); - backup = TRUE; /* back up so next read reads this line again */ - - rc = sscanf(line, "/* %s */", str1); -@@ -681,7 +681,7 @@ - pm_error("Could not get %d bytes of memory for image", totalpixels); - cursor = *dataP; - maxcursor = *dataP + totalpixels - 1; -- getline(line, sizeof(line), stream); -+ get_line(line, sizeof(line), stream); - /* read next line (first line may not always start with comment) */ - while (cursor <= maxcursor) { - if (strncmp(line, "/*", 2) == 0) { -@@ -691,7 +691,7 @@ - ncolors, ptab, &cursor, maxcursor); - } - if (cursor <= maxcursor) -- getline(line, sizeof(line), stream); -+ get_line(line, sizeof(line), stream); - } - if (ptab) free(ptab); - } - -Thanks, - --- -Colin Watson [cjwatson@ubuntu.com] - - - - diff --git a/src/patches/openssl-1.0.0-beta5-enginesdir.patch b/src/patches/openssl-1.0.0-beta5-enginesdir.patch deleted file mode 100644 index d942d6e2b..000000000 --- a/src/patches/openssl-1.0.0-beta5-enginesdir.patch +++ /dev/null @@ -1,52 +0,0 @@ -diff -up openssl-1.0.0-beta5/Configure.enginesdir openssl-1.0.0-beta5/Configure ---- openssl-1.0.0-beta5/Configure.enginesdir 2010-01-20 18:07:05.000000000 +0100 -+++ openssl-1.0.0-beta5/Configure 2010-01-20 18:10:48.000000000 +0100 -@@ -622,6 +622,7 @@ my $idx_multilib = $idx++; - my $prefix=""; - my $libdir=""; - my $openssldir=""; -+my $enginesdir=""; - my $exe_ext=""; - my $install_prefix= "$ENV{'INSTALL_PREFIX'}"; - my $cross_compile_prefix=""; -@@ -833,6 +834,10 @@ PROCESS_ARGS: - { - $openssldir=$1; - } -+ elsif (/^--enginesdir=(.*)$/) -+ { -+ $enginesdir=$1; -+ } - elsif (/^--install.prefix=(.*)$/) - { - $install_prefix=$1; -@@ -1053,7 +1058,7 @@ chop $prefix if $prefix =~ /./$/; - - $openssldir=$prefix . "/ssl" if $openssldir eq ""; - $openssldir=$prefix . "/" . $openssldir if $openssldir !~ /(^/|^[a-zA-Z]:[\/])/; -- -+$enginesdir="$prefix/lib/engines" if $enginesdir eq ""; - - print "IsMK1MF=$IsMK1MF\n"; - -@@ -1673,7 +1678,7 @@ while (<IN>) - } - elsif (/^#define\s+ENGINESDIR/) - { -- my $foo = "$prefix/$libdir/engines"; -+ my $foo = "$enginesdir"; - $foo =~ s/\/\\/g; - print OUT "#define ENGINESDIR "$foo"\n"; - } -diff -up openssl-1.0.0-beta5/engines/Makefile.enginesdir openssl-1.0.0-beta5/engines/Makefile ---- openssl-1.0.0-beta5/engines/Makefile.enginesdir 2010-01-16 21:06:09.000000000 +0100 -+++ openssl-1.0.0-beta5/engines/Makefile 2010-01-20 18:07:05.000000000 +0100 -@@ -124,7 +124,7 @@ install: - sfx=".so"; \ - cp cyg$$l.dll $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new; \ - fi; \ -- chmod 555 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new; \ -+ chmod 755 $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new; \ - mv -f $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx.new $(INSTALL_PREFIX)$(INSTALLTOP)/$(LIBDIR)/engines/$$pfx$$l$$sfx ); \ - done; \ - fi diff --git a/src/patches/openssl-1.0.2a-rpmbuild.patch b/src/patches/openssl-1.0.2a-rpmbuild.patch deleted file mode 100644 index db1460cb7..000000000 --- a/src/patches/openssl-1.0.2a-rpmbuild.patch +++ /dev/null @@ -1,115 +0,0 @@ -diff -up openssl-1.0.2e/Configure.rpmbuild openssl-1.0.2e/Configure ---- openssl-1.0.2e/Configure.rpmbuild 2015-12-03 15:04:23.000000000 +0100 -+++ openssl-1.0.2e/Configure 2015-12-04 13:20:22.996835604 +0100 -@@ -365,8 +365,8 @@ my %table=( - #### - # *-generic* is endian-neutral target, but ./config is free to - # throw in -D[BL]_ENDIAN, whichever appropriate... --"linux-generic32","gcc:-O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.$(SHLIB_MAJOR).$(SHLIB_MINOR)", --"linux-ppc", "gcc:-DB_ENDIAN -O3 -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${ppc32_asm}:linux32:dlfcn:linux-shared:-fPIC::.so.$(SHLIB_MAJOR).$(SHLIB_MINOR)", -+"linux-generic32","gcc:-Wall $(RPM_OPT_FLAGS)::-D_REENTRANT::-Wl,-z,relro -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC:$(RPM_OPT_FLAGS):.so.$(SHLIB_SONAMEVER)", -+"linux-ppc", "gcc:-DB_ENDIAN -Wall $(RPM_OPT_FLAGS)::-D_REENTRANT::-Wl,-z,relro -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${ppc32_asm}:linux32:dlfcn:linux-shared:-fPIC:$(RPM_OPT_FLAGS):.so.$(SHLIB_SONAMEVER)", - - ####################################################################### - # Note that -march is not among compiler options in below linux-armv4 -@@ -395,31 +395,31 @@ my %table=( - # - # ./Configure linux-armv4 -march=armv6 -D__ARM_MAX_ARCH__=8 - # --"linux-armv4", "gcc: -O3 -Wall::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${armv4_asm}:dlfcn:linux-shared:-fPIC::.so.$(SHLIB_MAJOR).$(SHLIB_MINOR)", --"linux-aarch64","gcc: -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${aarch64_asm}:linux64:dlfcn:linux-shared:-fPIC::.so.$(SHLIB_MAJOR).$(SHLIB_MINOR)", -+"linux-armv4", "gcc:-Wall $(RPM_OPT_FLAGS)::-D_REENTRANT::-Wl,-z,relro -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${armv4_asm}:dlfcn:linux-shared:-fPIC:$(RPM_OPT_FLAGS):.so.$(SHLIB_SONAMEVER)", -+"linux-aarch64","gcc:-DL_ENDIAN -Wall $(RPM_OPT_FLAGS)::-D_REENTRANT::-Wl,-z,relro -ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${aarch64_asm}:linux64:dlfcn:linux-shared:-fPIC:$(RPM_OPT_FLAGS):.so.$(SHLIB_SONAMEVER):::64", - # Configure script adds minimally required -march for assembly support, - # if no -march was specified at command line. mips32 and mips64 below - # refer to contemporary MIPS Architecture specifications, MIPS32 and - # MIPS64, rather than to kernel bitness. --"linux-mips32", "gcc:-mabi=32 -O3 -Wall -DBN_DIV3W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${mips32_asm}:o32:dlfcn:linux-shared:-fPIC::.so.$(SHLIB_MAJOR).$(SHLIB_MINOR)", --"linux-mips64", "gcc:-mabi=n32 -O3 -Wall -DBN_DIV3W::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${mips64_asm}:n32:dlfcn:linux-shared:-fPIC:-mabi=n32:.so.$(SHLIB_MAJOR).$(SHLIB_MINOR):::32", --"linux64-mips64", "gcc:-mabi=64 -O3 -Wall -DBN_DIV3W::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${mips64_asm}:64:dlfcn:linux-shared:-fPIC:-mabi=64:.so.$(SHLIB_MAJOR).$(SHLIB_MINOR):::64", -+"linux-mips32", "gcc:-mabi=32 -Wall $(RPM_OPT_FLAGS) -DBN_DIV3W::-D_REENTRANT::-Wl,-z,relro -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${mips32_asm}:o32:dlfcn:linux-shared:-fPIC:$(RPM_OPT_FLAGS):.so.$(SHLIB_SONAMEVER)", -+"linux-mips64", "gcc:-mabi=n32 -Wall $(RPM_OPT_FLAGS) -DBN_DIV3W::-D_REENTRANT::-Wl,-z,relro -ldl:SIXTY_FOUR_BIT RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${mips64_asm}:n32:dlfcn:linux-shared:-fPIC:-mabi=n32 $(RPM_OPT_FLAGS):.so.$(SHLIB_SONAMEVER):::32", -+"linux64-mips64", "gcc:-mabi=64 -Wall $(RPM_OPT_FLAGS) -DBN_DIV3W::-D_REENTRANT::-Wl,-z,relro -ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${mips64_asm}:64:dlfcn:linux-shared:-fPIC:-mabi=64 $(RPM_OPT_FLAGS):.so.$(SHLIB_SONAMEVER):::64", - #### IA-32 targets... - "linux-ia32-icc", "icc:-DL_ENDIAN -O2::-D_REENTRANT::-ldl -no_cpprt:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-KPIC::.so.$(SHLIB_MAJOR).$(SHLIB_MINOR)", --"linux-elf", "gcc:-DL_ENDIAN -O3 -fomit-frame-pointer -Wall::-D_REENTRANT::-ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC::.so.$(SHLIB_MAJOR).$(SHLIB_MINOR)", -+"linux-elf", "gcc:-DL_ENDIAN -Wall $(RPM_OPT_FLAGS)::-D_REENTRANT::-Wl,-z,relro -ldl:BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_elf_asm}:dlfcn:linux-shared:-fPIC:$(RPM_OPT_FLAGS):.so.$(SHLIB_SONAMEVER)", - "linux-aout", "gcc:-DL_ENDIAN -O3 -fomit-frame-pointer -march=i486 -Wall::(unknown):::BN_LLONG ${x86_gcc_des} ${x86_gcc_opts}:${x86_asm}:a.out", - #### --"linux-generic64","gcc:-O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC::.so.$(SHLIB_MAJOR).$(SHLIB_MINOR)", --"linux-ppc64", "gcc:-m64 -DB_ENDIAN -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${ppc64_asm}:linux64:dlfcn:linux-shared:-fPIC:-m64:.so.$(SHLIB_MAJOR).$(SHLIB_MINOR):::64", --"linux-ppc64le","gcc:-m64 -DL_ENDIAN -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:$ppc64_asm:linux64le:dlfcn:linux-shared:-fPIC:-m64:.so.$(SHLIB_MAJOR).$(SHLIB_MINOR):::", --"linux-ia64", "gcc:-DL_ENDIAN -DTERMIO -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_UNROLL DES_INT:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.$(SHLIB_MAJOR).$(SHLIB_MINOR)", -+"linux-generic64","gcc:-Wall $(RPM_OPT_FLAGS)::-D_REENTRANT::-Wl,-z,relro -ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL BF_PTR:${no_asm}:dlfcn:linux-shared:-fPIC:$(RPM_OPT_FLAGS):.so.$(SHLIB_SONAMEVER):::64", -+"linux-ppc64", "gcc:-m64 -DB_ENDIAN -Wall $(RPM_OPT_FLAGS)::-D_REENTRANT::-Wl,-z,relro -ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:${ppc64_asm}:linux64:dlfcn:linux-shared:-fPIC:-m64 $(RPM_OPT_FLAGS):.so.$(SHLIB_SONAMEVER):::64", -+"linux-ppc64le","gcc:-m64 -DL_ENDIAN -Wall $(RPM_OPT_FLAGS)::-D_REENTRANT::-Wl,-z,relro -ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_RISC1 DES_UNROLL:$ppc64_asm:linux64le:dlfcn:linux-shared:-fPIC:-m64 $(RPM_OPT_FLAGS):.so.$(SHLIB_SONAMEVER):::64", -+"linux-ia64", "gcc:-DL_ENDIAN -Wall $(RPM_OPT_FLAGS)::-D_REENTRANT::-Wl,-z,relro -ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_UNROLL DES_INT:${ia64_asm}:dlfcn:linux-shared:-fPIC:$(RPM_OPT_FLAGS):.so.$(SHLIB_SONAMEVER)", - "linux-ia64-icc","icc:-DL_ENDIAN -O2 -Wall::-D_REENTRANT::-ldl -no_cpprt:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_RISC1 DES_INT:${ia64_asm}:dlfcn:linux-shared:-fPIC::.so.$(SHLIB_MAJOR).$(SHLIB_MINOR)", --"linux-x86_64", "gcc:-m64 -DL_ENDIAN -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-m64:.so.$(SHLIB_MAJOR).$(SHLIB_MINOR):::64", -+"linux-x86_64", "gcc:-m64 -DL_ENDIAN -Wall $(RPM_OPT_FLAGS)::-D_REENTRANT::-Wl,-z,relro -ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-m64 $(RPM_OPT_FLAGS):.so.$(SHLIB_SONAMEVER):::64", - "linux-x86_64-clang", "clang: -m64 -DL_ENDIAN -O3 -Wall -Wextra $clang_disabled_warnings -Qunused-arguments::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-m64:.so.$(SHLIB_MAJOR).$(SHLIB_MINOR):::64", - "debug-linux-x86_64-clang", "clang: -DBN_DEBUG -DREF_CHECK -DCONF_DEBUG -DCRYPTO_MDEBUG -m64 -DL_ENDIAN -g -Wall -Wextra $clang_disabled_warnings -Qunused-arguments::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-m64:.so.$(SHLIB_MAJOR).$(SHLIB_MINOR):::64", - "linux-x86_64-icc", "icc:-DL_ENDIAN -O2::-D_REENTRANT::-ldl -no_cpprt:SIXTY_FOUR_BIT_LONG RC4_CHUNK DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC::.so.$(SHLIB_MAJOR).$(SHLIB_MINOR):::64", - "linux-x32", "gcc:-mx32 -DL_ENDIAN -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT RC4_CHUNK_LL DES_INT DES_UNROLL:${x86_64_asm}:elf:dlfcn:linux-shared:-fPIC:-mx32:.so.$(SHLIB_MAJOR).$(SHLIB_MINOR):::x32", --"linux64-s390x", "gcc:-m64 -DB_ENDIAN -O3 -Wall::-D_REENTRANT::-ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL:${s390x_asm}:64:dlfcn:linux-shared:-fPIC:-m64:.so.$(SHLIB_MAJOR).$(SHLIB_MINOR):::64", -+"linux64-s390x", "gcc:-m64 -DB_ENDIAN -Wall $(RPM_OPT_FLAGS)::-D_REENTRANT::-Wl,-z,relro -ldl:SIXTY_FOUR_BIT_LONG RC4_CHAR RC4_CHUNK DES_INT DES_UNROLL:${s390x_asm}:64:dlfcn:linux-shared:-fPIC:-m64 $(RPM_OPT_FLAGS):.so.$(SHLIB_SONAMEVER):::64", - #### So called "highgprs" target for z/Architecture CPUs - # "Highgprs" is kernel feature first implemented in Linux 2.6.32, see - # /proc/cpuinfo. The idea is to preserve most significant bits of -@@ -437,12 +437,12 @@ my %table=( - #### SPARC Linux setups - # Ray Miller ray.miller@computing-services.oxford.ac.uk has patiently - # assisted with debugging of following two configs. --"linux-sparcv8","gcc:-mcpu=v8 -DB_ENDIAN -O3 -fomit-frame-pointer -Wall -DBN_DIV2W::-D_REENTRANT::-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${sparcv8_asm}:dlfcn:linux-shared:-fPIC::.so.$(SHLIB_MAJOR).$(SHLIB_MINOR)", -+"linux-sparcv8","gcc:-mcpu=v8 -DB_ENDIAN -Wall $(RPM_OPT_FLAGS) -DBN_DIV2W::-D_REENTRANT::-Wl,-z,relro -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${sparcv8_asm}:dlfcn:linux-shared:-fPIC:$(RPM_OPT_FLAGS):.so.$(SHLIB_SONAMEVER)", - # it's a real mess with -mcpu=ultrasparc option under Linux, but - # -Wa,-Av8plus should do the trick no matter what. --"linux-sparcv9","gcc:-m32 -mcpu=ultrasparc -DB_ENDIAN -O3 -fomit-frame-pointer -Wall -Wa,-Av8plus -DBN_DIV2W::-D_REENTRANT:ULTRASPARC:-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${sparcv9_asm}:dlfcn:linux-shared:-fPIC:-m32:.so.$(SHLIB_MAJOR).$(SHLIB_MINOR)", -+"linux-sparcv9","gcc:-m32 -mcpu=ultrasparc -DB_ENDIAN -Wall $(RPM_OPT_FLAGS) -Wa,-Av8plus -DBN_DIV2W::-D_REENTRANT:ULTRASPARC:-Wl,-z,relro -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_UNROLL BF_PTR:${sparcv9_asm}:dlfcn:linux-shared:-fPIC:-m32 $(RPM_OPT_FLAGS):.so.$(SHLIB_SONAMEVER)", - # GCC 3.1 is a requirement --"linux64-sparcv9","gcc:-m64 -mcpu=ultrasparc -DB_ENDIAN -O3 -fomit-frame-pointer -Wall::-D_REENTRANT:ULTRASPARC:-ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR:${sparcv9_asm}:dlfcn:linux-shared:-fPIC:-m64:.so.$(SHLIB_MAJOR).$(SHLIB_MINOR):::64", -+"linux64-sparcv9","gcc:-m64 -mcpu=ultrasparc -DB_ENDIAN -Wall $(RPM_OPT_FLAGS)::-D_REENTRANT:ULTRASPARC:-Wl,-z,relro -ldl:BN_LLONG RC4_CHAR RC4_CHUNK DES_INT DES_PTR DES_RISC1 DES_UNROLL BF_PTR:${sparcv9_asm}:dlfcn:linux-shared:-fPIC:-m64 $(RPM_OPT_FLAGS):.so.$(SHLIB_SONAMEVER):::64", - #### Alpha Linux with GNU C and Compaq C setups - # Special notes: - # - linux-alpha+bwx-gcc is ment to be used from ./config only. If you -@@ -1767,7 +1767,7 @@ while (<IN>) - elsif ($shared_extension ne "" && $shared_extension =~ /^.s([ol]).[^.]*.[^.]*$/) - { - my $sotmp = $1; -- s/^SHARED_LIBS_LINK_EXTS=.*/SHARED_LIBS_LINK_EXTS=.s$sotmp.$(SHLIB_MAJOR) .s$sotmp/; -+ s/^SHARED_LIBS_LINK_EXTS=.*/SHARED_LIBS_LINK_EXTS=.s$sotmp.$(SHLIB_SONAMEVER) .s$sotmp/; - } - elsif ($shared_extension ne "" && $shared_extension =~ /^.[^.]*.[^.]*.dylib$/) - { -diff -up openssl-1.0.2e/Makefile.org.rpmbuild openssl-1.0.2e/Makefile.org ---- openssl-1.0.2e/Makefile.org.rpmbuild 2015-12-03 15:04:23.000000000 +0100 -+++ openssl-1.0.2e/Makefile.org 2015-12-04 13:18:44.913538616 +0100 -@@ -10,6 +10,7 @@ SHLIB_VERSION_HISTORY= - SHLIB_MAJOR= - SHLIB_MINOR= - SHLIB_EXT= -+SHLIB_SONAMEVER=10 - PLATFORM=dist - OPTIONS= - CONFIGURE_ARGS= -@@ -341,10 +342,9 @@ clean-shared: - link-shared: - @ set -e; for i in $(SHLIBDIRS); do \ - $(MAKE) -f $(HERE)/Makefile.shared -e $(BUILDENV) \ -- LIBNAME=$$i LIBVERSION=$(SHLIB_MAJOR).$(SHLIB_MINOR) \ -+ LIBNAME=$$i LIBVERSION=$(SHLIB_SONAMEVER) \ - LIBCOMPATVERSIONS=";$(SHLIB_VERSION_HISTORY)" \ - symlink.$(SHLIB_TARGET); \ -- libs="$$libs -l$$i"; \ - done - - build-shared: do_$(SHLIB_TARGET) link-shared -@@ -355,7 +355,7 @@ do_$(SHLIB_TARGET): - libs="$(LIBKRB5) $$libs"; \ - fi; \ - $(CLEARENV) && $(MAKE) -f Makefile.shared -e $(BUILDENV) \ -- LIBNAME=$$i LIBVERSION=$(SHLIB_MAJOR).$(SHLIB_MINOR) \ -+ LIBNAME=$$i LIBVERSION=$(SHLIB_SONAMEVER) \ - LIBCOMPATVERSIONS=";$(SHLIB_VERSION_HISTORY)" \ - LIBDEPS="$$libs $(EX_LIBS)" \ - link_a.$(SHLIB_TARGET); \ diff --git a/src/patches/openssl-1.0.2a_disable_ssse3_for_amd.patch b/src/patches/openssl-1.0.2a_disable_ssse3_for_amd.patch deleted file mode 100644 index 097cc8071..000000000 --- a/src/patches/openssl-1.0.2a_disable_ssse3_for_amd.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -Naur openssl-1.0.2a.org/crypto/x86cpuid.pl openssl-1.0.2a/crypto/x86cpuid.pl ---- openssl-1.0.2a.org/crypto/x86cpuid.pl 2015-03-19 14:30:36.000000000 +0100 -+++ openssl-1.0.2a/crypto/x86cpuid.pl 2015-04-28 13:47:57.853521020 +0200 -@@ -71,6 +71,7 @@ - &mov ("eax",1); - &xor ("ecx","ecx"); - &cpuid (); -+ &and ("ecx",0xfffffdff); # clear SSSE3 because it is incredible slow on AMD's - &bt ("edx",28); - &jnc (&label("generic")); - &shr ("ebx",16); diff --git a/src/patches/openssl-1.0.2g-disable-sslv2v3.patch b/src/patches/openssl-1.0.2g-disable-sslv2v3.patch deleted file mode 100644 index 06f51322b..000000000 --- a/src/patches/openssl-1.0.2g-disable-sslv2v3.patch +++ /dev/null @@ -1,18 +0,0 @@ -diff -up openssl-1.0.2g/ssl/ssl_lib.c.v2v3 openssl-1.0.2g/ssl/ssl_lib.c ---- openssl-1.0.2g/ssl/ssl_lib.c.v2v3 2016-03-01 16:38:26.879142021 +0100 -+++ openssl-1.0.2g/ssl/ssl_lib.c 2016-03-01 16:41:32.977353769 +0100 -@@ -2055,11 +2055,11 @@ SSL_CTX *SSL_CTX_new(const SSL_METHOD *m - ret->options |= SSL_OP_LEGACY_SERVER_CONNECT; - - /* -- * Disable SSLv2 by default, callers that want to enable SSLv2 will have to -- * explicitly clear this option via either of SSL_CTX_clear_options() or -+ * Disable SSLv2 and SSLv3 by default, callers that want to enable these will have to -+ * explicitly clear these options via either of SSL_CTX_clear_options() or - * SSL_clear_options(). - */ -- ret->options |= SSL_OP_NO_SSLv2; -+ ret->options |= SSL_OP_NO_SSLv2 | SSL_OP_NO_SSLv3; - - return (ret); - err: diff --git a/src/patches/pam-0.99.10.0-rlimit-build-fix.patch b/src/patches/pam-0.99.10.0-rlimit-build-fix.patch deleted file mode 100644 index 5fdee07fe..000000000 --- a/src/patches/pam-0.99.10.0-rlimit-build-fix.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 8e508f23bf5ed727649c99bbd540f7b1c2c2bd35 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Stevan=20Baji=C4=87?= stevan@bajic.ch -Date: Mon, 9 Jul 2012 09:43:11 +0200 -Subject: [PATCH] RLIMIT_* variables are no longer defined unless you - explicitly include sys/resource.h. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Signed-off-by: Diego Elio Pettenò flameeyes@flameeyes.eu - -modules/pam_unix/pam_unix_acct.c: Include sys/resource.h. ---- - modules/pam_unix/pam_unix_acct.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/modules/pam_unix/pam_unix_acct.c b/modules/pam_unix/pam_unix_acct.c -index 8e90cc9..4a362f8 100644 ---- a/modules/pam_unix/pam_unix_acct.c -+++ b/modules/pam_unix/pam_unix_acct.c -@@ -41,6 +41,7 @@ - #include <string.h> - #include <unistd.h> - #include <sys/types.h> -+#include <sys/resource.h> - #include <syslog.h> - #include <pwd.h> - #include <shadow.h> diff --git a/src/patches/pcre-8.38-upstream_fixes-1.patch b/src/patches/pcre-8.38-upstream_fixes-1.patch deleted file mode 100644 index d366e22e5..000000000 --- a/src/patches/pcre-8.38-upstream_fixes-1.patch +++ /dev/null @@ -1,1408 +0,0 @@ -Submitted By: Ken Moffat <ken at linuxfromscratch dot org> -Date: 2016-03-16 -Initial Package Version: 8.38 -Upstream Status: Applied -Origin: Upstream, backported to 8.38 by Petr Písař at redhat -Description: Various fixes, including for CVE-2016-1263 and many other -bugs which have been fixed upstream. Many of these bugs were found by -fuzzing, upstream is trying to persuade its users to move to pcre2 and -giving low priority to further pcre1 maintenance releases. - -From 3c80e02cd464ea049e117b423fd48fab294c51a9 Mon Sep 17 00:00:00 2001 -From: ph10 ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15 -Date: Thu, 26 Nov 2015 20:29:13 +0000 -Subject: [PATCH] Fix auto-callout (?# comment bug. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1611 2f5784b3-3f2a-0410-8824-cb99058d5e15 - -Petr Pisar: Ported to 8.38. - -diff --git a/pcre_compile.c b/pcre_compile.c -index 4d3b313..3360a8b 100644 ---- a/pcre_compile.c -+++ b/pcre_compile.c -@@ -4699,6 +4699,23 @@ for (;; ptr++) - } - } - -+ /* Skip over (?# comments. We need to do this here because we want to know if -+ the next thing is a quantifier, and these comments may come between an item -+ and its quantifier. */ -+ -+ if (c == CHAR_LEFT_PARENTHESIS && ptr[1] == CHAR_QUESTION_MARK && -+ ptr[2] == CHAR_NUMBER_SIGN) -+ { -+ ptr += 3; -+ while (*ptr != CHAR_NULL && *ptr != CHAR_RIGHT_PARENTHESIS) ptr++; -+ if (*ptr == CHAR_NULL) -+ { -+ *errorcodeptr = ERR18; -+ goto FAILED; -+ } -+ continue; -+ } -+ - /* See if the next thing is a quantifier. */ - - is_quantifier = -@@ -6529,21 +6546,6 @@ for (;; ptr++) - case CHAR_LEFT_PARENTHESIS: - ptr++; - -- /* First deal with comments. Putting this code right at the start ensures -- that comments have no bad side effects. */ -- -- if (ptr[0] == CHAR_QUESTION_MARK && ptr[1] == CHAR_NUMBER_SIGN) -- { -- ptr += 2; -- while (*ptr != CHAR_NULL && *ptr != CHAR_RIGHT_PARENTHESIS) ptr++; -- if (*ptr == CHAR_NULL) -- { -- *errorcodeptr = ERR18; -- goto FAILED; -- } -- continue; -- } -- - /* Now deal with various "verbs" that can be introduced by '*'. */ - - if (ptr[0] == CHAR_ASTERISK && (ptr[1] == ':' -diff --git a/testdata/testinput2 b/testdata/testinput2 -index e2e520f..92e3359 100644 ---- a/testdata/testinput2 -+++ b/testdata/testinput2 -@@ -4217,4 +4217,12 @@ backtracking verbs. --/ - - /a[[:punct:]b]/BZ - -+/L(?#(|++<!(2)?/BZ -+ -+/L(?#(|++<!(2)?/BOZ -+ -+/L(?#(|++<!(2)?/BCZ -+ -+/L(?#(|++<!(2)?/BCOZ -+ - /-- End of testinput2 --/ -diff --git a/testdata/testinput7 b/testdata/testinput7 -index e411a4b..00b9738 100644 ---- a/testdata/testinput7 -+++ b/testdata/testinput7 -@@ -853,4 +853,8 @@ of case for anything other than the ASCII letters. --/ - - /a[b[:punct:]]/8WBZ - -+/L(?#(|++<!(2)?/B8COZ -+ -+/L(?#(|++<!(2)?/B8WCZ -+ - /-- End of testinput7 --/ -diff --git a/testdata/testoutput2 b/testdata/testoutput2 -index 85c565d..2cf7a90 100644 ---- a/testdata/testoutput2 -+++ b/testdata/testoutput2 -@@ -14574,4 +14574,40 @@ No match - End - ------------------------------------------------------------------ - -+/L(?#(|++<!(2)?/BZ -+------------------------------------------------------------------ -+ Bra -+ L?+ -+ Ket -+ End -+------------------------------------------------------------------ -+ -+/L(?#(|++<!(2)?/BOZ -+------------------------------------------------------------------ -+ Bra -+ L? -+ Ket -+ End -+------------------------------------------------------------------ -+ -+/L(?#(|++<!(2)?/BCZ -+------------------------------------------------------------------ -+ Bra -+ Callout 255 0 14 -+ L?+ -+ Callout 255 14 0 -+ Ket -+ End -+------------------------------------------------------------------ -+ -+/L(?#(|++<!(2)?/BCOZ -+------------------------------------------------------------------ -+ Bra -+ Callout 255 0 14 -+ L? -+ Callout 255 14 0 -+ Ket -+ End -+------------------------------------------------------------------ -+ - /-- End of testinput2 --/ -diff --git a/testdata/testoutput7 b/testdata/testoutput7 -index cc9ebdd..fdfff64 100644 ---- a/testdata/testoutput7 -+++ b/testdata/testoutput7 -@@ -2348,4 +2348,24 @@ No match - End - ------------------------------------------------------------------ - -+/L(?#(|++<!(2)?/B8COZ -+------------------------------------------------------------------ -+ Bra -+ Callout 255 0 14 -+ L? -+ Callout 255 14 0 -+ Ket -+ End -+------------------------------------------------------------------ -+ -+/L(?#(|++<!(2)?/B8WCZ -+------------------------------------------------------------------ -+ Bra -+ Callout 255 0 14 -+ L?+ -+ Callout 255 14 0 -+ Ket -+ End -+------------------------------------------------------------------ -+ - /-- End of testinput7 --/ --- -2.4.3 - -From ef6b10fcde41a2687f38d4a9ff2886b037948a1b Mon Sep 17 00:00:00 2001 -From: ph10 ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15 -Date: Fri, 27 Nov 2015 17:13:13 +0000 -Subject: [PATCH 1/5] Fix negated POSIX class within negated overall class UCP - bug. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1612 2f5784b3-3f2a-0410-8824-cb99058d5e15 - -Petr Písař: Ported to 8.38. -diff --git a/pcre_compile.c b/pcre_compile.c -index 3360a8b..3670f1e 100644 ---- a/pcre_compile.c -+++ b/pcre_compile.c -@@ -5063,20 +5063,22 @@ for (;; ptr++) - ptr = tempptr + 1; - continue; - -- /* For the other POSIX classes (ascii, xdigit) we are going to fall -- through to the non-UCP case and build a bit map for characters with -- code points less than 256. If we are in a negated POSIX class -- within a non-negated overall class, characters with code points -- greater than 255 must all match. In the special case where we have -- not yet generated any xclass data, and this is the final item in -- the overall class, we need do nothing: later on, the opcode -+ /* For the other POSIX classes (ascii, cntrl, xdigit) we are going -+ to fall through to the non-UCP case and build a bit map for -+ characters with code points less than 256. If we are in a negated -+ POSIX class, characters with code points greater than 255 must -+ either all match or all not match. In the special case where we -+ have not yet generated any xclass data, and this is the final item -+ in the overall class, we need do nothing: later on, the opcode - OP_NCLASS will be used to indicate that characters greater than 255 - are acceptable. If we have already seen an xclass item or one may - follow (we have to assume that it might if this is not the end of -- the class), explicitly match all wide codepoints. */ -+ the class), explicitly list all wide codepoints, which will then -+ either not match or match, depending on whether the class is or is -+ not negated. */ - - default: -- if (!negate_class && local_negate && -+ if (local_negate && - (xclass || tempptr[2] != CHAR_RIGHT_SQUARE_BRACKET)) - { - *class_uchardata++ = XCL_RANGE; -diff --git a/testdata/testinput6 b/testdata/testinput6 -index aeb62a0..a178d3d 100644 ---- a/testdata/testinput6 -+++ b/testdata/testinput6 -@@ -1553,4 +1553,13 @@ - \x{200} - \x{37e} - -+/[^[:^ascii:]\d]/8W -+ a -+ ~ -+ 0 -+ \a -+ \x{7f} -+ \x{389} -+ \x{20ac} -+ - /-- End of testinput6 --/ -diff --git a/testdata/testoutput6 b/testdata/testoutput6 -index beb85aa..b64dc0d 100644 ---- a/testdata/testoutput6 -+++ b/testdata/testoutput6 -@@ -2557,4 +2557,20 @@ No match - \x{37e} - 0: \x{37e} - -+/[^[:^ascii:]\d]/8W -+ a -+ 0: a -+ ~ -+ 0: ~ -+ 0 -+No match -+ \a -+ 0: \x{07} -+ \x{7f} -+ 0: \x{7f} -+ \x{389} -+No match -+ \x{20ac} -+No match -+ - /-- End of testinput6 --/ --- -2.4.3 - -From bfc1dfa660c24dc7a75108d934290e50d7db2719 Mon Sep 17 00:00:00 2001 -From: ph10 ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15 -Date: Fri, 27 Nov 2015 17:41:04 +0000 -Subject: [PATCH 2/5] Fix bug for isolated \E between an item and its qualifier - when auto callout is set. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1613 2f5784b3-3f2a-0410-8824-cb99058d5e15 - -Petr Písař: Ported to 8.38. - -diff --git a/pcre_compile.c b/pcre_compile.c -index 3670f1e..5786cd3 100644 ---- a/pcre_compile.c -+++ b/pcre_compile.c -@@ -4645,9 +4645,10 @@ for (;; ptr++) - goto FAILED; - } - -- /* If in \Q...\E, check for the end; if not, we have a literal */ -+ /* If in \Q...\E, check for the end; if not, we have a literal. Otherwise an -+ isolated \E is ignored. */ - -- if (inescq && c != CHAR_NULL) -+ if (c != CHAR_NULL) - { - if (c == CHAR_BACKSLASH && ptr[1] == CHAR_E) - { -@@ -4655,7 +4656,7 @@ for (;; ptr++) - ptr++; - continue; - } -- else -+ else if (inescq) - { - if (previous_callout != NULL) - { -@@ -4670,7 +4671,6 @@ for (;; ptr++) - } - goto NORMAL_CHAR; - } -- /* Control does not reach here. */ - } - - /* In extended mode, skip white space and comments. We need a loop in order -diff --git a/testdata/testinput2 b/testdata/testinput2 -index 92e3359..e8ca4fe 100644 ---- a/testdata/testinput2 -+++ b/testdata/testinput2 -@@ -4225,4 +4225,6 @@ backtracking verbs. --/ - - /L(?#(|++<!(2)?/BCOZ - -+/(A*)\E+/CBZ -+ - /-- End of testinput2 --/ -diff --git a/testdata/testoutput2 b/testdata/testoutput2 -index 2cf7a90..09756b8 100644 ---- a/testdata/testoutput2 -+++ b/testdata/testoutput2 -@@ -14610,4 +14610,18 @@ No match - End - ------------------------------------------------------------------ - -+/(A*)\E+/CBZ -+------------------------------------------------------------------ -+ Bra -+ Callout 255 0 7 -+ SCBra 1 -+ Callout 255 1 2 -+ A* -+ Callout 255 3 0 -+ KetRmax -+ Callout 255 7 0 -+ Ket -+ End -+------------------------------------------------------------------ -+ - /-- End of testinput2 --/ --- -2.4.3 - -From 108377b836fc29a84f5286287629d96549b1c777 Mon Sep 17 00:00:00 2001 -From: ph10 ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15 -Date: Sun, 29 Nov 2015 17:38:25 +0000 -Subject: [PATCH 3/5] Give error for regexec with pmatch=NULL and REG_STARTEND - set. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1614 2f5784b3-3f2a-0410-8824-cb99058d5e15 - -Petr Písař: Ported to 8.38. - -diff --git a/pcreposix.c b/pcreposix.c -index f024423..dcc13ef 100644 ---- a/pcreposix.c -+++ b/pcreposix.c -@@ -364,6 +364,7 @@ start location rather than being passed as a PCRE "starting offset". */ - - if ((eflags & REG_STARTEND) != 0) - { -+ if (pmatch == NULL) return REG_INVARG; - so = pmatch[0].rm_so; - eo = pmatch[0].rm_eo; - } --- -2.4.3 - -From e347b40d5bb12f7ef1e632aa649571a107be7d8a Mon Sep 17 00:00:00 2001 -From: ph10 ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15 -Date: Sun, 29 Nov 2015 17:46:23 +0000 -Subject: [PATCH 4/5] Allow for up to 32-bit numbers in the ordin() function in - pcregrep. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1615 2f5784b3-3f2a-0410-8824-cb99058d5e15 - -Petr Písař: Ported to 8.38. - -diff --git a/pcregrep.c b/pcregrep.c -index 64986b0..cd53c64 100644 ---- a/pcregrep.c -+++ b/pcregrep.c -@@ -2437,7 +2437,7 @@ return options; - static char * - ordin(int n) - { --static char buffer[8]; -+static char buffer[14]; - char *p = buffer; - sprintf(p, "%d", n); - while (*p != 0) p++; --- -2.4.3 - -From e78ad4264b16988b826bd2939a1781c1165a92d9 Mon Sep 17 00:00:00 2001 -From: ph10 ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15 -Date: Mon, 30 Nov 2015 17:44:45 +0000 -Subject: [PATCH 5/5] Fix \Q\E before qualifier bug when auto callouts are - enabled. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1616 2f5784b3-3f2a-0410-8824-cb99058d5e15 - -Petr Písař: Ported to 8.38. - -diff --git a/pcre_compile.c b/pcre_compile.c -index 5786cd3..beed46b 100644 ---- a/pcre_compile.c -+++ b/pcre_compile.c -@@ -4671,17 +4671,27 @@ for (;; ptr++) - } - goto NORMAL_CHAR; - } -+ -+ /* Check for the start of a \Q...\E sequence. We must do this here rather -+ than later in case it is immediately followed by \E, which turns it into a -+ "do nothing" sequence. */ -+ -+ if (c == CHAR_BACKSLASH && ptr[1] == CHAR_Q) -+ { -+ inescq = TRUE; -+ ptr++; -+ continue; -+ } - } - -- /* In extended mode, skip white space and comments. We need a loop in order -- to check for more white space and more comments after a comment. */ -+ /* In extended mode, skip white space and comments. */ - - if ((options & PCRE_EXTENDED) != 0) - { -- for (;;) -+ const pcre_uchar *wscptr = ptr; -+ while (MAX_255(c) && (cd->ctypes[c] & ctype_space) != 0) c = *(++ptr); -+ if (c == CHAR_NUMBER_SIGN) - { -- while (MAX_255(c) && (cd->ctypes[c] & ctype_space) != 0) c = *(++ptr); -- if (c != CHAR_NUMBER_SIGN) break; - ptr++; - while (*ptr != CHAR_NULL) - { -@@ -4695,7 +4705,15 @@ for (;; ptr++) - if (utf) FORWARDCHAR(ptr); - #endif - } -- c = *ptr; /* Either NULL or the char after a newline */ -+ } -+ -+ /* If we skipped any characters, restart the loop. Otherwise, we didn't see -+ a comment. */ -+ -+ if (ptr > wscptr) -+ { -+ ptr--; -+ continue; - } - } - -@@ -7900,16 +7918,6 @@ for (;; ptr++) - c = ec; - else - { -- if (escape == ESC_Q) /* Handle start of quoted string */ -- { -- if (ptr[1] == CHAR_BACKSLASH && ptr[2] == CHAR_E) -- ptr += 2; /* avoid empty string */ -- else inescq = TRUE; -- continue; -- } -- -- if (escape == ESC_E) continue; /* Perl ignores an orphan \E */ -- - /* For metasequences that actually match a character, we disable the - setting of a first character if it hasn't already been set. */ - -diff --git a/testdata/testinput2 b/testdata/testinput2 -index e8ca4fe..3a1134f 100644 ---- a/testdata/testinput2 -+++ b/testdata/testinput2 -@@ -4227,4 +4227,6 @@ backtracking verbs. --/ - - /(A*)\E+/CBZ - -+/()\Q\E*]/BCZ -+ - /-- End of testinput2 --/ -diff --git a/testdata/testoutput2 b/testdata/testoutput2 -index 09756b8..ac33cc4 100644 ---- a/testdata/testoutput2 -+++ b/testdata/testoutput2 -@@ -14624,4 +14624,19 @@ No match - End - ------------------------------------------------------------------ - -+/()\Q\E*]/BCZ -+------------------------------------------------------------------ -+ Bra -+ Callout 255 0 7 -+ Brazero -+ SCBra 1 -+ Callout 255 1 0 -+ KetRmax -+ Callout 255 7 1 -+ ] -+ Callout 255 8 0 -+ Ket -+ End -+------------------------------------------------------------------ -+ - /-- End of testinput2 --/ --- -2.4.3 - -From 46ed1a703b067e5b679eacf6500a54dae35f8130 Mon Sep 17 00:00:00 2001 -From: ph10 ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15 -Date: Thu, 3 Dec 2015 17:05:40 +0000 -Subject: [PATCH] Fix /x bug when pattern starts with white space and (?-x) -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1617 2f5784b3-3f2a-0410-8824-cb99058d5e15 - -Petr Písař: Ported to 8.38. - -diff --git a/pcre_compile.c b/pcre_compile.c -index beed46b..57719b9 100644 ---- a/pcre_compile.c -+++ b/pcre_compile.c -@@ -7607,39 +7607,15 @@ for (;; ptr++) - newoptions = (options | set) & (~unset); - - /* If the options ended with ')' this is not the start of a nested -- group with option changes, so the options change at this level. If this -- item is right at the start of the pattern, the options can be -- abstracted and made external in the pre-compile phase, and ignored in -- the compile phase. This can be helpful when matching -- for instance in -- caseless checking of required bytes. -- -- If the code pointer is not (cd->start_code + 1 + LINK_SIZE), we are -- definitely *not* at the start of the pattern because something has been -- compiled. In the pre-compile phase, however, the code pointer can have -- that value after the start, because it gets reset as code is discarded -- during the pre-compile. However, this can happen only at top level - if -- we are within parentheses, the starting BRA will still be present. At -- any parenthesis level, the length value can be used to test if anything -- has been compiled at that level. Thus, a test for both these conditions -- is necessary to ensure we correctly detect the start of the pattern in -- both phases. -- -+ group with option changes, so the options change at this level. - If we are not at the pattern start, reset the greedy defaults and the - case value for firstchar and reqchar. */ - - if (*ptr == CHAR_RIGHT_PARENTHESIS) - { -- if (code == cd->start_code + 1 + LINK_SIZE && -- (lengthptr == NULL || *lengthptr == 2 + 2*LINK_SIZE)) -- { -- cd->external_options = newoptions; -- } -- else -- { -- greedy_default = ((newoptions & PCRE_UNGREEDY) != 0); -- greedy_non_default = greedy_default ^ 1; -- req_caseopt = ((newoptions & PCRE_CASELESS) != 0)? REQ_CASELESS:0; -- } -+ greedy_default = ((newoptions & PCRE_UNGREEDY) != 0); -+ greedy_non_default = greedy_default ^ 1; -+ req_caseopt = ((newoptions & PCRE_CASELESS) != 0)? REQ_CASELESS:0; - - /* Change options at this level, and pass them back for use - in subsequent branches. */ -diff --git a/testdata/testoutput2 b/testdata/testoutput2 -index ac33cc4..6c42897 100644 ---- a/testdata/testoutput2 -+++ b/testdata/testoutput2 -@@ -419,7 +419,7 @@ Need char = '>' - - /(?U)<.*>/I - Capturing subpattern count = 0 --Options: ungreedy -+No options - First char = '<' - Need char = '>' - abc<def>ghi<klm>nop -@@ -443,7 +443,7 @@ Need char = '=' - - /(?U)={3,}?/I - Capturing subpattern count = 0 --Options: ungreedy -+No options - First char = '=' - Need char = '=' - abc========def -@@ -477,7 +477,7 @@ Failed: lookbehind assertion is not fixed length at offset 12 - - /(?i)abc/I - Capturing subpattern count = 0 --Options: caseless -+No options - First char = 'a' (caseless) - Need char = 'c' (caseless) - -@@ -489,7 +489,7 @@ No need char - - /(?i)^1234/I - Capturing subpattern count = 0 --Options: anchored caseless -+Options: anchored - No first char - No need char - -@@ -502,7 +502,7 @@ No need char - /(?s).*/I - Capturing subpattern count = 0 - May match empty string --Options: anchored dotall -+Options: anchored - No first char - No need char - -@@ -516,7 +516,7 @@ Starting chars: a b c d - - /(?i)[abcd]/IS - Capturing subpattern count = 0 --Options: caseless -+No options - No first char - No need char - Subject length lower bound = 1 -@@ -524,7 +524,7 @@ Starting chars: A B C D a b c d - - /(?m)[xy]|(b|c)/IS - Capturing subpattern count = 1 --Options: multiline -+No options - No first char - No need char - Subject length lower bound = 1 -@@ -538,7 +538,7 @@ No need char - - /(?i)(^a|^b)/Im - Capturing subpattern count = 1 --Options: caseless multiline -+Options: multiline - First char at start or follows newline - No need char - -@@ -1179,7 +1179,7 @@ No need char - End - ------------------------------------------------------------------ - Capturing subpattern count = 1 --Options: anchored dotall -+Options: anchored - No first char - No need char - -@@ -2735,7 +2735,7 @@ No match - End - ------------------------------------------------------------------ - Capturing subpattern count = 0 --Options: caseless extended -+Options: extended - First char = 'a' (caseless) - Need char = 'c' (caseless) - -@@ -2748,7 +2748,7 @@ Need char = 'c' (caseless) - End - ------------------------------------------------------------------ - Capturing subpattern count = 0 --Options: caseless extended -+Options: extended - First char = 'a' (caseless) - Need char = 'c' (caseless) - -@@ -3095,7 +3095,7 @@ Need char = 'b' - End - ------------------------------------------------------------------ - Capturing subpattern count = 0 --Options: ungreedy -+No options - First char = 'x' - Need char = 'b' - xaaaab -@@ -3497,7 +3497,7 @@ Need char = 'c' - - /(?i)[ab]/IS - Capturing subpattern count = 0 --Options: caseless -+No options - No first char - No need char - Subject length lower bound = 1 -@@ -6299,7 +6299,7 @@ Capturing subpattern count = 3 - Named capturing subpatterns: - A 2 - A 3 --Options: anchored dupnames -+Options: anchored - Duplicate name status changes - No first char - No need char --- -2.4.3 - -From db1fb68feddc9afe6f8822d099fa9ff25e3ea8e7 Mon Sep 17 00:00:00 2001 -From: ph10 ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15 -Date: Sat, 5 Dec 2015 16:30:14 +0000 -Subject: [PATCH] Fix copy named substring bug. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1618 2f5784b3-3f2a-0410-8824-cb99058d5e15 - -Petr Písař: Ported to 8.38. -diff --git a/pcre_get.c b/pcre_get.c -index 8094b34..41eda9c 100644 ---- a/pcre_get.c -+++ b/pcre_get.c -@@ -250,6 +250,7 @@ Arguments: - code the compiled regex - stringname the name of the capturing substring - ovector the vector of matched substrings -+ stringcount number of captured substrings - - Returns: the number of the first that is set, - or the number of the last one if none are set, -@@ -258,13 +259,16 @@ Returns: the number of the first that is set, - - #if defined COMPILE_PCRE8 - static int --get_first_set(const pcre *code, const char *stringname, int *ovector) -+get_first_set(const pcre *code, const char *stringname, int *ovector, -+ int stringcount) - #elif defined COMPILE_PCRE16 - static int --get_first_set(const pcre16 *code, PCRE_SPTR16 stringname, int *ovector) -+get_first_set(const pcre16 *code, PCRE_SPTR16 stringname, int *ovector, -+ int stringcount) - #elif defined COMPILE_PCRE32 - static int --get_first_set(const pcre32 *code, PCRE_SPTR32 stringname, int *ovector) -+get_first_set(const pcre32 *code, PCRE_SPTR32 stringname, int *ovector, -+ int stringcount) - #endif - { - const REAL_PCRE *re = (const REAL_PCRE *)code; -@@ -295,7 +299,7 @@ if (entrysize <= 0) return entrysize; - for (entry = (pcre_uchar *)first; entry <= (pcre_uchar *)last; entry += entrysize) - { - int n = GET2(entry, 0); -- if (ovector[n*2] >= 0) return n; -+ if (n < stringcount && ovector[n*2] >= 0) return n; - } - return GET2(entry, 0); - } -@@ -402,7 +406,7 @@ pcre32_copy_named_substring(const pcre32 *code, PCRE_SPTR32 subject, - PCRE_UCHAR32 *buffer, int size) - #endif - { --int n = get_first_set(code, stringname, ovector); -+int n = get_first_set(code, stringname, ovector, stringcount); - if (n <= 0) return n; - #if defined COMPILE_PCRE8 - return pcre_copy_substring(subject, ovector, stringcount, n, buffer, size); -@@ -619,7 +623,7 @@ pcre32_get_named_substring(const pcre32 *code, PCRE_SPTR32 subject, - PCRE_SPTR32 *stringptr) - #endif - { --int n = get_first_set(code, stringname, ovector); -+int n = get_first_set(code, stringname, ovector, stringcount); - if (n <= 0) return n; - #if defined COMPILE_PCRE8 - return pcre_get_substring(subject, ovector, stringcount, n, stringptr); -diff --git a/testdata/testinput2 b/testdata/testinput2 -index 3a1134f..00ffe32 100644 ---- a/testdata/testinput2 -+++ b/testdata/testinput2 -@@ -4229,4 +4229,7 @@ backtracking verbs. --/ - - /()\Q\E*]/BCZ - -+/(?<A>)(?J:(?<B>)(?<B>))(?<C>)/ -+ \O\CC -+ - /-- End of testinput2 --/ -diff --git a/testdata/testoutput2 b/testdata/testoutput2 -index 6c42897..ffb4466 100644 ---- a/testdata/testoutput2 -+++ b/testdata/testoutput2 -@@ -14639,4 +14639,9 @@ No match - End - ------------------------------------------------------------------ - -+/(?<A>)(?J:(?<B>)(?<B>))(?<C>)/ -+ \O\CC -+Matched, but too many substrings -+copy substring C failed -7 -+ - /-- End of testinput2 --/ --- -2.4.3 - -From 40363ebc19baeab160abaaa55dc84322a89ac35a Mon Sep 17 00:00:00 2001 -From: ph10 ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15 -Date: Sat, 5 Dec 2015 16:58:46 +0000 -Subject: [PATCH] Fix (by hacking) another length computation issue. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1619 2f5784b3-3f2a-0410-8824-cb99058d5e15 - -Petr Písař: Ported to 8.38. - -diff --git a/pcre_compile.c b/pcre_compile.c -index 57719b9..087bf2a 100644 ---- a/pcre_compile.c -+++ b/pcre_compile.c -@@ -7280,7 +7280,7 @@ for (;; ptr++) - issue is fixed "properly" in PCRE2. As PCRE1 is now in maintenance - only mode, we finesse the bug by allowing more memory always. */ - -- *lengthptr += 2 + 2*LINK_SIZE; -+ *lengthptr += 4 + 4*LINK_SIZE; - - /* It is even worse than that. The current reference may be to an - existing named group with a different number (so apparently not -diff --git a/testdata/testoutput11-16 b/testdata/testoutput11-16 -index 9a0a12d..280692e 100644 ---- a/testdata/testoutput11-16 -+++ b/testdata/testoutput11-16 -@@ -231,7 +231,7 @@ Memory allocation (code space): 73 - ------------------------------------------------------------------ - - /(?P<a>a)...(?P=a)bbb(?P>a)d/BM --Memory allocation (code space): 77 -+Memory allocation (code space): 93 - ------------------------------------------------------------------ - 0 24 Bra - 2 5 CBra 1 -diff --git a/testdata/testoutput11-32 b/testdata/testoutput11-32 -index 57e5da0..cdbda74 100644 ---- a/testdata/testoutput11-32 -+++ b/testdata/testoutput11-32 -@@ -231,7 +231,7 @@ Memory allocation (code space): 155 - ------------------------------------------------------------------ - - /(?P<a>a)...(?P=a)bbb(?P>a)d/BM --Memory allocation (code space): 157 -+Memory allocation (code space): 189 - ------------------------------------------------------------------ - 0 24 Bra - 2 5 CBra 1 -diff --git a/testdata/testoutput11-8 b/testdata/testoutput11-8 -index 748548a..cb37896 100644 ---- a/testdata/testoutput11-8 -+++ b/testdata/testoutput11-8 -@@ -231,7 +231,7 @@ Memory allocation (code space): 45 - ------------------------------------------------------------------ - - /(?P<a>a)...(?P=a)bbb(?P>a)d/BM --Memory allocation (code space): 50 -+Memory allocation (code space): 62 - ------------------------------------------------------------------ - 0 30 Bra - 3 7 CBra 1 --- -2.4.3 - -From 4f47274a2eb10131d88145ad7fd0eed4027a0c51 Mon Sep 17 00:00:00 2001 -From: ph10 ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15 -Date: Tue, 8 Dec 2015 11:06:40 +0000 -Subject: [PATCH] Fix get_substring_list() bug when \K is used in an assertion. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1620 2f5784b3-3f2a-0410-8824-cb99058d5e15 - -Petr Písař: ported to 8.38. - -diff --git a/pcre_get.c b/pcre_get.c -index 41eda9c..cdd2abc 100644 ---- a/pcre_get.c -+++ b/pcre_get.c -@@ -461,7 +461,10 @@ pcre_uchar **stringlist; - pcre_uchar *p; - - for (i = 0; i < double_count; i += 2) -- size += sizeof(pcre_uchar *) + IN_UCHARS(ovector[i+1] - ovector[i] + 1); -+ { -+ size += sizeof(pcre_uchar *) + IN_UCHARS(1); -+ if (ovector[i+1] > ovector[i]) size += IN_UCHARS(ovector[i+1] - ovector[i]); -+ } - - stringlist = (pcre_uchar **)(PUBL(malloc))(size); - if (stringlist == NULL) return PCRE_ERROR_NOMEMORY; -@@ -477,7 +480,7 @@ p = (pcre_uchar *)(stringlist + stringcount + 1); - - for (i = 0; i < double_count; i += 2) - { -- int len = ovector[i+1] - ovector[i]; -+ int len = (ovector[i+1] > ovector[i])? (ovector[i+1] - ovector[i]) : 0; - memcpy(p, subject + ovector[i], IN_UCHARS(len)); - *stringlist++ = p; - p += len; -diff --git a/testdata/testinput2 b/testdata/testinput2 -index 00ffe32..967a241 100644 ---- a/testdata/testinput2 -+++ b/testdata/testinput2 -@@ -4232,4 +4232,7 @@ backtracking verbs. --/ - /(?<A>)(?J:(?<B>)(?<B>))(?<C>)/ - \O\CC - -+/(?=a\K)/ -+ ring bpattingbobnd $ 1,oern cou \rb\L -+ - /-- End of testinput2 --/ -diff --git a/testdata/testoutput2 b/testdata/testoutput2 -index ffb4466..5fb28d5 100644 ---- a/testdata/testoutput2 -+++ b/testdata/testoutput2 -@@ -14644,4 +14644,10 @@ No match - Matched, but too many substrings - copy substring C failed -7 - -+/(?=a\K)/ -+ ring bpattingbobnd $ 1,oern cou \rb\L -+Start of matched string is beyond its end - displaying from end to start. -+ 0: a -+ 0L -+ - /-- End of testinput2 --/ --- -2.5.0 - -From 3da5528b47b88c32224cf9d14d8a4e80cd7a0815 Mon Sep 17 00:00:00 2001 -From: ph10 ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15 -Date: Sat, 6 Feb 2016 16:54:14 +0000 -Subject: [PATCH] Fix pcretest bad behaviour for callout in lookbehind. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1625 2f5784b3-3f2a-0410-8824-cb99058d5e15 - -Petr Písař: Ported to 8.38. - -diff --git a/pcretest.c b/pcretest.c -index 488e419..63869fd 100644 ---- a/pcretest.c -+++ b/pcretest.c -@@ -2250,7 +2250,7 @@ data is not zero. */ - static int callout(pcre_callout_block *cb) - { - FILE *f = (first_callout | callout_extra)? outfile : NULL; --int i, pre_start, post_start, subject_length; -+int i, current_position, pre_start, post_start, subject_length; - - if (callout_extra) - { -@@ -2280,14 +2280,19 @@ printed lengths of the substrings. */ - - if (f != NULL) fprintf(f, "--->"); - -+/* If a lookbehind is involved, the current position may be earlier than the -+match start. If so, use the match start instead. */ -+ -+current_position = (cb->current_position >= cb->start_match)? -+ cb->current_position : cb->start_match; -+ - PCHARS(pre_start, cb->subject, 0, cb->start_match, f); - PCHARS(post_start, cb->subject, cb->start_match, -- cb->current_position - cb->start_match, f); -+ current_position - cb->start_match, f); - - PCHARS(subject_length, cb->subject, 0, cb->subject_length, NULL); - --PCHARSV(cb->subject, cb->current_position, -- cb->subject_length - cb->current_position, f); -+PCHARSV(cb->subject, current_position, cb->subject_length - current_position, f); - - if (f != NULL) fprintf(f, "\n"); - -@@ -5740,3 +5745,4 @@ return yield; - } - - /* End of pcretest.c */ -+ -diff --git a/testdata/testinput2 b/testdata/testinput2 -index 967a241..086e0f4 100644 ---- a/testdata/testinput2 -+++ b/testdata/testinput2 -@@ -4235,4 +4235,8 @@ backtracking verbs. --/ - /(?=a\K)/ - ring bpattingbobnd $ 1,oern cou \rb\L - -+/(?<=((?C)0))/ -+ 9010 -+ abcd -+ - /-- End of testinput2 --/ -diff --git a/testdata/testoutput2 b/testdata/testoutput2 -index 5fb28d5..d414a72 100644 ---- a/testdata/testoutput2 -+++ b/testdata/testoutput2 -@@ -14650,4 +14650,19 @@ Start of matched string is beyond its end - displaying from end to start. - 0: a - 0L - -+/(?<=((?C)0))/ -+ 9010 -+--->9010 -+ 0 ^ 0 -+ 0 ^ 0 -+ 0: -+ 1: 0 -+ abcd -+--->abcd -+ 0 ^ 0 -+ 0 ^ 0 -+ 0 ^ 0 -+ 0 ^ 0 -+No match -+ - /-- End of testinput2 --/ --- -2.5.0 - -From 943a5105b9fe2842851003f692c7077a6cdbeefe Mon Sep 17 00:00:00 2001 -From: ph10 ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15 -Date: Wed, 10 Feb 2016 19:13:17 +0000 -Subject: [PATCH] Fix workspace overflow for (*ACCEPT) with deeply nested - parentheses. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1631 2f5784b3-3f2a-0410-8824-cb99058d5e15 - -Petr Písař: Ported to 8.38. - -diff --git a/pcre_compile.c b/pcre_compile.c -index b9a239e..5019854 100644 ---- a/pcre_compile.c -+++ b/pcre_compile.c -@@ -6,7 +6,7 @@ - and semantics are as close as possible to those of the Perl 5 language. - - Written by Philip Hazel -- Copyright (c) 1997-2014 University of Cambridge -+ Copyright (c) 1997-2016 University of Cambridge - - ----------------------------------------------------------------------------- - Redistribution and use in source and binary forms, with or without -@@ -560,6 +560,7 @@ static const char error_texts[] = - /* 85 */ - "parentheses are too deeply nested (stack check)\0" - "digits missing in \x{} or \o{}\0" -+ "regular expression is too complicated\0" - ; - - /* Table to identify digits and hex digits. This is used when compiling -@@ -4591,7 +4592,8 @@ for (;; ptr++) - if (code > cd->start_workspace + cd->workspace_size - - WORK_SIZE_SAFETY_MARGIN) /* Check for overrun */ - { -- *errorcodeptr = ERR52; -+ *errorcodeptr = (code >= cd->start_workspace + cd->workspace_size)? -+ ERR52 : ERR87; - goto FAILED; - } - -@@ -6626,8 +6628,21 @@ for (;; ptr++) - cd->had_accept = TRUE; - for (oc = cd->open_caps; oc != NULL; oc = oc->next) - { -- *code++ = OP_CLOSE; -- PUT2INC(code, 0, oc->number); -+ if (lengthptr != NULL) -+ { -+#ifdef COMPILE_PCRE8 -+ *lengthptr += 1 + IMM2_SIZE; -+#elif defined COMPILE_PCRE16 -+ *lengthptr += 2 + IMM2_SIZE; -+#elif defined COMPILE_PCRE32 -+ *lengthptr += 4 + IMM2_SIZE; -+#endif -+ } -+ else -+ { -+ *code++ = OP_CLOSE; -+ PUT2INC(code, 0, oc->number); -+ } - } - setverb = *code++ = - (cd->assert_depth > 0)? OP_ASSERT_ACCEPT : OP_ACCEPT; -diff --git a/pcre_internal.h b/pcre_internal.h -index f7a5ee7..dbfe80e 100644 ---- a/pcre_internal.h -+++ b/pcre_internal.h -@@ -7,7 +7,7 @@ - and semantics are as close as possible to those of the Perl 5 language. - - Written by Philip Hazel -- Copyright (c) 1997-2014 University of Cambridge -+ Copyright (c) 1997-2016 University of Cambridge - - ----------------------------------------------------------------------------- - Redistribution and use in source and binary forms, with or without -@@ -2289,7 +2289,7 @@ enum { ERR0, ERR1, ERR2, ERR3, ERR4, ERR5, ERR6, ERR7, ERR8, ERR9, - ERR50, ERR51, ERR52, ERR53, ERR54, ERR55, ERR56, ERR57, ERR58, ERR59, - ERR60, ERR61, ERR62, ERR63, ERR64, ERR65, ERR66, ERR67, ERR68, ERR69, - ERR70, ERR71, ERR72, ERR73, ERR74, ERR75, ERR76, ERR77, ERR78, ERR79, -- ERR80, ERR81, ERR82, ERR83, ERR84, ERR85, ERR86, ERRCOUNT }; -+ ERR80, ERR81, ERR82, ERR83, ERR84, ERR85, ERR86, ERR87, ERRCOUNT }; - - /* JIT compiling modes. The function list is indexed by them. */ - -diff --git a/pcreposix.c b/pcreposix.c -index dcc13ef..55b6ddc 100644 ---- a/pcreposix.c -+++ b/pcreposix.c -@@ -6,7 +6,7 @@ - and semantics are as close as possible to those of the Perl 5 language. - - Written by Philip Hazel -- Copyright (c) 1997-2014 University of Cambridge -+ Copyright (c) 1997-2016 University of Cambridge - - ----------------------------------------------------------------------------- - Redistribution and use in source and binary forms, with or without -@@ -173,7 +173,8 @@ static const int eint[] = { - REG_BADPAT, /* group name must start with a non-digit */ - /* 85 */ - REG_BADPAT, /* parentheses too deeply nested (stack check) */ -- REG_BADPAT /* missing digits in \x{} or \o{} */ -+ REG_BADPAT, /* missing digits in \x{} or \o{} */ -+ REG_BADPAT /* pattern too complicated */ - }; - - /* Table of texts corresponding to POSIX error codes */ -diff --git a/testdata/testinput11 b/testdata/testinput11 -index ac9d228..6f0989a 100644 ---- a/testdata/testinput11 -+++ b/testdata/testinput11 -@@ -138,4 +138,6 @@ is required for these tests. --/ - - /.((?2)(?R)\1)()/B - -+/([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00](*ACCEPT)/ -+ - /-- End of testinput11 --/ -diff --git a/testdata/testoutput11-16 b/testdata/testoutput11-16 -index 280692e..3c485da 100644 ---- a/testdata/testoutput11-16 -+++ b/testdata/testoutput11-16 -@@ -765,4 +765,7 @@ Memory allocation (code space): 14 - 25 End - ------------------------------------------------------------------ - -+/([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00](*ACCEPT)/ -+Failed: regular expression is too complicated at offset 490 -+ - /-- End of testinput11 --/ -diff --git a/testdata/testoutput11-32 b/testdata/testoutput11-32 -index cdbda74..e19518d 100644 ---- a/testdata/testoutput11-32 -+++ b/testdata/testoutput11-32 -@@ -765,4 +765,7 @@ Memory allocation (code space): 28 - 25 End - ------------------------------------------------------------------ - -+/([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00](*ACCEPT)/ -+Failed: missing ) at offset 509 -+ - /-- End of testinput11 --/ -diff --git a/testdata/testoutput11-8 b/testdata/testoutput11-8 -index cb37896..5a4fbb2 100644 ---- a/testdata/testoutput11-8 -+++ b/testdata/testoutput11-8 -@@ -765,4 +765,7 @@ Memory allocation (code space): 10 - 38 End - ------------------------------------------------------------------ - -+/([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00]([00](*ACCEPT)/ -+Failed: missing ) at offset 509 -+ - /-- End of testinput11 --/ --- -2.5.0 - -From b7537308b7c758f33c347cb0bec62754c43c271f Mon Sep 17 00:00:00 2001 -From: ph10 ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15 -Date: Sat, 27 Feb 2016 17:38:11 +0000 -Subject: [PATCH] Yet another duplicate name bugfix by overestimating the - memory needed (i.e. another hack - PCRE2 has this "properly" fixed). -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1636 2f5784b3-3f2a-0410-8824-cb99058d5e15 - -Petr Písař: Ported to 8.38. - -diff --git a/pcre_compile.c b/pcre_compile.c -index 5019854..4ffea0c 100644 ---- a/pcre_compile.c -+++ b/pcre_compile.c -@@ -7311,7 +7311,12 @@ for (;; ptr++) - so far in order to get the number. If the name is not found, leave - the value of recno as 0 for a forward reference. */ - -- else -+ /* This patch (removing "else") fixes a problem when a reference is -+ to multiple identically named nested groups from within the nest. -+ Once again, it is not the "proper" fix, and it results in an -+ over-allocation of memory. */ -+ -+ /* else */ - { - ng = cd->named_groups; - for (i = 0; i < cd->names_found; i++, ng++) -diff --git a/testdata/testinput2 b/testdata/testinput2 -index 086e0f4..c805f5f 100644 ---- a/testdata/testinput2 -+++ b/testdata/testinput2 -@@ -4239,4 +4239,6 @@ backtracking verbs. --/ - 9010 - abcd - -+/((?J)(?'R'(?'R'(?'R'(?'R'(?'R'(?|(\k'R'))))))))/ -+ - /-- End of testinput2 --/ -diff --git a/testdata/testoutput2 b/testdata/testoutput2 -index d414a72..800a72f 100644 ---- a/testdata/testoutput2 -+++ b/testdata/testoutput2 -@@ -14665,4 +14665,6 @@ Start of matched string is beyond its end - displaying from end to start. - 0 ^ 0 - No match - -+/((?J)(?'R'(?'R'(?'R'(?'R'(?'R'(?|(\k'R'))))))))/ -+ - /-- End of testinput2 --/ --- -2.5.0 - -From 0fc2edb79b3815c6511fd75c36a57893e4acaee6 Mon Sep 17 00:00:00 2001 -From: ph10 ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15 -Date: Sat, 27 Feb 2016 17:55:24 +0000 -Subject: [PATCH] Fix pcretest loop for global matching with an ovector size - less than 2. -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1637 2f5784b3-3f2a-0410-8824-cb99058d5e15 - -Petr Písař: Ported to 8.38. - -diff --git a/pcretest.c b/pcretest.c -index 63869fd..78ef517 100644 ---- a/pcretest.c -+++ b/pcretest.c -@@ -5617,6 +5617,12 @@ while (!done) - break; - } - -+ if (use_size_offsets < 2) -+ { -+ fprintf(outfile, "Cannot do global matching with an ovector size < 2\n"); -+ break; -+ } -+ - /* If we have matched an empty string, first check to see if we are at - the end of the subject. If so, the /g loop is over. Otherwise, mimic what - Perl's /g options does. This turns out to be rather cunning. First we set --- -2.5.0 - -From b3db1b7de5cfaa026ec2bc4a393129461a0f5c57 Mon Sep 17 00:00:00 2001 -From: ph10 ph10@2f5784b3-3f2a-0410-8824-cb99058d5e15 -Date: Sat, 27 Feb 2016 18:44:41 +0000 -Subject: [PATCH] Fix non-diagnosis of missing assertion after (?(?C). -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -git-svn-id: svn://vcs.exim.org/pcre/code/trunk@1638 2f5784b3-3f2a-0410-8824-cb99058d5e15 - -Petr Písař: Ported to 8.38. - -diff --git a/pcre_compile.c b/pcre_compile.c -index 4ffea0c..254c629 100644 ---- a/pcre_compile.c -+++ b/pcre_compile.c -@@ -485,7 +485,7 @@ static const char error_texts[] = - "lookbehind assertion is not fixed length\0" - "malformed number or name after (?(\0" - "conditional group contains more than two branches\0" -- "assertion expected after (?(\0" -+ "assertion expected after (?( or (?(?C)\0" - "(?R or (?[+-]digits must be followed by )\0" - /* 30 */ - "unknown POSIX class name\0" -@@ -6771,6 +6771,15 @@ for (;; ptr++) - for (i = 3;; i++) if (!IS_DIGIT(ptr[i])) break; - if (ptr[i] == CHAR_RIGHT_PARENTHESIS) - tempptr += i + 1; -+ -+ /* tempptr should now be pointing to the opening parenthesis of the -+ assertion condition. */ -+ -+ if (*tempptr != CHAR_LEFT_PARENTHESIS) -+ { -+ *errorcodeptr = ERR28; -+ goto FAILED; -+ } - } - - /* For conditions that are assertions, check the syntax, and then exit -diff --git a/testdata/testinput2 b/testdata/testinput2 -index c805f5f..75e402e 100644 ---- a/testdata/testinput2 -+++ b/testdata/testinput2 -@@ -4241,4 +4241,6 @@ backtracking verbs. --/ - - /((?J)(?'R'(?'R'(?'R'(?'R'(?'R'(?|(\k'R'))))))))/ - -+/\N(?(?C)0?!.)*/ -+ - /-- End of testinput2 --/ -diff --git a/testdata/testoutput2 b/testdata/testoutput2 -index 800a72f..5e88d1a 100644 ---- a/testdata/testoutput2 -+++ b/testdata/testoutput2 -@@ -555,13 +555,13 @@ Failed: malformed number or name after (?( at offset 4 - Failed: malformed number or name after (?( at offset 4 - - /(?(?i))/ --Failed: assertion expected after (?( at offset 3 -+Failed: assertion expected after (?( or (?(?C) at offset 3 - - /(?(abc))/ - Failed: reference to non-existent subpattern at offset 7 - - /(?(?<ab))/ --Failed: assertion expected after (?( at offset 3 -+Failed: assertion expected after (?( or (?(?C) at offset 3 - - /((?s)blah)\s+\1/I - Capturing subpattern count = 1 -@@ -7870,7 +7870,7 @@ No match - Failed: malformed number or name after (?( at offset 6 - - /(?(''))/ --Failed: assertion expected after (?( at offset 4 -+Failed: assertion expected after (?( or (?(?C) at offset 4 - - /(?('R')stuff)/ - Failed: reference to non-existent subpattern at offset 7 -@@ -14346,7 +14346,7 @@ No match - "((?2)+)((?1))" - - "(?(?<E>.*!.*)?)" --Failed: assertion expected after (?( at offset 3 -+Failed: assertion expected after (?( or (?(?C) at offset 3 - - "X((?2)()*+){2}+"BZ - ------------------------------------------------------------------ -@@ -14667,4 +14667,7 @@ No match - - /((?J)(?'R'(?'R'(?'R'(?'R'(?'R'(?|(\k'R'))))))))/ - -+/\N(?(?C)0?!.)*/ -+Failed: assertion expected after (?( or (?(?C) at offset 4 -+ - /-- End of testinput2 --/ --- -2.5.0 - diff --git a/src/patches/python-pycurl-no-static-libs.patch b/src/patches/python-pycurl-no-static-libs.patch deleted file mode 100644 index c1410dcdf..000000000 --- a/src/patches/python-pycurl-no-static-libs.patch +++ /dev/null @@ -1,12 +0,0 @@ ---- setup.py~ 2008-04-22 17:00:45.000000000 +0300 -+++ setup.py 2008-07-03 21:53:36.000000000 +0300 -@@ -97,8 +97,7 @@ - else: - extra_compile_args.append(e) - libs = split_quoted( -- os.popen("'%s' --libs" % CURL_CONFIG).read()+\ -- os.popen("'%s' --static-libs" % CURL_CONFIG).read()) -+ os.popen("'%s' --libs" % CURL_CONFIG).read()) - for e in libs: - if e[:2] == "-l": - libraries.append(e[2:]) diff --git a/src/patches/sarg/sarg-2.3.11-format.patch b/src/patches/sarg/sarg-2.3.11-format.patch deleted file mode 100644 index d8ed22028..000000000 --- a/src/patches/sarg/sarg-2.3.11-format.patch +++ /dev/null @@ -1,45 +0,0 @@ -diff -wbBur sarg-2.3.11/index.c sarg-2.3.11.my/index.c ---- sarg-2.3.11/index.c 2018-01-14 21:00:22.000000000 +0300 -+++ sarg-2.3.11.my/index.c 2018-02-19 12:20:15.896203347 +0300 -@@ -208,7 +208,7 @@ - m1=month / 16; - if(month % 16 != 0) { - m2=month % 16; -- sprintf(monthnum,"%02d-%02d",m1,m2); -+ sprintf(monthnum,"%02u-%02u",(unsigned int)m1,(unsigned int)m2); - sprintf(monthname1,"%02d",m1); - sprintf(monthname2,"%02d",m2); - name_month(monthname1,sizeof(monthname1)); -@@ -269,7 +269,7 @@ - d1=day / 32; - if(day % 32 != 0) { - d2=day % 32; -- sprintf(daynum,"%02d-%02d",d1,d2); -+ sprintf(daynum,"%02u-%02u",(unsigned int)d1,(unsigned int)d2); - } else { - sprintf(daynum,"%02d",d1); - } -diff -wbBur sarg-2.3.11/report.c sarg-2.3.11.my/report.c ---- sarg-2.3.11/report.c 2018-01-14 21:00:23.000000000 +0300 -+++ sarg-2.3.11.my/report.c 2018-02-19 12:18:45.151207192 +0300 -@@ -54,7 +54,7 @@ - char accsmart[MAXLEN]; - char crc2[MAXLEN/2 -1]; - char siteind[MAX_TRUNCATED_URL]; -- char arqtt[256]; -+ char arqtt[267]; - char *oldurltt=NULL; - char oldaccdiatt[11],oldacchoratt[9]; - char tmp3[MAXLEN]; -diff -wbBur sarg-2.3.11/userinfo.c sarg-2.3.11.my/userinfo.c ---- sarg-2.3.11/userinfo.c 2013-06-01 22:02:04.000000000 +0400 -+++ sarg-2.3.11.my/userinfo.c 2018-02-19 12:21:16.103200796 +0300 -@@ -67,7 +67,7 @@ - int skip; - int flen; - int count, clen; -- char cstr[9]; -+ char cstr[11]; - - last=NULL; - for (group=first_user_group ; group ; group=group->next) { diff --git a/src/patches/sarg/sarg-2.3.11-configure.patch b/src/patches/sarg/sarg-2.4.0-configure.patch similarity index 66% rename from src/patches/sarg/sarg-2.3.11-configure.patch rename to src/patches/sarg/sarg-2.4.0-configure.patch index ca9695595..ff40d81f1 100644 --- a/src/patches/sarg/sarg-2.3.11-configure.patch +++ b/src/patches/sarg/sarg-2.4.0-configure.patch @@ -1,8 +1,8 @@ ---- sarg-2.3.11/configure.ac~ 2019-04-26 22:34:33.499022406 +0000 -+++ sarg-2.3.11/configure.ac 2019-04-26 22:35:11.886556020 +0000 -@@ -29,35 +29,6 @@ +--- sarg-2.4.0/configure.ac.orig 2020-01-16 12:24:11.000000000 +0100 ++++ sarg-2.4.0/configure.ac 2021-04-24 14:16:03.677756214 +0200 +@@ -38,31 +38,6 @@ # Report more warnings to improve code quality. - CFLAGS="${CFLAGS} -Wall -Wno-sign-compare" + CFLAGS="${CFLAGS} -Wall"
-dnl Check for supported compiler options - @@ -11,28 +11,24 @@ -CFLAGS="${CFLAGS} -Wextra -Wno-unused-parameter" -AC_COMPILE_IFELSE([AC_LANG_SOURCE([])],[have_extra_warnings="yes"],[have_extra_warnings="no"]) -AC_MSG_RESULT($have_extra_warnings) --if test "$have_extra_warnings" = "no" ; then -- CFLAGS="${saved_CFLAGS}" --fi +-AS_IF([test "$have_extra_warnings" = "no"],[CFLAGS="${saved_CFLAGS}"]) +- +-# Don't compare signs as it is a mess +-CFLAGS="${CFLAGS} -Wno-sign-compare" - -AC_MSG_CHECKING([for implicit-function-declaration error flag in $CC]) -saved_CFLAGS="${CFLAGS}" -CFLAGS="${CFLAGS} -Werror=implicit-function-declaration" -AC_COMPILE_IFELSE([AC_LANG_SOURCE([])],[have_implicit_function_declaration="yes"],[have_implicit_function_declaration="no"]) -AC_MSG_RESULT($have_implicit_function_declaration) --if test "$have_implicit_function_declaration" = "no" ; then -- CFLAGS="${saved_CFLAGS}" --fi +-AS_IF([test "$have_implicit_function_declaration" = "no"],[CFLAGS="${saved_CFLAGS}"]) - -AC_MSG_CHECKING([for format error flag in $CC]) -saved_CFLAGS="${CFLAGS}" -CFLAGS="${CFLAGS} -Werror=format" -AC_COMPILE_IFELSE([AC_LANG_SOURCE([])],[have_error_format="yes"],[have_error_format="no"]) -AC_MSG_RESULT($have_error_format) --if test "$have_error_format" = "no" ; then -- CFLAGS="${saved_CFLAGS}" --fi -- +-AS_IF([test "$have_error_format" = "no"],[CFLAGS="${saved_CFLAGS}"]) + case "$host" in *-solaris*) - LDFLAGS="${LDFLAGS} -lsocket -lnsl" diff --git a/src/patches/sarg/sarg-2.4.0-format.patch b/src/patches/sarg/sarg-2.4.0-format.patch new file mode 100644 index 000000000..1d1ac1e4c --- /dev/null +++ b/src/patches/sarg/sarg-2.4.0-format.patch @@ -0,0 +1,33 @@ +diff -Naur sarg-2.4.0.orig/index.c sarg-2.4.0/index.c +--- sarg-2.4.0.orig/index.c 2019-12-24 12:04:00.000000000 +0100 ++++ sarg-2.4.0/index.c 2021-04-24 14:09:57.779097194 +0200 +@@ -325,7 +325,7 @@ + d1=(day >> 5) & 0x1F; + if ((day & 0x1F) != 0) { + d2=day & 0x1F; +- snprintf(daynum,sizeof(daynum),"%02d-%02d",d1,d2); ++ snprintf(daynum,sizeof(daynum),"%02u-%02u",(unsigned int)d1,(unsigned int)d2); + } else { + snprintf(daynum,sizeof(daynum),"%02d",d1); + } +@@ -485,7 +485,7 @@ + m1=(month >> 4) & 0x0F; + if ((month & 0x0F) != 0) { + m2=month & 0x0F; +- snprintf(monthnum,sizeof(monthnum),"%02d-%02d",m1,m2); ++ snprintf(monthnum,sizeof(monthnum),"%02u-%02u",(unsigned int)m1,(unsigned int)m2); + name_month(m1,monthname1,sizeof(monthname1)); + name_month(m2,monthname2,sizeof(monthname2)); + snprintf(nmonth,sizeof(nmonth),"%s-%s",monthname1,monthname2); +diff -Naur sarg-2.4.0.orig/userinfo.c sarg-2.4.0/userinfo.c +--- sarg-2.4.0.orig/userinfo.c 2019-12-24 12:04:00.000000000 +0100 ++++ sarg-2.4.0/userinfo.c 2021-04-24 14:11:31.965734470 +0200 +@@ -78,7 +78,7 @@ + int skip; + int flen; + int count, clen; +- char cstr[9]; ++ char cstr[11]; + char filename[MAX_USER_FNAME_LEN]; + + if (!UserStrings) { diff --git a/src/patches/tcp_wrappers-7.6-shared_lib_plus_plus-1.patch b/src/patches/tcp_wrappers-7.6-shared_lib_plus_plus-1.patch deleted file mode 100644 index 9a5b20cb5..000000000 --- a/src/patches/tcp_wrappers-7.6-shared_lib_plus_plus-1.patch +++ /dev/null @@ -1,1035 +0,0 @@ -Submitted By: Tushar Teredesai tushar@linuxfromscratch.org -Date: 2003-10-04 -Initial Package Version: 7.6 -Origin: http://archives.linuxfromscratch.org/mail-archives/blfs-dev/2003-January/001... -Description: The patch was created from the tcp_wrappers modified package by Mark Heerdink. -This patch provides the following improvements: - * Install libwrap.so along with libwrap.a. - * Create an install target for tcp_wrappers. - * Compilation and security fixes. - * Documentation fixes. -diff -Naur tcp_wrappers_7.6/Makefile tcp_wrappers_7.6.gimli/Makefile ---- tcp_wrappers_7.6/Makefile 1997-03-21 12:27:21.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/Makefile 2002-07-15 16:07:21.000000000 -0500 -@@ -1,5 +1,10 @@ -+GLIBC=$(shell grep -s -c __GLIBC__ /usr/include/features.h) -+ - # @(#) Makefile 1.23 97/03/21 19:27:20 - -+# unset the HOSTNAME environment variable -+HOSTNAME = -+ - what: - @echo - @echo "Usage: edit the REAL_DAEMON_DIR definition in the Makefile then:" -@@ -19,7 +24,7 @@ - @echo " generic (most bsd-ish systems with sys5 compatibility)" - @echo " 386bsd aix alpha apollo bsdos convex-ultranet dell-gcc dgux dgux543" - @echo " dynix epix esix freebsd hpux irix4 irix5 irix6 isc iunix" -- @echo " linux machten mips(untested) ncrsvr4 netbsd next osf power_unix_211" -+ @echo " linux gnu machten mips(untested) ncrsvr4 netbsd next osf power_unix_211" - @echo " ptx-2.x ptx-generic pyramid sco sco-nis sco-od2 sco-os5 sinix sunos4" - @echo " sunos40 sunos5 sysv4 tandem ultrix unicos7 unicos8 unixware1 unixware2" - @echo " uts215 uxp" -@@ -43,8 +48,8 @@ - # Ultrix 4.x SunOS 4.x ConvexOS 10.x Dynix/ptx - #REAL_DAEMON_DIR=/usr/etc - # --# SysV.4 Solaris 2.x OSF AIX --#REAL_DAEMON_DIR=/usr/sbin -+# SysV.4 Solaris 2.x OSF AIX Linux -+REAL_DAEMON_DIR=/usr/sbin - # - # BSD 4.4 - #REAL_DAEMON_DIR=/usr/libexec -@@ -141,10 +146,21 @@ - LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ= NETGROUP= TLI= \ - EXTRA_CFLAGS=-DSYS_ERRLIST_DEFINED VSYSLOG= all - -+ifneq ($(GLIBC),0) -+MYLIB=-lnsl -+endif -+ - linux: - @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ -- LIBS= RANLIB=ranlib ARFLAGS=rv AUX_OBJ=setenv.o \ -- NETGROUP= TLI= EXTRA_CFLAGS="-DBROKEN_SO_LINGER" all -+ LIBS=$(MYLIB) RANLIB=ranlib ARFLAGS=rv AUX_OBJ=weak_symbols.o \ -+ NETGROUP=-DNETGROUP TLI= VSYSLOG= BUGS= all \ -+ EXTRA_CFLAGS="-DSYS_ERRLIST_DEFINED -DHAVE_WEAKSYMS -D_REENTRANT" -+ -+gnu: -+ @make REAL_DAEMON_DIR=$(REAL_DAEMON_DIR) STYLE=$(STYLE) \ -+ LIBS=$(MYLIB) RANLIB=ranlib ARFLAGS=rv AUX_OBJ=weak_symbols.o \ -+ NETGROUP=-DNETGROUP TLI= VSYSLOG= BUGS= all \ -+ EXTRA_CFLAGS="-DHAVE_STRERROR -DHAVE_WEAKSYMS -D_REENTRANT" - - # This is good for many SYSV+BSD hybrids with NIS, probably also for HP-UX 7.x. - hpux hpux8 hpux9 hpux10: -@@ -391,7 +407,7 @@ - # the ones provided with this source distribution. The environ.c module - # implements setenv(), getenv(), and putenv(). - --AUX_OBJ= setenv.o -+#AUX_OBJ= setenv.o - #AUX_OBJ= environ.o - #AUX_OBJ= environ.o strcasecmp.o - -@@ -454,7 +470,8 @@ - # host name aliases. Compile with -DSOLARIS_24_GETHOSTBYNAME_BUG to work - # around this. The workaround does no harm on other Solaris versions. - --BUGS = -DGETPEERNAME_BUG -DBROKEN_FGETS -DLIBC_CALLS_STRTOK -+BUGS = -+#BUGS = -DGETPEERNAME_BUG -DBROKEN_FGETS -DLIBC_CALLS_STRTOK - #BUGS = -DGETPEERNAME_BUG -DBROKEN_FGETS -DINET_ADDR_BUG - #BUGS = -DGETPEERNAME_BUG -DBROKEN_FGETS -DSOLARIS_24_GETHOSTBYNAME_BUG - -@@ -464,7 +481,7 @@ - # If your system supports NIS or YP-style netgroups, enable the following - # macro definition. Netgroups are used only for host access control. - # --#NETGROUP= -DNETGROUP -+NETGROUP= -DNETGROUP - - ############################################################### - # System dependencies: whether or not your system has vsyslog() -@@ -491,7 +508,7 @@ - # Uncomment the next definition to turn on the language extensions - # (examples: allow, deny, banners, twist and spawn). - # --#STYLE = -DPROCESS_OPTIONS # Enable language extensions. -+STYLE = -DPROCESS_OPTIONS # Enable language extensions. - - ################################################################ - # Optional: Changing the default disposition of logfile records -@@ -514,7 +531,7 @@ - # - # The LOG_XXX names below are taken from the /usr/include/syslog.h file. - --FACILITY= LOG_MAIL # LOG_MAIL is what most sendmail daemons use -+FACILITY= LOG_DAEMON # LOG_MAIL is what most sendmail daemons use - - # The syslog priority at which successful connections are logged. - -@@ -610,7 +627,7 @@ - # Paranoid mode implies hostname lookup. In order to disable hostname - # lookups altogether, see the next section. - --PARANOID= -DPARANOID -+#PARANOID= -DPARANOID - - ######################################## - # Optional: turning off hostname lookups -@@ -623,7 +640,7 @@ - # In order to perform selective hostname lookups, disable paranoid - # mode (see previous section) and comment out the following definition. - --HOSTNAME= -DALWAYS_HOSTNAME -+#HOSTNAME= -DALWAYS_HOSTNAME - - ############################################# - # Optional: Turning on host ADDRESS checking -@@ -649,28 +666,46 @@ - # source-routed traffic in the kernel. Examples: 4.4BSD derivatives, - # Solaris 2.x, and Linux. See your system documentation for details. - # --# KILL_OPT= -DKILL_IP_OPTIONS -+KILL_OPT= -DKILL_IP_OPTIONS - - ## End configuration options - ############################ - - # Protection against weird shells or weird make programs. - -+CC = gcc - SHELL = /bin/sh --.c.o:; $(CC) $(CFLAGS) -c $*.c -+.c.o:; $(CC) $(CFLAGS) -o $*.o -c $*.c -+ -+SOMAJOR = 0 -+SOMINOR = 7.6 -+ -+LIB = libwrap.a -+SHLIB = shared/libwrap.so.$(SOMAJOR).$(SOMINOR) -+SHLIBSOMAJ= shared/libwrap.so.$(SOMAJOR) -+SHLIBSO = shared/libwrap.so -+SHLIBFLAGS = -Lshared -lwrap - --CFLAGS = -O -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \ -+shared/%.o: %.c -+ $(CC) $(CFLAGS) $(SHCFLAGS) -c $< -o $@ -+ -+CFLAGS = -O2 -DFACILITY=$(FACILITY) $(ACCESS) $(PARANOID) $(NETGROUP) \ - $(BUGS) $(SYSTYPE) $(AUTH) $(UMASK) \ - -DREAL_DAEMON_DIR="$(REAL_DAEMON_DIR)" $(STYLE) $(KILL_OPT) \ - -DSEVERITY=$(SEVERITY) -DRFC931_TIMEOUT=$(RFC931_TIMEOUT) \ - $(UCHAR) $(TABLES) $(STRINGS) $(TLI) $(EXTRA_CFLAGS) $(DOT) \ - $(VSYSLOG) $(HOSTNAME) - -+SHLINKFLAGS = -shared -Xlinker -soname -Xlinker libwrap.so.$(SOMAJOR) -lc $(LIBS) -+SHCFLAGS = -fPIC -shared -D_REENTRANT -+ - LIB_OBJ= hosts_access.o options.o shell_cmd.o rfc931.o eval.o \ - hosts_ctl.o refuse.o percent_x.o clean_exit.o $(AUX_OBJ) \ - $(FROM_OBJ) fix_options.o socket.o tli.o workarounds.o \ - update.o misc.o diag.o percent_m.o myvsyslog.o - -+SHLIB_OBJ= $(addprefix shared/, $(LIB_OBJ)); -+ - FROM_OBJ= fromhost.o - - KIT = README miscd.c tcpd.c fromhost.c hosts_access.c shell_cmd.c \ -@@ -684,46 +719,80 @@ - refuse.c tcpdchk.8 setenv.c inetcf.c inetcf.h scaffold.c \ - scaffold.h tcpdmatch.8 README.NIS - --LIB = libwrap.a -- --all other: config-check tcpd tcpdmatch try-from safe_finger tcpdchk -+all other: config-check tcpd tcpdmatch try-from safe_finger tcpdchk $(LIB) - - # Invalidate all object files when the compiler options (CFLAGS) have changed. - - config-check: - @set +e; test -n "$(REAL_DAEMON_DIR)" || { make; exit 1; } -- @set +e; echo $(CFLAGS) >/tmp/cflags.$$$$ ; \ -- if cmp cflags /tmp/cflags.$$$$ ; \ -- then rm /tmp/cflags.$$$$ ; \ -- else mv /tmp/cflags.$$$$ cflags ; \ -+ @set +e; echo $(CFLAGS) >cflags.new ; \ -+ if cmp cflags cflags.new ; \ -+ then rm cflags.new ; \ -+ else mv cflags.new cflags ; \ - fi >/dev/null 2>/dev/null -+ @if [ ! -d shared ]; then mkdir shared; fi - - $(LIB): $(LIB_OBJ) - rm -f $(LIB) - $(AR) $(ARFLAGS) $(LIB) $(LIB_OBJ) - -$(RANLIB) $(LIB) - --tcpd: tcpd.o $(LIB) -- $(CC) $(CFLAGS) -o $@ tcpd.o $(LIB) $(LIBS) -+$(SHLIB): $(SHLIB_OBJ) -+ rm -f $(SHLIB) -+ $(CC) -o $(SHLIB) $(SHLINKFLAGS) $(SHLIB_OBJ) -+ ln -s $(notdir $(SHLIB)) $(SHLIBSOMAJ) -+ ln -s $(notdir $(SHLIBSOMAJ)) $(SHLIBSO) -+ -+tcpd: tcpd.o $(SHLIB) -+ $(CC) $(CFLAGS) -o $@ tcpd.o $(SHLIBFLAGS) - --miscd: miscd.o $(LIB) -- $(CC) $(CFLAGS) -o $@ miscd.o $(LIB) $(LIBS) -+miscd: miscd.o $(SHLIB) -+ $(CC) $(CFLAGS) -o $@ miscd.o $(SHLIBFLAGS) - --safe_finger: safe_finger.o $(LIB) -- $(CC) $(CFLAGS) -o $@ safe_finger.o $(LIB) $(LIBS) -+safe_finger: safe_finger.o $(SHLIB) -+ $(CC) $(CFLAGS) -o $@ safe_finger.o $(SHLIBFLAGS) - - TCPDMATCH_OBJ = tcpdmatch.o fakelog.o inetcf.o scaffold.o - --tcpdmatch: $(TCPDMATCH_OBJ) $(LIB) -- $(CC) $(CFLAGS) -o $@ $(TCPDMATCH_OBJ) $(LIB) $(LIBS) -+tcpdmatch: $(TCPDMATCH_OBJ) $(SHLIB) -+ $(CC) $(CFLAGS) -o $@ $(TCPDMATCH_OBJ) $(SHLIBFLAGS) - --try-from: try-from.o fakelog.o $(LIB) -- $(CC) $(CFLAGS) -o $@ try-from.o fakelog.o $(LIB) $(LIBS) -+try-from: try-from.o fakelog.o $(SHLIB) -+ $(CC) $(CFLAGS) -o $@ try-from.o fakelog.o $(SHLIBFLAGS) - - TCPDCHK_OBJ = tcpdchk.o fakelog.o inetcf.o scaffold.o - --tcpdchk: $(TCPDCHK_OBJ) $(LIB) -- $(CC) $(CFLAGS) -o $@ $(TCPDCHK_OBJ) $(LIB) $(LIBS) -+tcpdchk: $(TCPDCHK_OBJ) $(SHLIB) -+ $(CC) $(CFLAGS) -o $@ $(TCPDCHK_OBJ) $(SHLIBFLAGS) -+ -+install: install-lib install-bin install-dev -+ -+install-lib: -+ install -o root -g root -m 0755 $(SHLIB) ${DESTDIR}/usr/lib/ -+ ln -sf $(notdir $(SHLIB)) ${DESTDIR}/usr/lib/$(notdir $(SHLIBSOMAJ)) -+ ln -sf $(notdir $(SHLIBSOMAJ)) ${DESTDIR}/usr/lib/$(notdir $(SHLIBSO)) -+ -+install-bin: -+ install -o root -g root -m 0755 tcpd ${DESTDIR}/usr/sbin/ -+ install -o root -g root -m 0755 tcpdchk ${DESTDIR}/usr/sbin/ -+ install -o root -g root -m 0755 tcpdmatch ${DESTDIR}/usr/sbin/ -+ install -o root -g root -m 0755 try-from ${DESTDIR}/usr/sbin/ -+ install -o root -g root -m 0755 safe_finger ${DESTDIR}/usr/sbin/ -+ install -o root -g root -m 0644 tcpd.8 ${DESTDIR}/usr/share/man/man8/ -+ install -o root -g root -m 0644 tcpdchk.8 ${DESTDIR}/usr/share/man/man8/ -+ install -o root -g root -m 0644 try-from.8 ${DESTDIR}/usr/share/man/man8/ -+ install -o root -g root -m 0644 tcpdmatch.8 ${DESTDIR}/usr/share/man/man8/ -+ install -o root -g root -m 0644 safe_finger.8 ${DESTDIR}/usr/share/man/man8/ -+ install -o root -g root -m 0644 hosts_access.5 ${DESTDIR}/usr/share/man/man5/ -+ install -o root -g root -m 0644 hosts_options.5 ${DESTDIR}/usr/share/man/man5/ -+ -+install-dev: -+ install -o root -g root -m 0644 hosts_access.3 ${DESTDIR}/usr/share/man/man3/ -+ install -o root -g root -m 0644 tcpd.h ${DESTDIR}/usr/include/ -+ install -o root -g root -m 0644 $(LIB) ${DESTDIR}/usr/lib/ -+ ln -sf hosts_access.3 ${DESTDIR}/usr/share/man/man3/hosts_ctl.3 -+ ln -sf hosts_access.3 ${DESTDIR}/usr/share/man/man3/request_init.3 -+ ln -sf hosts_access.3 ${DESTDIR}/usr/share/man/man3/request_set.3 - - shar: $(KIT) - @shar $(KIT) -@@ -739,7 +808,8 @@ - - clean: - rm -f tcpd miscd safe_finger tcpdmatch tcpdchk try-from *.[oa] core \ -- cflags -+ cflags libwrap*.so* -+ rm -rf shared - - tidy: clean - chmod -R a+r . -@@ -885,5 +955,6 @@ - update.o: mystdarg.h - update.o: tcpd.h - vfprintf.o: cflags -+weak_symbols.o: tcpd.h - workarounds.o: cflags - workarounds.o: tcpd.h -diff -Naur tcp_wrappers_7.6/fix_options.c tcp_wrappers_7.6.gimli/fix_options.c ---- tcp_wrappers_7.6/fix_options.c 1997-04-07 19:29:19.000000000 -0500 -+++ tcp_wrappers_7.6.gimli/fix_options.c 2002-01-07 08:50:19.000000000 -0600 -@@ -35,7 +35,12 @@ - #ifdef IP_OPTIONS - unsigned char optbuf[BUFFER_SIZE / 3], *cp; - char lbuf[BUFFER_SIZE], *lp; -+#if !defined(__GLIBC__) - int optsize = sizeof(optbuf), ipproto; -+#else /* __GLIBC__ */ -+ size_t optsize = sizeof(optbuf); -+ int ipproto; -+#endif /* __GLIBC__ */ - struct protoent *ip; - int fd = request->fd; - unsigned int opt; -diff -Naur tcp_wrappers_7.6/hosts_access.3 tcp_wrappers_7.6.gimli/hosts_access.3 ---- tcp_wrappers_7.6/hosts_access.3 1996-02-11 10:01:27.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/hosts_access.3 2002-01-07 08:50:19.000000000 -0600 -@@ -3,7 +3,7 @@ - hosts_access, hosts_ctl, request_init, request_set - access control library - .SH SYNOPSIS - .nf --#include "tcpd.h" -+#include <tcpd.h> - - extern int allow_severity; - extern int deny_severity; -diff -Naur tcp_wrappers_7.6/hosts_access.5 tcp_wrappers_7.6.gimli/hosts_access.5 ---- tcp_wrappers_7.6/hosts_access.5 1995-01-30 12:51:47.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/hosts_access.5 2002-01-07 08:50:19.000000000 -0600 -@@ -8,9 +8,9 @@ - impatient reader is encouraged to skip to the EXAMPLES section for a - quick introduction. - .PP --An extended version of the access control language is described in the --\fIhosts_options\fR(5) document. The extensions are turned on at --program build time by building with -DPROCESS_OPTIONS. -+The extended version of the access control language is described in the -+\fIhosts_options\fR(5) document. \fBNote that this language supersedes -+the meaning of \fIshell_command\fB as documented below.\fR - .PP - In the following text, \fIdaemon\fR is the the process name of a - network daemon process, and \fIclient\fR is the name and/or address of -@@ -40,7 +40,7 @@ - character. This permits you to break up long lines so that they are - easier to edit. - .IP (bu --Blank lines or lines that begin with a `#' character are ignored. -+Blank lines or lines that begin with a `#' character are ignored. - This permits you to insert comments and whitespace so that the tables - are easier to read. - .IP (bu -@@ -69,26 +69,33 @@ - .SH PATTERNS - The access control language implements the following patterns: - .IP (bu --A string that begins with a `.' character. A host name is matched if -+A string that begins with a `.' character. A host name is matched if - the last components of its name match the specified pattern. For --example, the pattern `.tue.nl' matches the host name --`wzv.win.tue.nl'. -+example, the pattern `.tue.nl' matches the host name -+`wzv.win.tue.nl'. - .IP (bu --A string that ends with a `.' character. A host address is matched if -+A string that ends with a `.' character. A host address is matched if - its first numeric fields match the given string. For example, the --pattern `131.155.' matches the address of (almost) every host on the -+pattern `131.155.' matches the address of (almost) every host on the - Eind%hoven University network (131.155.x.x). - .IP (bu --A string that begins with an `@' character is treated as an NIS -+A string that begins with an `@' character is treated as an NIS - (formerly YP) netgroup name. A host name is matched if it is a host - member of the specified netgroup. Netgroup matches are not supported - for daemon process names or for client user names. - .IP (bu --An expression of the form `n.n.n.n/m.m.m.m' is interpreted as a --`net/mask' pair. A host address is matched if `net' is equal to the --bitwise AND of the address and the `mask'. For example, the net/mask --pattern `131.155.72.0/255.255.254.0' matches every address in the --range `131.155.72.0' through `131.155.73.255'. -+An expression of the form `n.n.n.n/m.m.m.m' is interpreted as a -+`net/mask' pair. A host address is matched if `net' is equal to the -+bitwise AND of the address and the `mask'. For example, the net/mask -+pattern `131.155.72.0/255.255.254.0' matches every address in the -+range `131.155.72.0' through `131.155.73.255'. -+.IP (bu -+A string that begins with a `/' character is treated as a file -+name. A host name or address is matched if it matches any host name -+or address pattern listed in the named file. The file format is -+zero or more lines with zero or more host name or address patterns -+separated by whitespace. A file name pattern can be used anywhere -+a host name or address pattern can be used. - .SH WILDCARDS - The access control language supports explicit wildcards: - .IP ALL -@@ -115,19 +122,19 @@ - .ne 6 - .SH OPERATORS - .IP EXCEPT --Intended use is of the form: `list_1 EXCEPT list_2'; this construct -+Intended use is of the form: `list_1 EXCEPT list_2'; this construct - matches anything that matches \fIlist_1\fR unless it matches - \fIlist_2\fR. The EXCEPT operator can be used in daemon_lists and in - client_lists. The EXCEPT operator can be nested: if the control --language would permit the use of parentheses, `a EXCEPT b EXCEPT c' --would parse as `(a EXCEPT (b EXCEPT c))'. -+language would permit the use of parentheses, `a EXCEPT b EXCEPT c' -+would parse as `(a EXCEPT (b EXCEPT c))'. - .br - .ne 6 - .SH SHELL COMMANDS - If the first-matched access control rule contains a shell command, that - command is subjected to %<letter> substitutions (see next section). - The result is executed by a \fI/bin/sh\fR child process with standard --input, output and error connected to \fI/dev/null\fR. Specify an `&' -+input, output and error connected to \fI/dev/null\fR. Specify an `&' - at the end of the command if you do not want to wait until it has - completed. - .PP -@@ -159,7 +166,7 @@ - .IP %u - The client user name (or "unknown"). - .IP %% --Expands to a single `%' character. -+Expands to a single `%' character. - .PP - Characters in % expansions that may confuse the shell are replaced by - underscores. -@@ -243,9 +250,9 @@ - less trustworthy. It is possible for an intruder to spoof both the - client connection and the IDENT lookup, although doing so is much - harder than spoofing just a client connection. It may also be that --the client's IDENT server is lying. -+the client's IDENT server is lying. - .PP --Note: IDENT lookups don't work with UDP services. -+Note: IDENT lookups don't work with UDP services. - .SH EXAMPLES - The language is flexible enough that different types of access control - policy can be expressed with a minimum of fuss. Although the language -@@ -285,7 +292,7 @@ - .br - ALL: .foobar.edu EXCEPT terminalserver.foobar.edu - .PP --The first rule permits access from hosts in the local domain (no `.' -+The first rule permits access from hosts in the local domain (no `.' - in the host name) and from members of the \fIsome_netgroup\fP - netgroup. The second rule permits access from all hosts in the - \fIfoobar.edu\fP domain (notice the leading dot), with the exception of -@@ -322,8 +329,8 @@ - /etc/hosts.deny: - .in +3 - .nf --in.tftpd: ALL: (/some/where/safe_finger -l @%h | \ -- /usr/ucb/mail -s %d-%h root) & -+in.tftpd: ALL: (/usr/sbin/safe_finger -l @%h | \ -+ /usr/bin/mail -s %d-%h root) & - .fi - .PP - The safe_finger command comes with the tcpd wrapper and should be -@@ -349,7 +356,7 @@ - capacity of an internal buffer; when an access control rule is not - terminated by a newline character; when the result of %<letter> - expansion would overflow an internal buffer; when a system call fails --that shouldn't. All problems are reported via the syslog daemon. -+that shouldn't. All problems are reported via the syslog daemon. - .SH FILES - .na - .nf -diff -Naur tcp_wrappers_7.6/hosts_access.c tcp_wrappers_7.6.gimli/hosts_access.c ---- tcp_wrappers_7.6/hosts_access.c 1997-02-11 19:13:23.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/hosts_access.c 2002-01-07 08:50:19.000000000 -0600 -@@ -240,6 +240,26 @@ - } - } - -+/* hostfile_match - look up host patterns from file */ -+ -+static int hostfile_match(path, host) -+char *path; -+struct hosts_info *host; -+{ -+ char tok[BUFSIZ]; -+ int match = NO; -+ FILE *fp; -+ -+ if ((fp = fopen(path, "r")) != 0) { -+ while (fscanf(fp, "%s", tok) == 1 && !(match = host_match(tok, host))) -+ /* void */ ; -+ fclose(fp); -+ } else if (errno != ENOENT) { -+ tcpd_warn("open %s: %m", path); -+ } -+ return (match); -+} -+ - /* host_match - match host name and/or address against pattern */ - - static int host_match(tok, host) -@@ -267,6 +287,8 @@ - tcpd_warn("netgroup support is disabled"); /* not tcpd_jump() */ - return (NO); - #endif -+ } else if (tok[0] == '/') { /* /file hack */ -+ return (hostfile_match(tok, host)); - } else if (STR_EQ(tok, "KNOWN")) { /* check address and name */ - char *name = eval_hostname(host); - return (STR_NE(eval_hostaddr(host), unknown) && HOSTNAME_KNOWN(name)); -diff -Naur tcp_wrappers_7.6/hosts_options.5 tcp_wrappers_7.6.gimli/hosts_options.5 ---- tcp_wrappers_7.6/hosts_options.5 1994-12-28 10:42:29.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/hosts_options.5 2002-01-07 08:50:19.000000000 -0600 -@@ -58,12 +58,12 @@ - Execute, in a child process, the specified shell command, after - performing the %<letter> expansions described in the hosts_access(5) - manual page. The command is executed with stdin, stdout and stderr --connected to the null device, so that it won't mess up the -+connected to the null device, so that it won't mess up the - conversation with the client host. Example: - .sp - .nf - .ti +3 --spawn (/some/where/safe_finger -l @%h | /usr/ucb/mail root) & -+spawn (/usr/sbin/safe_finger -l @%h | /usr/bin/mail root) & - .fi - .sp - executes, in a background child process, the shell command "safe_finger -diff -Naur tcp_wrappers_7.6/options.c tcp_wrappers_7.6.gimli/options.c ---- tcp_wrappers_7.6/options.c 1996-02-11 10:01:32.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/options.c 2002-01-07 08:50:19.000000000 -0600 -@@ -473,6 +473,9 @@ - #ifdef LOG_CRON - "cron", LOG_CRON, - #endif -+#ifdef LOG_FTP -+ "ftp", LOG_FTP, -+#endif - #ifdef LOG_LOCAL0 - "local0", LOG_LOCAL0, - #endif -diff -Naur tcp_wrappers_7.6/percent_m.c tcp_wrappers_7.6.gimli/percent_m.c ---- tcp_wrappers_7.6/percent_m.c 1994-12-28 10:42:37.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/percent_m.c 2002-01-07 08:50:19.000000000 -0600 -@@ -13,7 +13,7 @@ - #include <string.h> - - extern int errno; --#ifndef SYS_ERRLIST_DEFINED -+#if !defined(SYS_ERRLIST_DEFINED) && !defined(HAVE_STRERROR) - extern char *sys_errlist[]; - extern int sys_nerr; - #endif -@@ -29,11 +29,15 @@ - - while (*bp = *cp) - if (*cp == '%' && cp[1] == 'm') { -+#ifdef HAVE_STRERROR -+ strcpy(bp, strerror(errno)); -+#else - if (errno < sys_nerr && errno > 0) { - strcpy(bp, sys_errlist[errno]); - } else { - sprintf(bp, "Unknown error %d", errno); - } -+#endif - bp += strlen(bp); - cp += 2; - } else { -diff -Naur tcp_wrappers_7.6/rfc931.c tcp_wrappers_7.6.gimli/rfc931.c ---- tcp_wrappers_7.6/rfc931.c 1995-01-02 09:11:34.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/rfc931.c 2002-01-07 08:50:19.000000000 -0600 -@@ -33,7 +33,7 @@ - - int rfc931_timeout = RFC931_TIMEOUT;/* Global so it can be changed */ - --static jmp_buf timebuf; -+static sigjmp_buf timebuf; - - /* fsocket - open stdio stream on top of socket */ - -@@ -62,7 +62,7 @@ - static void timeout(sig) - int sig; - { -- longjmp(timebuf, sig); -+ siglongjmp(timebuf, sig); - } - - /* rfc931 - return remote user name, given socket structures */ -@@ -99,7 +99,7 @@ - * Set up a timer so we won't get stuck while waiting for the server. - */ - -- if (setjmp(timebuf) == 0) { -+ if (sigsetjmp(timebuf,1) == 0) { - signal(SIGALRM, timeout); - alarm(rfc931_timeout); - -diff -Naur tcp_wrappers_7.6/safe_finger.8 tcp_wrappers_7.6.gimli/safe_finger.8 ---- tcp_wrappers_7.6/safe_finger.8 1969-12-31 18:00:00.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/safe_finger.8 2002-01-07 08:50:19.000000000 -0600 -@@ -0,0 +1,34 @@ -+.TH SAFE_FINGER 8 "21th June 1997" Linux "Linux Programmer's Manual" -+.SH NAME -+safe_finger - finger client wrapper that protects against nasty stuff -+from finger servers -+.SH SYNOPSIS -+.B safe_finger [finger_options] -+.SH DESCRIPTION -+The -+.B safe_finger -+command protects against nasty stuff from finger servers. Use this -+program for automatic reverse finger probes from the -+.B tcp_wrapper -+.B (tcpd) -+, not the raw finger command. The -+.B safe_finger -+command makes sure that the finger client is not run with root -+privileges. It also runs the finger client with a defined PATH -+environment. -+.B safe_finger -+will also protect you from problems caused by the output of some -+finger servers. The problem: some programs may react to stuff in -+the first column. Other programs may get upset by thrash anywhere -+on a line. File systems may fill up as the finger server keeps -+sending data. Text editors may bomb out on extremely long lines. -+The finger server may take forever because it is somehow wedged. -+.B safe_finger -+takes care of all this badness. -+.SH SEE ALSO -+.BR hosts_access (5), -+.BR hosts_options (5), -+.BR tcpd (8) -+.SH AUTHOR -+Wietse Venema, Eindhoven University of Technology, The Netherlands. -+ -diff -Naur tcp_wrappers_7.6/safe_finger.c tcp_wrappers_7.6.gimli/safe_finger.c ---- tcp_wrappers_7.6/safe_finger.c 1994-12-28 10:42:42.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/safe_finger.c 2002-01-07 08:50:19.000000000 -0600 -@@ -26,21 +26,24 @@ - #include <stdio.h> - #include <ctype.h> - #include <pwd.h> -+#include <syslog.h> - - extern void exit(); - - /* Local stuff */ - --char path[] = "PATH=/bin:/usr/bin:/usr/ucb:/usr/bsd:/etc:/usr/etc:/usr/sbin"; -+char path[] = "PATH=/bin:/usr/bin:/sbin:/usr/sbin"; - - #define TIME_LIMIT 60 /* Do not keep listinging forever */ - #define INPUT_LENGTH 100000 /* Do not keep listinging forever */ - #define LINE_LENGTH 128 /* Editors can choke on long lines */ - #define FINGER_PROGRAM "finger" /* Most, if not all, UNIX systems */ - #define UNPRIV_NAME "nobody" /* Preferred privilege level */ --#define UNPRIV_UGID 32767 /* Default uid and gid */ -+#define UNPRIV_UGID 65534 /* Default uid and gid */ - - int finger_pid; -+int allow_severity = SEVERITY; -+int deny_severity = LOG_WARNING; - - void cleanup(sig) - int sig; -diff -Naur tcp_wrappers_7.6/scaffold.c tcp_wrappers_7.6.gimli/scaffold.c ---- tcp_wrappers_7.6/scaffold.c 1997-03-21 12:27:24.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/scaffold.c 2002-01-07 08:50:19.000000000 -0600 -@@ -180,10 +180,12 @@ - - /* ARGSUSED */ - --void rfc931(request) --struct request_info *request; -+void rfc931(rmt_sin, our_sin, dest) -+struct sockaddr_in *rmt_sin; -+struct sockaddr_in *our_sin; -+char *dest; - { -- strcpy(request->user, unknown); -+ strcpy(dest, unknown); - } - - /* check_path - examine accessibility */ -diff -Naur tcp_wrappers_7.6/socket.c tcp_wrappers_7.6.gimli/socket.c ---- tcp_wrappers_7.6/socket.c 1997-03-21 12:27:25.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/socket.c 2002-01-07 08:50:19.000000000 -0600 -@@ -76,7 +76,11 @@ - { - static struct sockaddr_in client; - static struct sockaddr_in server; -+#if !defined (__GLIBC__) - int len; -+#else /* __GLIBC__ */ -+ size_t len; -+#endif /* __GLIBC__ */ - char buf[BUFSIZ]; - int fd = request->fd; - -@@ -224,7 +228,11 @@ - { - char buf[BUFSIZ]; - struct sockaddr_in sin; -+#if !defined(__GLIBC__) - int size = sizeof(sin); -+#else /* __GLIBC__ */ -+ size_t size = sizeof(sin); -+#endif /* __GLIBC__ */ - - /* - * Eat up the not-yet received datagram. Some systems insist on a -diff -Naur tcp_wrappers_7.6/tcpd.8 tcp_wrappers_7.6.gimli/tcpd.8 ---- tcp_wrappers_7.6/tcpd.8 1996-02-21 09:39:16.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/tcpd.8 2002-01-07 08:50:19.000000000 -0600 -@@ -94,7 +94,7 @@ - .PP - The example assumes that the network daemons live in /usr/etc. On some - systems, network daemons live in /usr/sbin or in /usr/libexec, or have --no `in.' prefix to their name. -+no `in.' prefix to their name. - .SH EXAMPLE 2 - This example applies when \fItcpd\fR expects that the network daemons - are left in their original place. -@@ -110,26 +110,26 @@ - becomes: - .sp - .ti +5 --finger stream tcp nowait nobody /some/where/tcpd in.fingerd -+finger stream tcp nowait nobody /usr/sbin/tcpd in.fingerd - .sp - .fi - .PP - The example assumes that the network daemons live in /usr/etc. On some - systems, network daemons live in /usr/sbin or in /usr/libexec, the --daemons have no `in.' prefix to their name, or there is no userid -+daemons have no `in.' prefix to their name, or there is no userid - field in the inetd configuration file. - .PP - Similar changes will be needed for the other services that are to be --covered by \fItcpd\fR. Send a `kill -HUP' to the \fIinetd\fR(8) -+covered by \fItcpd\fR. Send a `kill -HUP' to the \fIinetd\fR(8) - process to make the changes effective. AIX users may also have to --execute the `inetimp' command. -+execute the `inetimp' command. - .SH EXAMPLE 3 - In the case of daemons that do not live in a common directory ("secret" - or otherwise), edit the \fIinetd\fR configuration file so that it - specifies an absolute path name for the process name field. For example: - .nf - .sp -- ntalk dgram udp wait root /some/where/tcpd /usr/local/lib/ntalkd -+ ntalk dgram udp wait root /usr/sbin/tcpd /usr/sbin/in.ntalkd - .sp - .fi - .PP -diff -Naur tcp_wrappers_7.6/tcpd.h tcp_wrappers_7.6.gimli/tcpd.h ---- tcp_wrappers_7.6/tcpd.h 1996-03-19 09:22:25.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/tcpd.h 2002-01-07 08:50:19.000000000 -0600 -@@ -4,6 +4,25 @@ - * Author: Wietse Venema, Eindhoven University of Technology, The Netherlands. - */ - -+#ifndef _TCPWRAPPERS_TCPD_H -+#define _TCPWRAPPERS_TCPD_H -+ -+/* someone else may have defined this */ -+#undef __P -+ -+/* use prototypes if we have an ANSI C compiler or are using C++ */ -+#if defined(__STDC__) || defined(__cplusplus) -+#define __P(args) args -+#else -+#define __P(args) () -+#endif -+ -+/* Need definitions of struct sockaddr_in and FILE. */ -+#include <netinet/in.h> -+#include <stdio.h> -+ -+__BEGIN_DECLS -+ - /* Structure to describe one communications endpoint. */ - - #define STRING_LENGTH 128 /* hosts, users, processes */ -@@ -25,10 +44,10 @@ - char pid[10]; /* access via eval_pid(request) */ - struct host_info client[1]; /* client endpoint info */ - struct host_info server[1]; /* server endpoint info */ -- void (*sink) (); /* datagram sink function or 0 */ -- void (*hostname) (); /* address to printable hostname */ -- void (*hostaddr) (); /* address to printable address */ -- void (*cleanup) (); /* cleanup function or 0 */ -+ void (*sink) __P((int)); /* datagram sink function or 0 */ -+ void (*hostname) __P((struct host_info *)); /* address to printable hostname */ -+ void (*hostaddr) __P((struct host_info *)); /* address to printable address */ -+ void (*cleanup) __P((struct request_info *)); /* cleanup function or 0 */ - struct netconfig *config; /* netdir handle */ - }; - -@@ -61,25 +80,30 @@ - /* Global functions. */ - - #if defined(TLI) || defined(PTX) || defined(TLI_SEQUENT) --extern void fromhost(); /* get/validate client host info */ -+extern void fromhost __P((struct request_info *)); /* get/validate client host info */ - #else - #define fromhost sock_host /* no TLI support needed */ - #endif - --extern int hosts_access(); /* access control */ --extern void shell_cmd(); /* execute shell command */ --extern char *percent_x(); /* do %<char> expansion */ --extern void rfc931(); /* client name from RFC 931 daemon */ --extern void clean_exit(); /* clean up and exit */ --extern void refuse(); /* clean up and exit */ --extern char *xgets(); /* fgets() on steroids */ --extern char *split_at(); /* strchr() and split */ --extern unsigned long dot_quad_addr(); /* restricted inet_addr() */ -+extern void shell_cmd __P((char *)); /* execute shell command */ -+extern char *percent_x __P((char *, int, char *, struct request_info *)); /* do %<char> expansion */ -+extern void rfc931 __P((struct sockaddr_in *, struct sockaddr_in *, char *)); /* client name from RFC 931 daemon */ -+extern void clean_exit __P((struct request_info *)); /* clean up and exit */ -+extern void refuse __P((struct request_info *)); /* clean up and exit */ -+extern char *xgets __P((char *, int, FILE *)); /* fgets() on steroids */ -+extern char *split_at __P((char *, int)); /* strchr() and split */ -+extern unsigned long dot_quad_addr __P((char *)); /* restricted inet_addr() */ - - /* Global variables. */ - -+#ifdef HAVE_WEAKSYMS -+extern int allow_severity __attribute__ ((weak)); /* for connection logging */ -+extern int deny_severity __attribute__ ((weak)); /* for connection logging */ -+#else - extern int allow_severity; /* for connection logging */ - extern int deny_severity; /* for connection logging */ -+#endif -+ - extern char *hosts_allow_table; /* for verification mode redirection */ - extern char *hosts_deny_table; /* for verification mode redirection */ - extern int hosts_access_verbose; /* for verbose matching mode */ -@@ -92,9 +116,14 @@ - */ - - #ifdef __STDC__ -+extern int hosts_access(struct request_info *request); -+extern int hosts_ctl(char *daemon, char *client_name, char *client_addr, -+ char *client_user); - extern struct request_info *request_init(struct request_info *,...); - extern struct request_info *request_set(struct request_info *,...); - #else -+extern int hosts_access(); -+extern int hosts_ctl(); - extern struct request_info *request_init(); /* initialize request */ - extern struct request_info *request_set(); /* update request structure */ - #endif -@@ -117,27 +146,31 @@ - * host_info structures serve as caches for the lookup results. - */ - --extern char *eval_user(); /* client user */ --extern char *eval_hostname(); /* printable hostname */ --extern char *eval_hostaddr(); /* printable host address */ --extern char *eval_hostinfo(); /* host name or address */ --extern char *eval_client(); /* whatever is available */ --extern char *eval_server(); /* whatever is available */ -+extern char *eval_user __P((struct request_info *)); /* client user */ -+extern char *eval_hostname __P((struct host_info *)); /* printable hostname */ -+extern char *eval_hostaddr __P((struct host_info *)); /* printable host address */ -+extern char *eval_hostinfo __P((struct host_info *)); /* host name or address */ -+extern char *eval_client __P((struct request_info *)); /* whatever is available */ -+extern char *eval_server __P((struct request_info *)); /* whatever is available */ - #define eval_daemon(r) ((r)->daemon) /* daemon process name */ - #define eval_pid(r) ((r)->pid) /* process id */ - - /* Socket-specific methods, including DNS hostname lookups. */ - --extern void sock_host(); /* look up endpoint addresses */ --extern void sock_hostname(); /* translate address to hostname */ --extern void sock_hostaddr(); /* address to printable address */ -+/* look up endpoint addresses */ -+extern void sock_host __P((struct request_info *)); -+/* translate address to hostname */ -+extern void sock_hostname __P((struct host_info *)); -+/* address to printable address */ -+extern void sock_hostaddr __P((struct host_info *)); -+ - #define sock_methods(r) \ - { (r)->hostname = sock_hostname; (r)->hostaddr = sock_hostaddr; } - - /* The System V Transport-Level Interface (TLI) interface. */ - - #if defined(TLI) || defined(PTX) || defined(TLI_SEQUENT) --extern void tli_host(); /* look up endpoint addresses etc. */ -+extern void tli_host __P((struct request_info *)); /* look up endpoint addresses etc. */ - #endif - - /* -@@ -178,7 +211,7 @@ - * behavior. - */ - --extern void process_options(); /* execute options */ -+extern void process_options __P((char *, struct request_info *)); /* execute options */ - extern int dry_run; /* verification flag */ - - /* Bug workarounds. */ -@@ -217,3 +250,7 @@ - #define strtok my_strtok - extern char *my_strtok(); - #endif -+ -+__END_DECLS -+ -+#endif /* tcpd.h */ -diff -Naur tcp_wrappers_7.6/tcpdchk.c tcp_wrappers_7.6.gimli/tcpdchk.c ---- tcp_wrappers_7.6/tcpdchk.c 1997-02-11 19:13:25.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/tcpdchk.c 2002-01-07 08:50:19.000000000 -0600 -@@ -350,6 +350,8 @@ - { - if (pat[0] == '@') { - tcpd_warn("%s: daemon name begins with "@"", pat); -+ } else if (pat[0] == '/') { -+ tcpd_warn("%s: daemon name begins with "/"", pat); - } else if (pat[0] == '.') { - tcpd_warn("%s: daemon name begins with dot", pat); - } else if (pat[strlen(pat) - 1] == '.') { -@@ -382,6 +384,8 @@ - { - if (pat[0] == '@') { /* @netgroup */ - tcpd_warn("%s: user name begins with "@"", pat); -+ } else if (pat[0] == '/') { -+ tcpd_warn("%s: user name begins with "/"", pat); - } else if (pat[0] == '.') { - tcpd_warn("%s: user name begins with dot", pat); - } else if (pat[strlen(pat) - 1] == '.') { -@@ -402,8 +406,13 @@ - static int check_host(pat) - char *pat; - { -+ char buf[BUFSIZ]; - char *mask; - int addr_count = 1; -+ FILE *fp; -+ struct tcpd_context saved_context; -+ char *cp; -+ char *wsp = " \t\r\n"; - - if (pat[0] == '@') { /* @netgroup */ - #ifdef NO_NETGRENT -@@ -422,6 +431,21 @@ - tcpd_warn("netgroup support disabled"); - #endif - #endif -+ } else if (pat[0] == '/') { /* /path/name */ -+ if ((fp = fopen(pat, "r")) != 0) { -+ saved_context = tcpd_context; -+ tcpd_context.file = pat; -+ tcpd_context.line = 0; -+ while (fgets(buf, sizeof(buf), fp)) { -+ tcpd_context.line++; -+ for (cp = strtok(buf, wsp); cp; cp = strtok((char *) 0, wsp)) -+ check_host(cp); -+ } -+ tcpd_context = saved_context; -+ fclose(fp); -+ } else if (errno != ENOENT) { -+ tcpd_warn("open %s: %m", pat); -+ } - } else if (mask = split_at(pat, '/')) { /* network/netmask */ - if (dot_quad_addr(pat) == INADDR_NONE - || dot_quad_addr(mask) == INADDR_NONE) -diff -Naur tcp_wrappers_7.6/try-from.8 tcp_wrappers_7.6.gimli/try-from.8 ---- tcp_wrappers_7.6/try-from.8 1969-12-31 18:00:00.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/try-from.8 2002-01-07 08:50:19.000000000 -0600 -@@ -0,0 +1,28 @@ -+.TH TRY-FROM 8 "21th June 1997" Linux "Linux Programmer's Manual" -+.SH NAME -+try-from - test program for the tcp_wrapper -+.SH SYNOPSIS -+.B try-from -+.SH DESCRIPTION -+The -+.B try-from -+command can be called via a remote shell command to find out -+if the hostname and address are properly recognized -+by the -+.B tcp_wrapper -+library, if username lookup works, and (SysV only) if the TLI -+on top of IP heuristics work. Diagnostics are reported through -+.BR syslog (3) -+and redirected to stderr. -+ -+Example: -+ -+rsh host /some/where/try-from -+ -+.SH SEE ALSO -+.BR hosts_access (5), -+.BR hosts_options (5), -+.BR tcpd (8) -+.SH AUTHOR -+Wietse Venema, Eindhoven University of Technology, The Netherlands. -+ -diff -Naur tcp_wrappers_7.6/weak_symbols.c tcp_wrappers_7.6.gimli/weak_symbols.c ---- tcp_wrappers_7.6/weak_symbols.c 1969-12-31 18:00:00.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/weak_symbols.c 2002-01-07 08:50:19.000000000 -0600 -@@ -0,0 +1,11 @@ -+ /* -+ * @(#) weak_symbols.h 1.5 99/12/29 23:50 -+ * -+ * Author: Anthony Towns ajt@debian.org -+ */ -+ -+#ifdef HAVE_WEAKSYMS -+#include <syslog.h> -+int deny_severity = LOG_WARNING; -+int allow_severity = SEVERITY; -+#endif -diff -Naur tcp_wrappers_7.6/workarounds.c tcp_wrappers_7.6.gimli/workarounds.c ---- tcp_wrappers_7.6/workarounds.c 1996-03-19 09:22:26.000000000 -0600 -+++ tcp_wrappers_7.6.gimli/workarounds.c 2002-01-07 08:50:19.000000000 -0600 -@@ -163,7 +163,11 @@ - int fix_getpeername(sock, sa, len) - int sock; - struct sockaddr *sa; -+#if !defined(__GLIBC__) - int *len; -+#else /* __GLIBC__ */ -+size_t *len; -+#endif /* __GLIBC__ */ - { - int ret; - struct sockaddr_in *sin = (struct sockaddr_in *) sa; diff --git a/src/patches/udev-208-fix_uint8_t.patch b/src/patches/udev-208-fix_uint8_t.patch deleted file mode 100644 index 06aee3bac..000000000 --- a/src/patches/udev-208-fix_uint8_t.patch +++ /dev/null @@ -1,11 +0,0 @@ -diff -Naur systemd-208.org/src/udev/mtd_probe/mtd_probe.h systemd-208/src/udev/mtd_probe/mtd_probe.h ---- systemd-208.org/src/udev/mtd_probe/mtd_probe.h 2013-08-13 22:02:47.000000000 +0200 -+++ systemd-208/src/udev/mtd_probe/mtd_probe.h 2017-02-07 18:08:33.492985563 +0100 -@@ -18,6 +18,7 @@ - */ - - #include <mtd/mtd-user.h> -+#include <stdint.h> - - /* Full oob structure as written on the flash */ - struct sm_oob { diff --git a/src/patches/udev-208_remove_systemd_log.patch b/src/patches/udev-208_remove_systemd_log.patch deleted file mode 100644 index 927de1e33..000000000 --- a/src/patches/udev-208_remove_systemd_log.patch +++ /dev/null @@ -1,12 +0,0 @@ -diff -Naur systemd-208.org/src/libudev/libudev-util.c systemd-208/src/libudev/libudev-util.c ---- systemd-208.org/src/libudev/libudev-util.c 2013-09-23 21:31:55.000000000 +0200 -+++ systemd-208/src/libudev/libudev-util.c 2013-11-19 23:18:10.326350131 +0100 -@@ -481,7 +481,7 @@ - if (fd < 0) - return -errno; - -- len = snprintf(text, sizeof(text), "<30>systemd-udevd[%u]: ", getpid()); -+ len = snprintf(text, sizeof(text), "udevd[%u]: ", getpid()); - - va_start(ap, fmt); - len += vsnprintf(text + len, sizeof(text) - len, fmt, ap);
hooks/post-receive -- IPFire 2.x development tree