-options cfg80211 ieee80211_regdom=EU
+#options cfg80211 ieee80211_regdom=DE
blacklist ieee80211
'title' => "$Lang::tr{'edit hosts'}",
'enabled' => 1,
};
+ $subnetwork->{'51.routes'} = {
+ 'caption' => $Lang::tr{'static routes'},
+ 'uri' => '/cgi-bin/routing.cgi',
+ 'title' => "$Lang::tr{'static routes'}",
+ 'enabled' => 1,
+ };
$subnetwork->{'60.upload'} = {
'caption' => $Lang::tr{'upload'},
'uri' => '/cgi-bin/upload.cgi',
srv/web/ipfire/cgi-bin/proxy.cgi
srv/web/ipfire/cgi-bin/qos.cgi
srv/web/ipfire/cgi-bin/remote.cgi
+srv/web/ipfire/cgi-bin/routing.cgi
srv/web/ipfire/cgi-bin/services.cgi
srv/web/ipfire/cgi-bin/speed.cgi
srv/web/ipfire/cgi-bin/system.cgi
#usr/lib/ldscripts/i386linux.xn
#usr/lib/ldscripts/i386linux.xr
#usr/lib/ldscripts/i386linux.xu
-#usr/lib/libbfd-2.17.so
+#usr/lib/libbfd-2.18.so
#usr/lib/libbfd.a
#usr/lib/libbfd.la
#usr/lib/libbfd.so
#usr/lib/libiberty.a
-#usr/lib/libopcodes-2.17.so
+#usr/lib/libopcodes-2.18.so
#usr/lib/libopcodes.a
#usr/lib/libopcodes.la
#usr/lib/libopcodes.so
#usr/man/man1/size.1
#usr/man/man1/strings.1
#usr/man/man1/strip.1
+#usr/man/man1/windmc.1
#usr/man/man1/windres.1
#usr/bin/i586-pc-linux-gnu-c++
#usr/bin/i586-pc-linux-gnu-g++
#usr/bin/i586-pc-linux-gnu-gcc
-#usr/bin/i586-pc-linux-gnu-gcc-4.0.4
+#usr/bin/i586-pc-linux-gnu-gcc-4.1.2
#usr/include/c++
-#usr/include/c++/4.0.4
-#usr/include/c++/4.0.4/algorithm
-#usr/include/c++/4.0.4/backward
-#usr/include/c++/4.0.4/backward/algo.h
-#usr/include/c++/4.0.4/backward/algobase.h
-#usr/include/c++/4.0.4/backward/alloc.h
-#usr/include/c++/4.0.4/backward/backward_warning.h
-#usr/include/c++/4.0.4/backward/bvector.h
-#usr/include/c++/4.0.4/backward/complex.h
-#usr/include/c++/4.0.4/backward/defalloc.h
-#usr/include/c++/4.0.4/backward/deque.h
-#usr/include/c++/4.0.4/backward/fstream.h
-#usr/include/c++/4.0.4/backward/function.h
-#usr/include/c++/4.0.4/backward/hash_map.h
-#usr/include/c++/4.0.4/backward/hash_set.h
-#usr/include/c++/4.0.4/backward/hashtable.h
-#usr/include/c++/4.0.4/backward/heap.h
-#usr/include/c++/4.0.4/backward/iomanip.h
-#usr/include/c++/4.0.4/backward/iostream.h
-#usr/include/c++/4.0.4/backward/istream.h
-#usr/include/c++/4.0.4/backward/iterator.h
-#usr/include/c++/4.0.4/backward/list.h
-#usr/include/c++/4.0.4/backward/map.h
-#usr/include/c++/4.0.4/backward/multimap.h
-#usr/include/c++/4.0.4/backward/multiset.h
-#usr/include/c++/4.0.4/backward/new.h
-#usr/include/c++/4.0.4/backward/ostream.h
-#usr/include/c++/4.0.4/backward/pair.h
-#usr/include/c++/4.0.4/backward/queue.h
-#usr/include/c++/4.0.4/backward/rope.h
-#usr/include/c++/4.0.4/backward/set.h
-#usr/include/c++/4.0.4/backward/slist.h
-#usr/include/c++/4.0.4/backward/stack.h
-#usr/include/c++/4.0.4/backward/stream.h
-#usr/include/c++/4.0.4/backward/streambuf.h
-#usr/include/c++/4.0.4/backward/strstream
-#usr/include/c++/4.0.4/backward/tempbuf.h
-#usr/include/c++/4.0.4/backward/tree.h
-#usr/include/c++/4.0.4/backward/vector.h
-#usr/include/c++/4.0.4/bits
-#usr/include/c++/4.0.4/bits/allocator.h
-#usr/include/c++/4.0.4/bits/atomicity.h
-#usr/include/c++/4.0.4/bits/basic_ios.h
-#usr/include/c++/4.0.4/bits/basic_ios.tcc
-#usr/include/c++/4.0.4/bits/basic_string.h
-#usr/include/c++/4.0.4/bits/basic_string.tcc
-#usr/include/c++/4.0.4/bits/boost_concept_check.h
-#usr/include/c++/4.0.4/bits/char_traits.h
-#usr/include/c++/4.0.4/bits/cmath.tcc
-#usr/include/c++/4.0.4/bits/codecvt.h
-#usr/include/c++/4.0.4/bits/concept_check.h
-#usr/include/c++/4.0.4/bits/concurrence.h
-#usr/include/c++/4.0.4/bits/cpp_type_traits.h
-#usr/include/c++/4.0.4/bits/deque.tcc
-#usr/include/c++/4.0.4/bits/fstream.tcc
-#usr/include/c++/4.0.4/bits/functexcept.h
-#usr/include/c++/4.0.4/bits/gslice.h
-#usr/include/c++/4.0.4/bits/gslice_array.h
-#usr/include/c++/4.0.4/bits/indirect_array.h
-#usr/include/c++/4.0.4/bits/ios_base.h
-#usr/include/c++/4.0.4/bits/istream.tcc
-#usr/include/c++/4.0.4/bits/list.tcc
-#usr/include/c++/4.0.4/bits/locale_classes.h
-#usr/include/c++/4.0.4/bits/locale_facets.h
-#usr/include/c++/4.0.4/bits/locale_facets.tcc
-#usr/include/c++/4.0.4/bits/localefwd.h
-#usr/include/c++/4.0.4/bits/mask_array.h
-#usr/include/c++/4.0.4/bits/ostream.tcc
-#usr/include/c++/4.0.4/bits/postypes.h
-#usr/include/c++/4.0.4/bits/slice_array.h
-#usr/include/c++/4.0.4/bits/sstream.tcc
-#usr/include/c++/4.0.4/bits/stl_algo.h
-#usr/include/c++/4.0.4/bits/stl_algobase.h
-#usr/include/c++/4.0.4/bits/stl_bvector.h
-#usr/include/c++/4.0.4/bits/stl_construct.h
-#usr/include/c++/4.0.4/bits/stl_deque.h
-#usr/include/c++/4.0.4/bits/stl_function.h
-#usr/include/c++/4.0.4/bits/stl_heap.h
-#usr/include/c++/4.0.4/bits/stl_iterator.h
-#usr/include/c++/4.0.4/bits/stl_iterator_base_funcs.h
-#usr/include/c++/4.0.4/bits/stl_iterator_base_types.h
-#usr/include/c++/4.0.4/bits/stl_list.h
-#usr/include/c++/4.0.4/bits/stl_map.h
-#usr/include/c++/4.0.4/bits/stl_multimap.h
-#usr/include/c++/4.0.4/bits/stl_multiset.h
-#usr/include/c++/4.0.4/bits/stl_numeric.h
-#usr/include/c++/4.0.4/bits/stl_pair.h
-#usr/include/c++/4.0.4/bits/stl_queue.h
-#usr/include/c++/4.0.4/bits/stl_raw_storage_iter.h
-#usr/include/c++/4.0.4/bits/stl_relops.h
-#usr/include/c++/4.0.4/bits/stl_set.h
-#usr/include/c++/4.0.4/bits/stl_stack.h
-#usr/include/c++/4.0.4/bits/stl_tempbuf.h
-#usr/include/c++/4.0.4/bits/stl_tree.h
-#usr/include/c++/4.0.4/bits/stl_uninitialized.h
-#usr/include/c++/4.0.4/bits/stl_vector.h
-#usr/include/c++/4.0.4/bits/stream_iterator.h
-#usr/include/c++/4.0.4/bits/streambuf.tcc
-#usr/include/c++/4.0.4/bits/streambuf_iterator.h
-#usr/include/c++/4.0.4/bits/stringfwd.h
-#usr/include/c++/4.0.4/bits/valarray_after.h
-#usr/include/c++/4.0.4/bits/valarray_array.h
-#usr/include/c++/4.0.4/bits/valarray_array.tcc
-#usr/include/c++/4.0.4/bits/valarray_before.h
-#usr/include/c++/4.0.4/bits/vector.tcc
-#usr/include/c++/4.0.4/bitset
-#usr/include/c++/4.0.4/cassert
-#usr/include/c++/4.0.4/cctype
-#usr/include/c++/4.0.4/cerrno
-#usr/include/c++/4.0.4/cfloat
-#usr/include/c++/4.0.4/ciso646
-#usr/include/c++/4.0.4/climits
-#usr/include/c++/4.0.4/clocale
-#usr/include/c++/4.0.4/cmath
-#usr/include/c++/4.0.4/complex
-#usr/include/c++/4.0.4/csetjmp
-#usr/include/c++/4.0.4/csignal
-#usr/include/c++/4.0.4/cstdarg
-#usr/include/c++/4.0.4/cstddef
-#usr/include/c++/4.0.4/cstdio
-#usr/include/c++/4.0.4/cstdlib
-#usr/include/c++/4.0.4/cstring
-#usr/include/c++/4.0.4/ctime
-#usr/include/c++/4.0.4/cwchar
-#usr/include/c++/4.0.4/cwctype
-#usr/include/c++/4.0.4/cxxabi.h
-#usr/include/c++/4.0.4/debug
-#usr/include/c++/4.0.4/debug/bitset
-#usr/include/c++/4.0.4/debug/debug.h
-#usr/include/c++/4.0.4/debug/deque
-#usr/include/c++/4.0.4/debug/formatter.h
-#usr/include/c++/4.0.4/debug/hash_map
-#usr/include/c++/4.0.4/debug/hash_map.h
-#usr/include/c++/4.0.4/debug/hash_multimap.h
-#usr/include/c++/4.0.4/debug/hash_multiset.h
-#usr/include/c++/4.0.4/debug/hash_set
-#usr/include/c++/4.0.4/debug/hash_set.h
-#usr/include/c++/4.0.4/debug/list
-#usr/include/c++/4.0.4/debug/map
-#usr/include/c++/4.0.4/debug/map.h
-#usr/include/c++/4.0.4/debug/multimap.h
-#usr/include/c++/4.0.4/debug/multiset.h
-#usr/include/c++/4.0.4/debug/safe_base.h
-#usr/include/c++/4.0.4/debug/safe_iterator.h
-#usr/include/c++/4.0.4/debug/safe_iterator.tcc
-#usr/include/c++/4.0.4/debug/safe_sequence.h
-#usr/include/c++/4.0.4/debug/set
-#usr/include/c++/4.0.4/debug/set.h
-#usr/include/c++/4.0.4/debug/string
-#usr/include/c++/4.0.4/debug/vector
-#usr/include/c++/4.0.4/deque
-#usr/include/c++/4.0.4/exception
-#usr/include/c++/4.0.4/exception_defines.h
-#usr/include/c++/4.0.4/ext
-#usr/include/c++/4.0.4/ext/algorithm
-#usr/include/c++/4.0.4/ext/array_allocator.h
-#usr/include/c++/4.0.4/ext/bitmap_allocator.h
-#usr/include/c++/4.0.4/ext/codecvt_specializations.h
-#usr/include/c++/4.0.4/ext/debug_allocator.h
-#usr/include/c++/4.0.4/ext/functional
-#usr/include/c++/4.0.4/ext/hash_fun.h
-#usr/include/c++/4.0.4/ext/hash_map
-#usr/include/c++/4.0.4/ext/hash_set
-#usr/include/c++/4.0.4/ext/hashtable.h
-#usr/include/c++/4.0.4/ext/iterator
-#usr/include/c++/4.0.4/ext/malloc_allocator.h
-#usr/include/c++/4.0.4/ext/memory
-#usr/include/c++/4.0.4/ext/mt_allocator.h
-#usr/include/c++/4.0.4/ext/new_allocator.h
-#usr/include/c++/4.0.4/ext/numeric
-#usr/include/c++/4.0.4/ext/pod_char_traits.h
-#usr/include/c++/4.0.4/ext/pool_allocator.h
-#usr/include/c++/4.0.4/ext/rb_tree
-#usr/include/c++/4.0.4/ext/rope
-#usr/include/c++/4.0.4/ext/ropeimpl.h
-#usr/include/c++/4.0.4/ext/slist
-#usr/include/c++/4.0.4/ext/stdio_filebuf.h
-#usr/include/c++/4.0.4/ext/stdio_sync_filebuf.h
-#usr/include/c++/4.0.4/fstream
-#usr/include/c++/4.0.4/functional
-#usr/include/c++/4.0.4/i586-pc-linux-gnu
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/atomic_word.h
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/basic_file.h
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/c++allocator.h
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/c++config.h
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/c++io.h
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/c++locale.h
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/ctype_base.h
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/ctype_inline.h
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/ctype_noninline.h
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/cxxabi_tweaks.h
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/gthr-default.h
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/gthr-posix.h
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/gthr-single.h
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/gthr-tpf.h
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/gthr.h
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/messages_members.h
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/os_defines.h
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/stdc++.h.gch
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/stdc++.h.gch/O0g.gch
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/stdc++.h.gch/O2g.gch
-#usr/include/c++/4.0.4/i586-pc-linux-gnu/bits/time_members.h
-#usr/include/c++/4.0.4/iomanip
-#usr/include/c++/4.0.4/ios
-#usr/include/c++/4.0.4/iosfwd
-#usr/include/c++/4.0.4/iostream
-#usr/include/c++/4.0.4/istream
-#usr/include/c++/4.0.4/iterator
-#usr/include/c++/4.0.4/limits
-#usr/include/c++/4.0.4/list
-#usr/include/c++/4.0.4/locale
-#usr/include/c++/4.0.4/map
-#usr/include/c++/4.0.4/memory
-#usr/include/c++/4.0.4/new
-#usr/include/c++/4.0.4/numeric
-#usr/include/c++/4.0.4/ostream
-#usr/include/c++/4.0.4/queue
-#usr/include/c++/4.0.4/set
-#usr/include/c++/4.0.4/sstream
-#usr/include/c++/4.0.4/stack
-#usr/include/c++/4.0.4/stdexcept
-#usr/include/c++/4.0.4/streambuf
-#usr/include/c++/4.0.4/string
-#usr/include/c++/4.0.4/tr1
-#usr/include/c++/4.0.4/tr1/array
-#usr/include/c++/4.0.4/tr1/bind_iterate.h
-#usr/include/c++/4.0.4/tr1/bind_repeat.h
-#usr/include/c++/4.0.4/tr1/boost_shared_ptr.h
-#usr/include/c++/4.0.4/tr1/functional
-#usr/include/c++/4.0.4/tr1/functional_iterate.h
-#usr/include/c++/4.0.4/tr1/hashtable
-#usr/include/c++/4.0.4/tr1/memory
-#usr/include/c++/4.0.4/tr1/mu_iterate.h
-#usr/include/c++/4.0.4/tr1/ref_fwd.h
-#usr/include/c++/4.0.4/tr1/ref_wrap_iterate.h
-#usr/include/c++/4.0.4/tr1/repeat.h
-#usr/include/c++/4.0.4/tr1/tuple
-#usr/include/c++/4.0.4/tr1/tuple_iterate.h
-#usr/include/c++/4.0.4/tr1/type_traits
-#usr/include/c++/4.0.4/tr1/type_traits_fwd.h
-#usr/include/c++/4.0.4/tr1/unordered_map
-#usr/include/c++/4.0.4/tr1/unordered_set
-#usr/include/c++/4.0.4/tr1/utility
-#usr/include/c++/4.0.4/typeinfo
-#usr/include/c++/4.0.4/utility
-#usr/include/c++/4.0.4/valarray
-#usr/include/c++/4.0.4/vector
+#usr/include/c++/4.1.2
+#usr/include/c++/4.1.2/algorithm
+#usr/include/c++/4.1.2/backward
+#usr/include/c++/4.1.2/backward/algo.h
+#usr/include/c++/4.1.2/backward/algobase.h
+#usr/include/c++/4.1.2/backward/alloc.h
+#usr/include/c++/4.1.2/backward/backward_warning.h
+#usr/include/c++/4.1.2/backward/bvector.h
+#usr/include/c++/4.1.2/backward/complex.h
+#usr/include/c++/4.1.2/backward/defalloc.h
+#usr/include/c++/4.1.2/backward/deque.h
+#usr/include/c++/4.1.2/backward/fstream.h
+#usr/include/c++/4.1.2/backward/function.h
+#usr/include/c++/4.1.2/backward/hash_map.h
+#usr/include/c++/4.1.2/backward/hash_set.h
+#usr/include/c++/4.1.2/backward/hashtable.h
+#usr/include/c++/4.1.2/backward/heap.h
+#usr/include/c++/4.1.2/backward/iomanip.h
+#usr/include/c++/4.1.2/backward/iostream.h
+#usr/include/c++/4.1.2/backward/istream.h
+#usr/include/c++/4.1.2/backward/iterator.h
+#usr/include/c++/4.1.2/backward/list.h
+#usr/include/c++/4.1.2/backward/map.h
+#usr/include/c++/4.1.2/backward/multimap.h
+#usr/include/c++/4.1.2/backward/multiset.h
+#usr/include/c++/4.1.2/backward/new.h
+#usr/include/c++/4.1.2/backward/ostream.h
+#usr/include/c++/4.1.2/backward/pair.h
+#usr/include/c++/4.1.2/backward/queue.h
+#usr/include/c++/4.1.2/backward/rope.h
+#usr/include/c++/4.1.2/backward/set.h
+#usr/include/c++/4.1.2/backward/slist.h
+#usr/include/c++/4.1.2/backward/stack.h
+#usr/include/c++/4.1.2/backward/stream.h
+#usr/include/c++/4.1.2/backward/streambuf.h
+#usr/include/c++/4.1.2/backward/strstream
+#usr/include/c++/4.1.2/backward/tempbuf.h
+#usr/include/c++/4.1.2/backward/tree.h
+#usr/include/c++/4.1.2/backward/vector.h
+#usr/include/c++/4.1.2/bits
+#usr/include/c++/4.1.2/bits/allocator.h
+#usr/include/c++/4.1.2/bits/atomicity.h
+#usr/include/c++/4.1.2/bits/basic_ios.h
+#usr/include/c++/4.1.2/bits/basic_ios.tcc
+#usr/include/c++/4.1.2/bits/basic_string.h
+#usr/include/c++/4.1.2/bits/basic_string.tcc
+#usr/include/c++/4.1.2/bits/boost_concept_check.h
+#usr/include/c++/4.1.2/bits/char_traits.h
+#usr/include/c++/4.1.2/bits/cmath.tcc
+#usr/include/c++/4.1.2/bits/codecvt.h
+#usr/include/c++/4.1.2/bits/concept_check.h
+#usr/include/c++/4.1.2/bits/concurrence.h
+#usr/include/c++/4.1.2/bits/cpp_type_traits.h
+#usr/include/c++/4.1.2/bits/deque.tcc
+#usr/include/c++/4.1.2/bits/fstream.tcc
+#usr/include/c++/4.1.2/bits/functexcept.h
+#usr/include/c++/4.1.2/bits/gslice.h
+#usr/include/c++/4.1.2/bits/gslice_array.h
+#usr/include/c++/4.1.2/bits/indirect_array.h
+#usr/include/c++/4.1.2/bits/ios_base.h
+#usr/include/c++/4.1.2/bits/istream.tcc
+#usr/include/c++/4.1.2/bits/list.tcc
+#usr/include/c++/4.1.2/bits/locale_classes.h
+#usr/include/c++/4.1.2/bits/locale_facets.h
+#usr/include/c++/4.1.2/bits/locale_facets.tcc
+#usr/include/c++/4.1.2/bits/localefwd.h
+#usr/include/c++/4.1.2/bits/mask_array.h
+#usr/include/c++/4.1.2/bits/ostream.tcc
+#usr/include/c++/4.1.2/bits/postypes.h
+#usr/include/c++/4.1.2/bits/slice_array.h
+#usr/include/c++/4.1.2/bits/sstream.tcc
+#usr/include/c++/4.1.2/bits/stl_algo.h
+#usr/include/c++/4.1.2/bits/stl_algobase.h
+#usr/include/c++/4.1.2/bits/stl_bvector.h
+#usr/include/c++/4.1.2/bits/stl_construct.h
+#usr/include/c++/4.1.2/bits/stl_deque.h
+#usr/include/c++/4.1.2/bits/stl_function.h
+#usr/include/c++/4.1.2/bits/stl_heap.h
+#usr/include/c++/4.1.2/bits/stl_iterator.h
+#usr/include/c++/4.1.2/bits/stl_iterator_base_funcs.h
+#usr/include/c++/4.1.2/bits/stl_iterator_base_types.h
+#usr/include/c++/4.1.2/bits/stl_list.h
+#usr/include/c++/4.1.2/bits/stl_map.h
+#usr/include/c++/4.1.2/bits/stl_multimap.h
+#usr/include/c++/4.1.2/bits/stl_multiset.h
+#usr/include/c++/4.1.2/bits/stl_numeric.h
+#usr/include/c++/4.1.2/bits/stl_pair.h
+#usr/include/c++/4.1.2/bits/stl_queue.h
+#usr/include/c++/4.1.2/bits/stl_raw_storage_iter.h
+#usr/include/c++/4.1.2/bits/stl_relops.h
+#usr/include/c++/4.1.2/bits/stl_set.h
+#usr/include/c++/4.1.2/bits/stl_stack.h
+#usr/include/c++/4.1.2/bits/stl_tempbuf.h
+#usr/include/c++/4.1.2/bits/stl_tree.h
+#usr/include/c++/4.1.2/bits/stl_uninitialized.h
+#usr/include/c++/4.1.2/bits/stl_vector.h
+#usr/include/c++/4.1.2/bits/stream_iterator.h
+#usr/include/c++/4.1.2/bits/streambuf.tcc
+#usr/include/c++/4.1.2/bits/streambuf_iterator.h
+#usr/include/c++/4.1.2/bits/stringfwd.h
+#usr/include/c++/4.1.2/bits/valarray_after.h
+#usr/include/c++/4.1.2/bits/valarray_array.h
+#usr/include/c++/4.1.2/bits/valarray_array.tcc
+#usr/include/c++/4.1.2/bits/valarray_before.h
+#usr/include/c++/4.1.2/bits/vector.tcc
+#usr/include/c++/4.1.2/bitset
+#usr/include/c++/4.1.2/cassert
+#usr/include/c++/4.1.2/cctype
+#usr/include/c++/4.1.2/cerrno
+#usr/include/c++/4.1.2/cfloat
+#usr/include/c++/4.1.2/ciso646
+#usr/include/c++/4.1.2/climits
+#usr/include/c++/4.1.2/clocale
+#usr/include/c++/4.1.2/cmath
+#usr/include/c++/4.1.2/complex
+#usr/include/c++/4.1.2/csetjmp
+#usr/include/c++/4.1.2/csignal
+#usr/include/c++/4.1.2/cstdarg
+#usr/include/c++/4.1.2/cstddef
+#usr/include/c++/4.1.2/cstdio
+#usr/include/c++/4.1.2/cstdlib
+#usr/include/c++/4.1.2/cstring
+#usr/include/c++/4.1.2/ctime
+#usr/include/c++/4.1.2/cwchar
+#usr/include/c++/4.1.2/cwctype
+#usr/include/c++/4.1.2/cxxabi.h
+#usr/include/c++/4.1.2/debug
+#usr/include/c++/4.1.2/debug/bitset
+#usr/include/c++/4.1.2/debug/debug.h
+#usr/include/c++/4.1.2/debug/deque
+#usr/include/c++/4.1.2/debug/formatter.h
+#usr/include/c++/4.1.2/debug/functions.h
+#usr/include/c++/4.1.2/debug/hash_map
+#usr/include/c++/4.1.2/debug/hash_map.h
+#usr/include/c++/4.1.2/debug/hash_multimap.h
+#usr/include/c++/4.1.2/debug/hash_multiset.h
+#usr/include/c++/4.1.2/debug/hash_set
+#usr/include/c++/4.1.2/debug/hash_set.h
+#usr/include/c++/4.1.2/debug/list
+#usr/include/c++/4.1.2/debug/macros.h
+#usr/include/c++/4.1.2/debug/map
+#usr/include/c++/4.1.2/debug/map.h
+#usr/include/c++/4.1.2/debug/multimap.h
+#usr/include/c++/4.1.2/debug/multiset.h
+#usr/include/c++/4.1.2/debug/safe_base.h
+#usr/include/c++/4.1.2/debug/safe_iterator.h
+#usr/include/c++/4.1.2/debug/safe_iterator.tcc
+#usr/include/c++/4.1.2/debug/safe_sequence.h
+#usr/include/c++/4.1.2/debug/set
+#usr/include/c++/4.1.2/debug/set.h
+#usr/include/c++/4.1.2/debug/string
+#usr/include/c++/4.1.2/debug/vector
+#usr/include/c++/4.1.2/deque
+#usr/include/c++/4.1.2/exception
+#usr/include/c++/4.1.2/exception_defines.h
+#usr/include/c++/4.1.2/ext
+#usr/include/c++/4.1.2/ext/algorithm
+#usr/include/c++/4.1.2/ext/array_allocator.h
+#usr/include/c++/4.1.2/ext/bitmap_allocator.h
+#usr/include/c++/4.1.2/ext/codecvt_specializations.h
+#usr/include/c++/4.1.2/ext/debug_allocator.h
+#usr/include/c++/4.1.2/ext/functional
+#usr/include/c++/4.1.2/ext/hash_fun.h
+#usr/include/c++/4.1.2/ext/hash_map
+#usr/include/c++/4.1.2/ext/hash_set
+#usr/include/c++/4.1.2/ext/hashtable.h
+#usr/include/c++/4.1.2/ext/iterator
+#usr/include/c++/4.1.2/ext/malloc_allocator.h
+#usr/include/c++/4.1.2/ext/memory
+#usr/include/c++/4.1.2/ext/mt_allocator.h
+#usr/include/c++/4.1.2/ext/new_allocator.h
+#usr/include/c++/4.1.2/ext/numeric
+#usr/include/c++/4.1.2/ext/pb_assoc
+#usr/include/c++/4.1.2/ext/pb_assoc/assoc_cntnr.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/data_type.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/assoc_cntnr_base.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/d_extract_key.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/d_find_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/d_insert_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/erase_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/extract_key.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/info_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/insert_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_assoc_cntnr/iterators_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_hash_assoc_cntnr
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_hash_assoc_cntnr/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_hash_assoc_cntnr/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_hash_assoc_cntnr/resize_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/erase_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/node_iteration_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/policy_access_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/r_erase_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/r_range_iteration_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/range_iteration_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/basic_tree_assoc_cntnr/split_join_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/bin_search_tree_.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/cond_dtor_entry_dealtor.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/cond_key_dtor_entry_dealtor.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/debug_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/erase_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/find_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/find_iterators.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/info_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/insert_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/iterators_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/node_iterators.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/r_erase_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/rotate_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/bin_search_tree_/split_join_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_hash_assoc_cntnr
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_hash_assoc_cntnr/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/cc_ht_map_.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/cmp_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/cond_key_dtor_entry_dealtor.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/constructor_destructor_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/constructor_destructor_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/debug_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/debug_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/debug_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/entry_list_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/erase_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/erase_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/erase_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/find_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/find_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/find_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/info_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/insert_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/insert_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/insert_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/iterators_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/policy_access_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/resize_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/resize_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/resize_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/size_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cc_ht_map_/standard_policies.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/cond_dealtor.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/ds_trait_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/eq_fn
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/eq_fn/eq_by_less.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/eq_fn/hash_eq_fn.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_hash_assoc_cntnr
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_hash_assoc_cntnr/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/constructor_destructor_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/constructor_destructor_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/debug_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/debug_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/debug_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/erase_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/erase_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/erase_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/find_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/find_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/find_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/gp_ht_map_.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/info_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/insert_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/insert_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/insert_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/iterator_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/policy_access_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/resize_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/resize_no_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/gp_ht_map_/resize_store_hash_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/direct_mask_range_hashing_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/direct_mod_range_hashing_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/linear_probe_fn_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/mask_based_range_hashing.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/mod_based_range_hashing.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/probe_fn_base.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/quadratic_probe_fn_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/ranged_hash_fn.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_fn/ranged_probe_fn.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/hash_types_traits.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_assoc_cntnr
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_assoc_cntnr/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_assoc_cntnr/policy_access_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/debug_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/erase_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/find_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/info_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/insert_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/iterators_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/lu_map_.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_map_/policy_access_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_policy
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_policy/counter_lu_metadata_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_policy/counter_lu_policy_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/lu_policy/mtf_lu_policy_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/map_debug_base.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/mapping_level_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/ms_category_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/ms_trait_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/order_statistics_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/cond_dtor.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/debug_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/erase_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/find_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/info_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/insert_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/iterators_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/node_iterators.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/ov_tree_map_.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/ov_tree_map_/split_join_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/debug_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/erase_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/find_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/info_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/insert_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/node.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/rb_tree_.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/rb_tree_map_/split_join_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/resize_policy
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/resize_policy/cc_hash_max_collision_resize_trigger_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/resize_policy/hash_exponential_size_policy_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/resize_policy/hash_load_check_resize_trigger_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/resize_policy/hash_prime_size_policy_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/resize_policy/hash_standard_resize_policy_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/resize_policy/ht_prime_size_policy_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/resize_policy/size_base.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/constructors_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/debug_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/erase_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/find_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/info_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/insert_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/node.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/splay_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/splay_tree_.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/splay_tree_/split_join_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/standard_policies.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/standard_sizes.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/tree_assoc_cntnr
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/tree_assoc_cntnr/constructor_destructor_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/tree_policy
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/tree_policy/null_node_updator_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/tree_policy/order_statistics_imp.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/type_utils.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist/typelist_append.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist/typelist_apply.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist/typelist_at_index.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist/typelist_contains.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist/typelist_filter.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist/typelist_transform.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/typelist/typelist_typelist_append.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/types_traits.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/unordered_iterator
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/unordered_iterator/const_find_iterator.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/unordered_iterator/const_iterator.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/unordered_iterator/find_iterator.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/unordered_iterator/iterator.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/constructor_destructor_and_related.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/erase_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/erase_if_pred.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/find_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/info_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/insert_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/invalidation_guarantee_selector.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/it_value_type_traits.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/iterator.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/iterator_fn_imps.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/ref_pair.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/value_type_adapter.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/detail/value_type_adapter/value_type_traits.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/ds_trait.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/exception.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/hash_policy.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/lu_policy.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/ms_trait.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/tree_policy.hpp
+#usr/include/c++/4.1.2/ext/pb_assoc/trivial_iterator_def.hpp
+#usr/include/c++/4.1.2/ext/pod_char_traits.h
+#usr/include/c++/4.1.2/ext/pool_allocator.h
+#usr/include/c++/4.1.2/ext/rb_tree
+#usr/include/c++/4.1.2/ext/rc_string_base.h
+#usr/include/c++/4.1.2/ext/rope
+#usr/include/c++/4.1.2/ext/ropeimpl.h
+#usr/include/c++/4.1.2/ext/slist
+#usr/include/c++/4.1.2/ext/sso_string_base.h
+#usr/include/c++/4.1.2/ext/stdio_filebuf.h
+#usr/include/c++/4.1.2/ext/stdio_sync_filebuf.h
+#usr/include/c++/4.1.2/ext/typelist.h
+#usr/include/c++/4.1.2/ext/vstring.h
+#usr/include/c++/4.1.2/ext/vstring.tcc
+#usr/include/c++/4.1.2/ext/vstring_fwd.h
+#usr/include/c++/4.1.2/ext/vstring_util.h
+#usr/include/c++/4.1.2/fstream
+#usr/include/c++/4.1.2/functional
+#usr/include/c++/4.1.2/i586-pc-linux-gnu
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/atomic_word.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/basic_file.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/c++allocator.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/c++config.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/c++io.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/c++locale.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/cpu_defines.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/ctype_base.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/ctype_inline.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/ctype_noninline.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/cxxabi_tweaks.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/gthr-default.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/gthr-posix.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/gthr-single.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/gthr-tpf.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/gthr.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/messages_members.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/os_defines.h
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/stdc++.h.gch
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/stdc++.h.gch/O0g.gch
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/stdc++.h.gch/O2g.gch
+#usr/include/c++/4.1.2/i586-pc-linux-gnu/bits/time_members.h
+#usr/include/c++/4.1.2/iomanip
+#usr/include/c++/4.1.2/ios
+#usr/include/c++/4.1.2/iosfwd
+#usr/include/c++/4.1.2/iostream
+#usr/include/c++/4.1.2/istream
+#usr/include/c++/4.1.2/iterator
+#usr/include/c++/4.1.2/limits
+#usr/include/c++/4.1.2/list
+#usr/include/c++/4.1.2/locale
+#usr/include/c++/4.1.2/map
+#usr/include/c++/4.1.2/memory
+#usr/include/c++/4.1.2/new
+#usr/include/c++/4.1.2/numeric
+#usr/include/c++/4.1.2/ostream
+#usr/include/c++/4.1.2/queue
+#usr/include/c++/4.1.2/set
+#usr/include/c++/4.1.2/sstream
+#usr/include/c++/4.1.2/stack
+#usr/include/c++/4.1.2/stdexcept
+#usr/include/c++/4.1.2/streambuf
+#usr/include/c++/4.1.2/string
+#usr/include/c++/4.1.2/tr1
+#usr/include/c++/4.1.2/tr1/array
+#usr/include/c++/4.1.2/tr1/bind_iterate.h
+#usr/include/c++/4.1.2/tr1/bind_repeat.h
+#usr/include/c++/4.1.2/tr1/boost_shared_ptr.h
+#usr/include/c++/4.1.2/tr1/functional
+#usr/include/c++/4.1.2/tr1/functional_iterate.h
+#usr/include/c++/4.1.2/tr1/hashtable
+#usr/include/c++/4.1.2/tr1/memory
+#usr/include/c++/4.1.2/tr1/mu_iterate.h
+#usr/include/c++/4.1.2/tr1/ref_fwd.h
+#usr/include/c++/4.1.2/tr1/ref_wrap_iterate.h
+#usr/include/c++/4.1.2/tr1/repeat.h
+#usr/include/c++/4.1.2/tr1/tuple
+#usr/include/c++/4.1.2/tr1/tuple_iterate.h
+#usr/include/c++/4.1.2/tr1/type_traits
+#usr/include/c++/4.1.2/tr1/type_traits_fwd.h
+#usr/include/c++/4.1.2/tr1/unordered_map
+#usr/include/c++/4.1.2/tr1/unordered_set
+#usr/include/c++/4.1.2/tr1/utility
+#usr/include/c++/4.1.2/typeinfo
+#usr/include/c++/4.1.2/utility
+#usr/include/c++/4.1.2/valarray
+#usr/include/c++/4.1.2/vector
#usr/include/mf-runtime.h
#usr/info/cpp.info
#usr/info/cppinternals.info
#usr/info/gccint.info
#usr/lib/gcc
#usr/lib/gcc/i586-pc-linux-gnu
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/cc1
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/cc1plus
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/collect2
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/crtbegin.o
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/crtbeginS.o
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/crtbeginT.o
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/crtend.o
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/crtendS.o
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/README
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/emmintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/float.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/iso646.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/limits.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/mm3dnow.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/mm_malloc.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/mmintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/pmmintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/stdarg.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/stdbool.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/stddef.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/syslimits.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/unwind.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/varargs.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/include/xmmintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/fixinc.sh
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/fixincl
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/gsyslimits.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/README
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/emmintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/float.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/iso646.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/limits.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/mm3dnow.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/mm_malloc.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/mmintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/pmmintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/stdarg.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/stdbool.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/stddef.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/unwind.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/varargs.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/include/xmmintrin.h
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/macro_list
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/mkheaders
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/install-tools/mkheaders.conf
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/libgcc.a
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/libgcc_eh.a
-#usr/lib/gcc/i586-pc-linux-gnu/4.0.4/libgcov.a
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/cc1
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/cc1plus
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/collect2
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/crtbegin.o
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/crtbeginS.o
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/crtbeginT.o
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/crtend.o
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/crtendS.o
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/crtfastmath.o
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/README
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/emmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/float.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/iso646.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/limits.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/mm3dnow.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/mm_malloc.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/mmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/pmmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/ssp
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/ssp/ssp.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/ssp/stdio.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/ssp/string.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/ssp/unistd.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/stdarg.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/stdbool.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/stddef.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/syslimits.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/unwind.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/varargs.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/include/xmmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/fixinc.sh
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/fixincl
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/gsyslimits.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/README
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/emmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/float.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/iso646.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/limits.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/mm3dnow.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/mm_malloc.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/mmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/pmmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/stdarg.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/stdbool.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/stddef.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/unwind.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/varargs.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/include/xmmintrin.h
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/macro_list
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/mkheaders
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/install-tools/mkheaders.conf
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/libgcc.a
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/libgcc_eh.a
+#usr/lib/gcc/i586-pc-linux-gnu/4.1.2/libgcov.a
#usr/lib/libmudflap.a
#usr/lib/libmudflap.la
-#usr/lib/libmudflap.so
-#usr/lib/libmudflap.so.0
-#usr/lib/libmudflap.so.0.0.0
+usr/lib/libmudflap.so
+usr/lib/libmudflap.so.0
+usr/lib/libmudflap.so.0.0.0
#usr/lib/libmudflapth.a
#usr/lib/libmudflapth.la
-#usr/lib/libmudflapth.so
-#usr/lib/libmudflapth.so.0
-#usr/lib/libmudflapth.so.0.0.0
+usr/lib/libmudflapth.so
+usr/lib/libmudflapth.so.0
+usr/lib/libmudflapth.so.0.0.0
+#usr/lib/libssp.a
+#usr/lib/libssp.la
+usr/lib/libssp.so
+usr/lib/libssp.so.0
+usr/lib/libssp.so.0.0.0
+#usr/lib/libssp_nonshared.a
+#usr/lib/libssp_nonshared.la
#usr/lib/libstdc++.a
#usr/lib/libstdc++.la
usr/lib/libstdc++.so
usr/lib/libstdc++.so.6
-usr/lib/libstdc++.so.6.0.7
+usr/lib/libstdc++.so.6.0.8
#usr/lib/libsupc++.a
#usr/lib/libsupc++.la
#usr/man/man1/cpp.1
#usr/bin/addftinfo
#usr/bin/afmtodit
+#usr/bin/chem
#usr/bin/eqn
#usr/bin/eqn2graph
+#usr/bin/gdiffmk
#usr/bin/geqn
+#usr/bin/grap2graph
#usr/bin/grn
#usr/bin/grodvi
#usr/bin/groff
#usr/bin/mmroff
#usr/bin/neqn
#usr/bin/nroff
+#usr/bin/pdfroff
#usr/bin/pfbtops
#usr/bin/pic
#usr/bin/pic2graph
#usr/bin/post-grohtml
#usr/bin/pre-grohtml
+#usr/bin/preconv
#usr/bin/refer
+#usr/bin/roff2dvi
+#usr/bin/roff2html
+#usr/bin/roff2pdf
+#usr/bin/roff2ps
+#usr/bin/roff2text
+#usr/bin/roff2x
#usr/bin/soelim
#usr/bin/tbl
#usr/bin/tfmtodit
#usr/bin/troff
-#usr/info/groff
-#usr/info/groff-1
-#usr/info/groff-10
-#usr/info/groff-11
-#usr/info/groff-2
-#usr/info/groff-3
-#usr/info/groff-4
-#usr/info/groff-5
-#usr/info/groff-6
-#usr/info/groff-7
-#usr/info/groff-8
-#usr/info/groff-9
#usr/lib/groff
+#usr/lib/groff/groffer
+#usr/lib/groff/groffer/func.pl
+#usr/lib/groff/groffer/man.pl
+#usr/lib/groff/groffer/perl_test.pl
+#usr/lib/groff/groffer/split_env.sh
+#usr/lib/groff/groffer/version.sh
#usr/lib/groff/site-tmac
-#usr/man/man1/addftinfo.1
-#usr/man/man1/afmtodit.1
-#usr/man/man1/eqn.1
-#usr/man/man1/eqn2graph.1
-#usr/man/man1/grn.1
-#usr/man/man1/grodvi.1
-#usr/man/man1/groff.1
-#usr/man/man1/groffer.1
-#usr/man/man1/grog.1
-#usr/man/man1/grohtml.1
-#usr/man/man1/grolbp.1
-#usr/man/man1/grolj4.1
-#usr/man/man1/grops.1
-#usr/man/man1/grotty.1
-#usr/man/man1/hpftodit.1
-#usr/man/man1/indxbib.1
-#usr/man/man1/lkbib.1
-#usr/man/man1/lookbib.1
-#usr/man/man1/mmroff.1
-#usr/man/man1/neqn.1
-#usr/man/man1/nroff.1
-#usr/man/man1/pfbtops.1
-#usr/man/man1/pic.1
-#usr/man/man1/pic2graph.1
-#usr/man/man1/refer.1
-#usr/man/man1/soelim.1
-#usr/man/man1/tbl.1
-#usr/man/man1/tfmtodit.1
-#usr/man/man1/troff.1
-#usr/man/man5/groff_font.5
-#usr/man/man5/groff_out.5
-#usr/man/man5/groff_tmac.5
-#usr/man/man7/ditroff.7
-#usr/man/man7/groff.7
-#usr/man/man7/groff_char.7
-#usr/man/man7/groff_diff.7
-#usr/man/man7/groff_man.7
-#usr/man/man7/groff_mdoc.7
-#usr/man/man7/groff_me.7
-#usr/man/man7/groff_mm.7
-#usr/man/man7/groff_mmse.7
-#usr/man/man7/groff_mom.7
-#usr/man/man7/groff_ms.7
-#usr/man/man7/groff_trace.7
-#usr/man/man7/groff_www.7
-#usr/man/man7/roff.7
-#usr/share/doc/groff
-#usr/share/doc/groff/1.18.1
-#usr/share/doc/groff/1.18.1/examples
-#usr/share/doc/groff/1.18.1/examples/README.mom
-#usr/share/doc/groff/1.18.1/examples/elvis_syntax
-#usr/share/doc/groff/1.18.1/examples/grnexmpl.g
-#usr/share/doc/groff/1.18.1/examples/grnexmpl.me
-#usr/share/doc/groff/1.18.1/examples/grnexmpl.ps
-#usr/share/doc/groff/1.18.1/examples/letter.mom
-#usr/share/doc/groff/1.18.1/examples/letter.ps
-#usr/share/doc/groff/1.18.1/examples/macros.mom
-#usr/share/doc/groff/1.18.1/examples/macros.ps
-#usr/share/doc/groff/1.18.1/examples/penguin.ps
-#usr/share/doc/groff/1.18.1/examples/typeset.mom
-#usr/share/doc/groff/1.18.1/examples/typeset.ps
-#usr/share/doc/groff/1.18.1/examples/typewrite.mom
-#usr/share/doc/groff/1.18.1/examples/typewrite.ps
-#usr/share/doc/groff/1.18.1/examples/webpage.ms
-#usr/share/doc/groff/1.18.1/examples/webpage.ps
-#usr/share/doc/groff/1.18.1/html
-#usr/share/doc/groff/1.18.1/html/momdoc
-#usr/share/doc/groff/1.18.1/html/momdoc/appendices.html
-#usr/share/doc/groff/1.18.1/html/momdoc/cover.html
-#usr/share/doc/groff/1.18.1/html/momdoc/definitions.html
-#usr/share/doc/groff/1.18.1/html/momdoc/docelement.html
-#usr/share/doc/groff/1.18.1/html/momdoc/docprocessing.html
-#usr/share/doc/groff/1.18.1/html/momdoc/goodies.html
-#usr/share/doc/groff/1.18.1/html/momdoc/headfootpage.html
-#usr/share/doc/groff/1.18.1/html/momdoc/inlines.html
-#usr/share/doc/groff/1.18.1/html/momdoc/intro.html
-#usr/share/doc/groff/1.18.1/html/momdoc/letters.html
-#usr/share/doc/groff/1.18.1/html/momdoc/rectoverso.html
-#usr/share/doc/groff/1.18.1/html/momdoc/reserved.html
-#usr/share/doc/groff/1.18.1/html/momdoc/toc.html
-#usr/share/doc/groff/1.18.1/html/momdoc/typemacdoc.html
-#usr/share/doc/groff/1.18.1/html/momdoc/typesetting.html
-#usr/share/doc/groff/1.18.1/html/momdoc/using.html
-#usr/share/doc/groff/1.18.1/meintro.me
-#usr/share/doc/groff/1.18.1/meintro.ps
-#usr/share/doc/groff/1.18.1/meref.me
-#usr/share/doc/groff/1.18.1/meref.ps
-#usr/share/doc/groff/1.18.1/pic.ms
-#usr/share/doc/groff/1.18.1/pic.ps
+#usr/share/doc/groff-1.21
+#usr/share/doc/groff-1.21/examples
+#usr/share/doc/groff-1.21/examples/chem
+#usr/share/doc/groff-1.21/examples/chem/122
+#usr/share/doc/groff-1.21/examples/chem/122/README
+#usr/share/doc/groff-1.21/examples/chem/122/ch2a_ethyl.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch2b_benzene.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch2c_benzene_right.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4a_stick.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4b_methyl_acetate.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4c_colon.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4d_HCl.H2O.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4e_CaSO4.2H2O.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4f_C.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4g_BP.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4h_methacrylate.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4i_cyclo.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4j_ring4.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4k_ring3.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4l_vertex.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4m_double.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4n_triple.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4o_aromatic.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4p_cholestanol.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4q_rings.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4r_spiro.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4s_heteroatoms.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4t_polycyclic.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4u_nicotine.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4v_histidine.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4w_lsd.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4x_anisole.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4y_reserpine.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4z1_eqn_glutamic.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch4z2_text.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch5a_size.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch6a_pic.chem
+#usr/share/doc/groff-1.21/examples/chem/122/ch6b_dna.chem
+#usr/share/doc/groff-1.21/examples/chem/122/chAa_polymer.chem
+#usr/share/doc/groff-1.21/examples/chem/122/chAb_vinyl_chloro.chem
+#usr/share/doc/groff-1.21/examples/chem/122/chAc_morphine.chem
+#usr/share/doc/groff-1.21/examples/chem/122/chAd_chlorophyll.chem
+#usr/share/doc/groff-1.21/examples/chem/122/chAe_chair.chem
+#usr/share/doc/groff-1.21/examples/chem/122/chAf_arrow.chem
+#usr/share/doc/groff-1.21/examples/chem/122/chAg_circle.chem
+#usr/share/doc/groff-1.21/examples/chem/122/chAh_brackets.chem
+#usr/share/doc/groff-1.21/examples/chem/122/chAi_poly_vinyl_chloride.chem
+#usr/share/doc/groff-1.21/examples/chem/122/chBa_jump.chem
+#usr/share/doc/groff-1.21/examples/chem/122/chBb_bonds.chem
+#usr/share/doc/groff-1.21/examples/chem/122/chBc_rings.chem
+#usr/share/doc/groff-1.21/examples/chem/README
+#usr/share/doc/groff-1.21/examples/chem/atp.chem
+#usr/share/doc/groff-1.21/examples/chem/cholesterin.chem
+#usr/share/doc/groff-1.21/examples/chem/ethamivan.chem
+#usr/share/doc/groff-1.21/examples/chem/lsd.chem
+#usr/share/doc/groff-1.21/examples/chem/morphine.chem
+#usr/share/doc/groff-1.21/examples/chem/penicillin.chem
+#usr/share/doc/groff-1.21/examples/chem/reserpine.chem
+#usr/share/doc/groff-1.21/examples/gnu.eps
+#usr/share/doc/groff-1.21/examples/grnexmpl.g
+#usr/share/doc/groff-1.21/examples/grnexmpl.me
+#usr/share/doc/groff-1.21/examples/grnexmpl.ps
+#usr/share/doc/groff-1.21/examples/groff.css
+#usr/share/doc/groff-1.21/examples/hdtbl
+#usr/share/doc/groff-1.21/examples/hdtbl/chess_board.ps
+#usr/share/doc/groff-1.21/examples/hdtbl/chess_board.roff
+#usr/share/doc/groff-1.21/examples/hdtbl/col_rowspan_colors.ps
+#usr/share/doc/groff-1.21/examples/hdtbl/col_rowspan_colors.roff
+#usr/share/doc/groff-1.21/examples/hdtbl/color_boxes.ps
+#usr/share/doc/groff-1.21/examples/hdtbl/color_boxes.roff
+#usr/share/doc/groff-1.21/examples/hdtbl/color_nested_tables.ps
+#usr/share/doc/groff-1.21/examples/hdtbl/color_nested_tables.roff
+#usr/share/doc/groff-1.21/examples/hdtbl/color_table_cells.ps
+#usr/share/doc/groff-1.21/examples/hdtbl/color_table_cells.roff
+#usr/share/doc/groff-1.21/examples/hdtbl/color_transitions.ps
+#usr/share/doc/groff-1.21/examples/hdtbl/color_transitions.roff
+#usr/share/doc/groff-1.21/examples/hdtbl/common.roff
+#usr/share/doc/groff-1.21/examples/hdtbl/fonts_n.ps
+#usr/share/doc/groff-1.21/examples/hdtbl/fonts_n.roff
+#usr/share/doc/groff-1.21/examples/hdtbl/fonts_x.ps
+#usr/share/doc/groff-1.21/examples/hdtbl/fonts_x.roff
+#usr/share/doc/groff-1.21/examples/hdtbl/gnu.eps
+#usr/share/doc/groff-1.21/examples/hdtbl/mixed_pickles.ps
+#usr/share/doc/groff-1.21/examples/hdtbl/mixed_pickles.roff
+#usr/share/doc/groff-1.21/examples/hdtbl/rainbow.ps
+#usr/share/doc/groff-1.21/examples/hdtbl/rainbow.roff
+#usr/share/doc/groff-1.21/examples/hdtbl/short_reference.ps
+#usr/share/doc/groff-1.21/examples/hdtbl/short_reference.roff
+#usr/share/doc/groff-1.21/examples/mom
+#usr/share/doc/groff-1.21/examples/mom/README.txt
+#usr/share/doc/groff-1.21/examples/mom/elvis_syntax
+#usr/share/doc/groff-1.21/examples/mom/elvis_syntax.new
+#usr/share/doc/groff-1.21/examples/mom/letter.mom
+#usr/share/doc/groff-1.21/examples/mom/letter.ps
+#usr/share/doc/groff-1.21/examples/mom/penguin.ps
+#usr/share/doc/groff-1.21/examples/mom/sample_docs.mom
+#usr/share/doc/groff-1.21/examples/mom/sample_docs.ps
+#usr/share/doc/groff-1.21/examples/mom/typesetting.mom
+#usr/share/doc/groff-1.21/examples/mom/typesetting.ps
+#usr/share/doc/groff-1.21/examples/webpage.ms
+#usr/share/doc/groff-1.21/examples/webpage.ps
+#usr/share/doc/groff-1.21/html
+#usr/share/doc/groff-1.21/html/mom
+#usr/share/doc/groff-1.21/html/mom/appendices.html
+#usr/share/doc/groff-1.21/html/mom/color.html
+#usr/share/doc/groff-1.21/html/mom/cover.html
+#usr/share/doc/groff-1.21/html/mom/definitions.html
+#usr/share/doc/groff-1.21/html/mom/docelement.html
+#usr/share/doc/groff-1.21/html/mom/docprocessing.html
+#usr/share/doc/groff-1.21/html/mom/goodies.html
+#usr/share/doc/groff-1.21/html/mom/graphical.html
+#usr/share/doc/groff-1.21/html/mom/headfootpage.html
+#usr/share/doc/groff-1.21/html/mom/images.html
+#usr/share/doc/groff-1.21/html/mom/inlines.html
+#usr/share/doc/groff-1.21/html/mom/intro.html
+#usr/share/doc/groff-1.21/html/mom/letters.html
+#usr/share/doc/groff-1.21/html/mom/macrolist.html
+#usr/share/doc/groff-1.21/html/mom/rectoverso.html
+#usr/share/doc/groff-1.21/html/mom/refer.html
+#usr/share/doc/groff-1.21/html/mom/reserved.html
+#usr/share/doc/groff-1.21/html/mom/stylesheet.css
+#usr/share/doc/groff-1.21/html/mom/tables-of-contents.html
+#usr/share/doc/groff-1.21/html/mom/toc.html
+#usr/share/doc/groff-1.21/html/mom/typesetting.html
+#usr/share/doc/groff-1.21/html/mom/using.html
+#usr/share/doc/groff-1.21/meintro.me
+#usr/share/doc/groff-1.21/meintro.ps
+#usr/share/doc/groff-1.21/meref.me
+#usr/share/doc/groff-1.21/meref.ps
+#usr/share/doc/groff-1.21/pic.ms
+#usr/share/doc/groff-1.21/pic.ps
#usr/share/groff
-#usr/share/groff/1.18.1
-#usr/share/groff/1.18.1/eign
-#usr/share/groff/1.18.1/font
-#usr/share/groff/1.18.1/font/devX100
-#usr/share/groff/1.18.1/font/devX100-12
-#usr/share/groff/1.18.1/font/devX100-12/CB
-#usr/share/groff/1.18.1/font/devX100-12/CBI
-#usr/share/groff/1.18.1/font/devX100-12/CI
-#usr/share/groff/1.18.1/font/devX100-12/CR
-#usr/share/groff/1.18.1/font/devX100-12/DESC
-#usr/share/groff/1.18.1/font/devX100-12/G
-#usr/share/groff/1.18.1/font/devX100-12/HB
-#usr/share/groff/1.18.1/font/devX100-12/HBI
-#usr/share/groff/1.18.1/font/devX100-12/HI
-#usr/share/groff/1.18.1/font/devX100-12/HR
-#usr/share/groff/1.18.1/font/devX100-12/M
-#usr/share/groff/1.18.1/font/devX100-12/NB
-#usr/share/groff/1.18.1/font/devX100-12/NBI
-#usr/share/groff/1.18.1/font/devX100-12/NI
-#usr/share/groff/1.18.1/font/devX100-12/NR
-#usr/share/groff/1.18.1/font/devX100-12/S
-#usr/share/groff/1.18.1/font/devX100-12/TB
-#usr/share/groff/1.18.1/font/devX100-12/TBI
-#usr/share/groff/1.18.1/font/devX100-12/TI
-#usr/share/groff/1.18.1/font/devX100-12/TR
-#usr/share/groff/1.18.1/font/devX100/CB
-#usr/share/groff/1.18.1/font/devX100/CBI
-#usr/share/groff/1.18.1/font/devX100/CI
-#usr/share/groff/1.18.1/font/devX100/CR
-#usr/share/groff/1.18.1/font/devX100/DESC
-#usr/share/groff/1.18.1/font/devX100/G
-#usr/share/groff/1.18.1/font/devX100/HB
-#usr/share/groff/1.18.1/font/devX100/HBI
-#usr/share/groff/1.18.1/font/devX100/HI
-#usr/share/groff/1.18.1/font/devX100/HR
-#usr/share/groff/1.18.1/font/devX100/M
-#usr/share/groff/1.18.1/font/devX100/NB
-#usr/share/groff/1.18.1/font/devX100/NBI
-#usr/share/groff/1.18.1/font/devX100/NI
-#usr/share/groff/1.18.1/font/devX100/NR
-#usr/share/groff/1.18.1/font/devX100/S
-#usr/share/groff/1.18.1/font/devX100/TB
-#usr/share/groff/1.18.1/font/devX100/TBI
-#usr/share/groff/1.18.1/font/devX100/TI
-#usr/share/groff/1.18.1/font/devX100/TR
-#usr/share/groff/1.18.1/font/devX75
-#usr/share/groff/1.18.1/font/devX75-12
-#usr/share/groff/1.18.1/font/devX75-12/CB
-#usr/share/groff/1.18.1/font/devX75-12/CBI
-#usr/share/groff/1.18.1/font/devX75-12/CI
-#usr/share/groff/1.18.1/font/devX75-12/CR
-#usr/share/groff/1.18.1/font/devX75-12/DESC
-#usr/share/groff/1.18.1/font/devX75-12/G
-#usr/share/groff/1.18.1/font/devX75-12/HB
-#usr/share/groff/1.18.1/font/devX75-12/HBI
-#usr/share/groff/1.18.1/font/devX75-12/HI
-#usr/share/groff/1.18.1/font/devX75-12/HR
-#usr/share/groff/1.18.1/font/devX75-12/M
-#usr/share/groff/1.18.1/font/devX75-12/NB
-#usr/share/groff/1.18.1/font/devX75-12/NBI
-#usr/share/groff/1.18.1/font/devX75-12/NI
-#usr/share/groff/1.18.1/font/devX75-12/NR
-#usr/share/groff/1.18.1/font/devX75-12/S
-#usr/share/groff/1.18.1/font/devX75-12/TB
-#usr/share/groff/1.18.1/font/devX75-12/TBI
-#usr/share/groff/1.18.1/font/devX75-12/TI
-#usr/share/groff/1.18.1/font/devX75-12/TR
-#usr/share/groff/1.18.1/font/devX75/CB
-#usr/share/groff/1.18.1/font/devX75/CBI
-#usr/share/groff/1.18.1/font/devX75/CI
-#usr/share/groff/1.18.1/font/devX75/CR
-#usr/share/groff/1.18.1/font/devX75/DESC
-#usr/share/groff/1.18.1/font/devX75/G
-#usr/share/groff/1.18.1/font/devX75/HB
-#usr/share/groff/1.18.1/font/devX75/HBI
-#usr/share/groff/1.18.1/font/devX75/HI
-#usr/share/groff/1.18.1/font/devX75/HR
-#usr/share/groff/1.18.1/font/devX75/M
-#usr/share/groff/1.18.1/font/devX75/NB
-#usr/share/groff/1.18.1/font/devX75/NBI
-#usr/share/groff/1.18.1/font/devX75/NI
-#usr/share/groff/1.18.1/font/devX75/NR
-#usr/share/groff/1.18.1/font/devX75/S
-#usr/share/groff/1.18.1/font/devX75/TB
-#usr/share/groff/1.18.1/font/devX75/TBI
-#usr/share/groff/1.18.1/font/devX75/TI
-#usr/share/groff/1.18.1/font/devX75/TR
-#usr/share/groff/1.18.1/font/devascii
-#usr/share/groff/1.18.1/font/devascii/B
-#usr/share/groff/1.18.1/font/devascii/BI
-#usr/share/groff/1.18.1/font/devascii/DESC
-#usr/share/groff/1.18.1/font/devascii/I
-#usr/share/groff/1.18.1/font/devascii/R
-#usr/share/groff/1.18.1/font/devascii8
-#usr/share/groff/1.18.1/font/devascii8/B
-#usr/share/groff/1.18.1/font/devascii8/BI
-#usr/share/groff/1.18.1/font/devascii8/DESC
-#usr/share/groff/1.18.1/font/devascii8/I
-#usr/share/groff/1.18.1/font/devascii8/R
-#usr/share/groff/1.18.1/font/devdvi
-#usr/share/groff/1.18.1/font/devdvi/CW
-#usr/share/groff/1.18.1/font/devdvi/CWEC
-#usr/share/groff/1.18.1/font/devdvi/CWI
-#usr/share/groff/1.18.1/font/devdvi/CWIEC
-#usr/share/groff/1.18.1/font/devdvi/CWITC
-#usr/share/groff/1.18.1/font/devdvi/CWTC
-#usr/share/groff/1.18.1/font/devdvi/DESC
-#usr/share/groff/1.18.1/font/devdvi/EX
-#usr/share/groff/1.18.1/font/devdvi/G
-#usr/share/groff/1.18.1/font/devdvi/HB
-#usr/share/groff/1.18.1/font/devdvi/HBEC
-#usr/share/groff/1.18.1/font/devdvi/HBI
-#usr/share/groff/1.18.1/font/devdvi/HBIEC
-#usr/share/groff/1.18.1/font/devdvi/HBITC
-#usr/share/groff/1.18.1/font/devdvi/HBTC
-#usr/share/groff/1.18.1/font/devdvi/HI
-#usr/share/groff/1.18.1/font/devdvi/HIEC
-#usr/share/groff/1.18.1/font/devdvi/HITC
-#usr/share/groff/1.18.1/font/devdvi/HR
-#usr/share/groff/1.18.1/font/devdvi/HREC
-#usr/share/groff/1.18.1/font/devdvi/HRTC
-#usr/share/groff/1.18.1/font/devdvi/M
-#usr/share/groff/1.18.1/font/devdvi/MI
-#usr/share/groff/1.18.1/font/devdvi/S
-#usr/share/groff/1.18.1/font/devdvi/SA
-#usr/share/groff/1.18.1/font/devdvi/SB
-#usr/share/groff/1.18.1/font/devdvi/TB
-#usr/share/groff/1.18.1/font/devdvi/TBEC
-#usr/share/groff/1.18.1/font/devdvi/TBI
-#usr/share/groff/1.18.1/font/devdvi/TBIEC
-#usr/share/groff/1.18.1/font/devdvi/TBITC
-#usr/share/groff/1.18.1/font/devdvi/TBTC
-#usr/share/groff/1.18.1/font/devdvi/TI
-#usr/share/groff/1.18.1/font/devdvi/TIEC
-#usr/share/groff/1.18.1/font/devdvi/TITC
-#usr/share/groff/1.18.1/font/devdvi/TR
-#usr/share/groff/1.18.1/font/devdvi/TREC
-#usr/share/groff/1.18.1/font/devdvi/TRTC
-#usr/share/groff/1.18.1/font/devdvi/generate
-#usr/share/groff/1.18.1/font/devdvi/generate/CompileFonts
-#usr/share/groff/1.18.1/font/devdvi/generate/Makefile
-#usr/share/groff/1.18.1/font/devdvi/generate/ec.map
-#usr/share/groff/1.18.1/font/devdvi/generate/msam.map
-#usr/share/groff/1.18.1/font/devdvi/generate/msbm.map
-#usr/share/groff/1.18.1/font/devdvi/generate/tc.map
-#usr/share/groff/1.18.1/font/devdvi/generate/texb.map
-#usr/share/groff/1.18.1/font/devdvi/generate/texex.map
-#usr/share/groff/1.18.1/font/devdvi/generate/texi.map
-#usr/share/groff/1.18.1/font/devdvi/generate/texmi.map
-#usr/share/groff/1.18.1/font/devdvi/generate/texr.map
-#usr/share/groff/1.18.1/font/devdvi/generate/texsy.map
-#usr/share/groff/1.18.1/font/devdvi/generate/textt.map
-#usr/share/groff/1.18.1/font/devhtml
-#usr/share/groff/1.18.1/font/devhtml/B
-#usr/share/groff/1.18.1/font/devhtml/BI
-#usr/share/groff/1.18.1/font/devhtml/CB
-#usr/share/groff/1.18.1/font/devhtml/CBI
-#usr/share/groff/1.18.1/font/devhtml/CI
-#usr/share/groff/1.18.1/font/devhtml/CR
-#usr/share/groff/1.18.1/font/devhtml/DESC
-#usr/share/groff/1.18.1/font/devhtml/G
-#usr/share/groff/1.18.1/font/devhtml/I
-#usr/share/groff/1.18.1/font/devhtml/M
-#usr/share/groff/1.18.1/font/devhtml/R
-#usr/share/groff/1.18.1/font/devhtml/S
-#usr/share/groff/1.18.1/font/devlatin1
-#usr/share/groff/1.18.1/font/devlatin1/B
-#usr/share/groff/1.18.1/font/devlatin1/BI
-#usr/share/groff/1.18.1/font/devlatin1/DESC
-#usr/share/groff/1.18.1/font/devlatin1/I
-#usr/share/groff/1.18.1/font/devlatin1/R
-#usr/share/groff/1.18.1/font/devlbp
-#usr/share/groff/1.18.1/font/devlbp/CB
-#usr/share/groff/1.18.1/font/devlbp/CI
-#usr/share/groff/1.18.1/font/devlbp/CR
-#usr/share/groff/1.18.1/font/devlbp/DESC
-#usr/share/groff/1.18.1/font/devlbp/EB
-#usr/share/groff/1.18.1/font/devlbp/EI
-#usr/share/groff/1.18.1/font/devlbp/ER
-#usr/share/groff/1.18.1/font/devlbp/HB
-#usr/share/groff/1.18.1/font/devlbp/HBI
-#usr/share/groff/1.18.1/font/devlbp/HI
-#usr/share/groff/1.18.1/font/devlbp/HNB
-#usr/share/groff/1.18.1/font/devlbp/HNBI
-#usr/share/groff/1.18.1/font/devlbp/HNI
-#usr/share/groff/1.18.1/font/devlbp/HNR
-#usr/share/groff/1.18.1/font/devlbp/HR
-#usr/share/groff/1.18.1/font/devlbp/TB
-#usr/share/groff/1.18.1/font/devlbp/TBI
-#usr/share/groff/1.18.1/font/devlbp/TI
-#usr/share/groff/1.18.1/font/devlbp/TR
-#usr/share/groff/1.18.1/font/devlj4
-#usr/share/groff/1.18.1/font/devlj4/ALBB
-#usr/share/groff/1.18.1/font/devlj4/ALBR
-#usr/share/groff/1.18.1/font/devlj4/AOB
-#usr/share/groff/1.18.1/font/devlj4/AOI
-#usr/share/groff/1.18.1/font/devlj4/AOR
-#usr/share/groff/1.18.1/font/devlj4/CB
-#usr/share/groff/1.18.1/font/devlj4/CBI
-#usr/share/groff/1.18.1/font/devlj4/CI
-#usr/share/groff/1.18.1/font/devlj4/CLARENDON
-#usr/share/groff/1.18.1/font/devlj4/CORONET
-#usr/share/groff/1.18.1/font/devlj4/CR
-#usr/share/groff/1.18.1/font/devlj4/DESC
-#usr/share/groff/1.18.1/font/devlj4/GB
-#usr/share/groff/1.18.1/font/devlj4/GBI
-#usr/share/groff/1.18.1/font/devlj4/GI
-#usr/share/groff/1.18.1/font/devlj4/GR
-#usr/share/groff/1.18.1/font/devlj4/LGB
-#usr/share/groff/1.18.1/font/devlj4/LGI
-#usr/share/groff/1.18.1/font/devlj4/LGR
-#usr/share/groff/1.18.1/font/devlj4/MARIGOLD
-#usr/share/groff/1.18.1/font/devlj4/OB
-#usr/share/groff/1.18.1/font/devlj4/OBI
-#usr/share/groff/1.18.1/font/devlj4/OI
-#usr/share/groff/1.18.1/font/devlj4/OR
-#usr/share/groff/1.18.1/font/devlj4/S
-#usr/share/groff/1.18.1/font/devlj4/TB
-#usr/share/groff/1.18.1/font/devlj4/TBI
-#usr/share/groff/1.18.1/font/devlj4/TI
-#usr/share/groff/1.18.1/font/devlj4/TR
-#usr/share/groff/1.18.1/font/devlj4/UB
-#usr/share/groff/1.18.1/font/devlj4/UBI
-#usr/share/groff/1.18.1/font/devlj4/UCB
-#usr/share/groff/1.18.1/font/devlj4/UCBI
-#usr/share/groff/1.18.1/font/devlj4/UCI
-#usr/share/groff/1.18.1/font/devlj4/UCR
-#usr/share/groff/1.18.1/font/devlj4/UI
-#usr/share/groff/1.18.1/font/devlj4/UR
-#usr/share/groff/1.18.1/font/devlj4/generate
-#usr/share/groff/1.18.1/font/devlj4/generate/Makefile
-#usr/share/groff/1.18.1/font/devlj4/generate/special.map
-#usr/share/groff/1.18.1/font/devlj4/generate/text.map
-#usr/share/groff/1.18.1/font/devnippon
-#usr/share/groff/1.18.1/font/devnippon/B
-#usr/share/groff/1.18.1/font/devnippon/BI
-#usr/share/groff/1.18.1/font/devnippon/DESC
-#usr/share/groff/1.18.1/font/devnippon/G
-#usr/share/groff/1.18.1/font/devnippon/I
-#usr/share/groff/1.18.1/font/devnippon/M
-#usr/share/groff/1.18.1/font/devnippon/R
-#usr/share/groff/1.18.1/font/devps
-#usr/share/groff/1.18.1/font/devps/AB
-#usr/share/groff/1.18.1/font/devps/ABI
-#usr/share/groff/1.18.1/font/devps/AI
-#usr/share/groff/1.18.1/font/devps/AR
-#usr/share/groff/1.18.1/font/devps/BMB
-#usr/share/groff/1.18.1/font/devps/BMBI
-#usr/share/groff/1.18.1/font/devps/BMI
-#usr/share/groff/1.18.1/font/devps/BMR
-#usr/share/groff/1.18.1/font/devps/CB
-#usr/share/groff/1.18.1/font/devps/CBI
-#usr/share/groff/1.18.1/font/devps/CI
-#usr/share/groff/1.18.1/font/devps/CR
-#usr/share/groff/1.18.1/font/devps/DESC
-#usr/share/groff/1.18.1/font/devps/G
-#usr/share/groff/1.18.1/font/devps/HB
-#usr/share/groff/1.18.1/font/devps/HBI
-#usr/share/groff/1.18.1/font/devps/HI
-#usr/share/groff/1.18.1/font/devps/HNB
-#usr/share/groff/1.18.1/font/devps/HNBI
-#usr/share/groff/1.18.1/font/devps/HNI
-#usr/share/groff/1.18.1/font/devps/HNR
-#usr/share/groff/1.18.1/font/devps/HR
-#usr/share/groff/1.18.1/font/devps/M
-#usr/share/groff/1.18.1/font/devps/NB
-#usr/share/groff/1.18.1/font/devps/NBI
-#usr/share/groff/1.18.1/font/devps/NI
-#usr/share/groff/1.18.1/font/devps/NR
-#usr/share/groff/1.18.1/font/devps/PB
-#usr/share/groff/1.18.1/font/devps/PBI
-#usr/share/groff/1.18.1/font/devps/PI
-#usr/share/groff/1.18.1/font/devps/PR
-#usr/share/groff/1.18.1/font/devps/S
-#usr/share/groff/1.18.1/font/devps/SS
-#usr/share/groff/1.18.1/font/devps/TB
-#usr/share/groff/1.18.1/font/devps/TBI
-#usr/share/groff/1.18.1/font/devps/TI
-#usr/share/groff/1.18.1/font/devps/TR
-#usr/share/groff/1.18.1/font/devps/ZCMI
-#usr/share/groff/1.18.1/font/devps/ZD
-#usr/share/groff/1.18.1/font/devps/ZDR
-#usr/share/groff/1.18.1/font/devps/download
-#usr/share/groff/1.18.1/font/devps/generate
-#usr/share/groff/1.18.1/font/devps/generate/Makefile
-#usr/share/groff/1.18.1/font/devps/generate/afmname
-#usr/share/groff/1.18.1/font/devps/generate/dingbats.map
-#usr/share/groff/1.18.1/font/devps/generate/dingbats.rmap
-#usr/share/groff/1.18.1/font/devps/generate/lgreekmap
-#usr/share/groff/1.18.1/font/devps/generate/symbol.sed
-#usr/share/groff/1.18.1/font/devps/generate/symbolchars
-#usr/share/groff/1.18.1/font/devps/generate/symbolsl.afm
-#usr/share/groff/1.18.1/font/devps/generate/textmap
-#usr/share/groff/1.18.1/font/devps/prologue
-#usr/share/groff/1.18.1/font/devps/symbolsl.pfa
-#usr/share/groff/1.18.1/font/devps/text.enc
-#usr/share/groff/1.18.1/font/devps/zapfdr.pfa
-#usr/share/groff/1.18.1/font/devutf8
-#usr/share/groff/1.18.1/font/devutf8/B
-#usr/share/groff/1.18.1/font/devutf8/BI
-#usr/share/groff/1.18.1/font/devutf8/DESC
-#usr/share/groff/1.18.1/font/devutf8/G
-#usr/share/groff/1.18.1/font/devutf8/I
-#usr/share/groff/1.18.1/font/devutf8/M
-#usr/share/groff/1.18.1/font/devutf8/R
-#usr/share/groff/1.18.1/tmac
-#usr/share/groff/1.18.1/tmac/X.tmac
-#usr/share/groff/1.18.1/tmac/Xps.tmac
-#usr/share/groff/1.18.1/tmac/a4.tmac
-#usr/share/groff/1.18.1/tmac/an-old.tmac
-#usr/share/groff/1.18.1/tmac/an.tmac
-#usr/share/groff/1.18.1/tmac/andoc.tmac
-#usr/share/groff/1.18.1/tmac/andocj.tmac
-#usr/share/groff/1.18.1/tmac/big5.tmac
-#usr/share/groff/1.18.1/tmac/cp1047.tmac
-#usr/share/groff/1.18.1/tmac/doc-old.tmac
-#usr/share/groff/1.18.1/tmac/doc.tmac
-#usr/share/groff/1.18.1/tmac/docj.tmac
-#usr/share/groff/1.18.1/tmac/dvi.tmac
-#usr/share/groff/1.18.1/tmac/e.tmac
-#usr/share/groff/1.18.1/tmac/ec.tmac
-#usr/share/groff/1.18.1/tmac/eqnrc
-#usr/share/groff/1.18.1/tmac/euc-jp.tmac
-#usr/share/groff/1.18.1/tmac/gb.tmac
-#usr/share/groff/1.18.1/tmac/html.tmac
-#usr/share/groff/1.18.1/tmac/hyphen.us
-#usr/share/groff/1.18.1/tmac/latin1.tmac
-#usr/share/groff/1.18.1/tmac/lbp.tmac
-#usr/share/groff/1.18.1/tmac/lj4.tmac
-#usr/share/groff/1.18.1/tmac/m.tmac
-#usr/share/groff/1.18.1/tmac/man.tmac
-#usr/share/groff/1.18.1/tmac/mandoc.tmac
-#usr/share/groff/1.18.1/tmac/mdoc
-#usr/share/groff/1.18.1/tmac/mdoc.tmac
-#usr/share/groff/1.18.1/tmac/mdoc/doc-common
-#usr/share/groff/1.18.1/tmac/mdoc/doc-ditroff
-#usr/share/groff/1.18.1/tmac/mdoc/doc-nroff
-#usr/share/groff/1.18.1/tmac/mdoc/doc-syms
-#usr/share/groff/1.18.1/tmac/mdoc/docj-ditroff
-#usr/share/groff/1.18.1/tmac/mdoc/docj-nroff
-#usr/share/groff/1.18.1/tmac/me.tmac
-#usr/share/groff/1.18.1/tmac/mm
-#usr/share/groff/1.18.1/tmac/mm.tmac
-#usr/share/groff/1.18.1/tmac/mm/0.MT
-#usr/share/groff/1.18.1/tmac/mm/4.MT
-#usr/share/groff/1.18.1/tmac/mm/5.MT
-#usr/share/groff/1.18.1/tmac/mm/locale
-#usr/share/groff/1.18.1/tmac/mm/ms.cov
-#usr/share/groff/1.18.1/tmac/mm/se_locale
-#usr/share/groff/1.18.1/tmac/mm/se_ms.cov
-#usr/share/groff/1.18.1/tmac/mmse.tmac
-#usr/share/groff/1.18.1/tmac/mom.tmac
-#usr/share/groff/1.18.1/tmac/ms.tmac
-#usr/share/groff/1.18.1/tmac/mse.tmac
-#usr/share/groff/1.18.1/tmac/om.tmac
-#usr/share/groff/1.18.1/tmac/pic.tmac
-#usr/share/groff/1.18.1/tmac/ps.tmac
-#usr/share/groff/1.18.1/tmac/psatk.tmac
-#usr/share/groff/1.18.1/tmac/psold.tmac
-#usr/share/groff/1.18.1/tmac/pspic.tmac
-#usr/share/groff/1.18.1/tmac/s.tmac
-#usr/share/groff/1.18.1/tmac/safer.tmac
-#usr/share/groff/1.18.1/tmac/trace.tmac
-#usr/share/groff/1.18.1/tmac/troffrc
-#usr/share/groff/1.18.1/tmac/troffrc-end
-#usr/share/groff/1.18.1/tmac/tty-char.tmac
-#usr/share/groff/1.18.1/tmac/tty.tmac
-#usr/share/groff/1.18.1/tmac/www.tmac
+#usr/share/groff/1.21
+#usr/share/groff/1.21/eign
+#usr/share/groff/1.21/font
+#usr/share/groff/1.21/font/devascii
+#usr/share/groff/1.21/font/devascii/B
+#usr/share/groff/1.21/font/devascii/BI
+#usr/share/groff/1.21/font/devascii/DESC
+#usr/share/groff/1.21/font/devascii/I
+#usr/share/groff/1.21/font/devascii/R
+#usr/share/groff/1.21/font/devdvi
+#usr/share/groff/1.21/font/devdvi/CW
+#usr/share/groff/1.21/font/devdvi/CWEC
+#usr/share/groff/1.21/font/devdvi/CWI
+#usr/share/groff/1.21/font/devdvi/CWIEC
+#usr/share/groff/1.21/font/devdvi/CWITC
+#usr/share/groff/1.21/font/devdvi/CWTC
+#usr/share/groff/1.21/font/devdvi/DESC
+#usr/share/groff/1.21/font/devdvi/EX
+#usr/share/groff/1.21/font/devdvi/HB
+#usr/share/groff/1.21/font/devdvi/HBEC
+#usr/share/groff/1.21/font/devdvi/HBI
+#usr/share/groff/1.21/font/devdvi/HBIEC
+#usr/share/groff/1.21/font/devdvi/HBITC
+#usr/share/groff/1.21/font/devdvi/HBTC
+#usr/share/groff/1.21/font/devdvi/HI
+#usr/share/groff/1.21/font/devdvi/HIEC
+#usr/share/groff/1.21/font/devdvi/HITC
+#usr/share/groff/1.21/font/devdvi/HR
+#usr/share/groff/1.21/font/devdvi/HREC
+#usr/share/groff/1.21/font/devdvi/HRTC
+#usr/share/groff/1.21/font/devdvi/MI
+#usr/share/groff/1.21/font/devdvi/S
+#usr/share/groff/1.21/font/devdvi/SA
+#usr/share/groff/1.21/font/devdvi/SB
+#usr/share/groff/1.21/font/devdvi/SC
+#usr/share/groff/1.21/font/devdvi/TB
+#usr/share/groff/1.21/font/devdvi/TBEC
+#usr/share/groff/1.21/font/devdvi/TBI
+#usr/share/groff/1.21/font/devdvi/TBIEC
+#usr/share/groff/1.21/font/devdvi/TBITC
+#usr/share/groff/1.21/font/devdvi/TBTC
+#usr/share/groff/1.21/font/devdvi/TI
+#usr/share/groff/1.21/font/devdvi/TIEC
+#usr/share/groff/1.21/font/devdvi/TITC
+#usr/share/groff/1.21/font/devdvi/TR
+#usr/share/groff/1.21/font/devdvi/TREC
+#usr/share/groff/1.21/font/devdvi/TRTC
+#usr/share/groff/1.21/font/devdvi/generate
+#usr/share/groff/1.21/font/devdvi/generate/CompileFonts
+#usr/share/groff/1.21/font/devdvi/generate/Makefile
+#usr/share/groff/1.21/font/devdvi/generate/ec.map
+#usr/share/groff/1.21/font/devdvi/generate/msam.map
+#usr/share/groff/1.21/font/devdvi/generate/msbm.map
+#usr/share/groff/1.21/font/devdvi/generate/tc.map
+#usr/share/groff/1.21/font/devdvi/generate/texb.map
+#usr/share/groff/1.21/font/devdvi/generate/texex.map
+#usr/share/groff/1.21/font/devdvi/generate/texi.map
+#usr/share/groff/1.21/font/devdvi/generate/texmi.map
+#usr/share/groff/1.21/font/devdvi/generate/texr.map
+#usr/share/groff/1.21/font/devdvi/generate/texsy.map
+#usr/share/groff/1.21/font/devdvi/generate/textex.map
+#usr/share/groff/1.21/font/devdvi/generate/textt.map
+#usr/share/groff/1.21/font/devhtml
+#usr/share/groff/1.21/font/devhtml/B
+#usr/share/groff/1.21/font/devhtml/BI
+#usr/share/groff/1.21/font/devhtml/CB
+#usr/share/groff/1.21/font/devhtml/CBI
+#usr/share/groff/1.21/font/devhtml/CI
+#usr/share/groff/1.21/font/devhtml/CR
+#usr/share/groff/1.21/font/devhtml/DESC
+#usr/share/groff/1.21/font/devhtml/I
+#usr/share/groff/1.21/font/devhtml/R
+#usr/share/groff/1.21/font/devhtml/S
+#usr/share/groff/1.21/font/devlatin1
+#usr/share/groff/1.21/font/devlatin1/B
+#usr/share/groff/1.21/font/devlatin1/BI
+#usr/share/groff/1.21/font/devlatin1/DESC
+#usr/share/groff/1.21/font/devlatin1/I
+#usr/share/groff/1.21/font/devlatin1/R
+#usr/share/groff/1.21/font/devlbp
+#usr/share/groff/1.21/font/devlbp/CB
+#usr/share/groff/1.21/font/devlbp/CI
+#usr/share/groff/1.21/font/devlbp/CR
+#usr/share/groff/1.21/font/devlbp/DESC
+#usr/share/groff/1.21/font/devlbp/EB
+#usr/share/groff/1.21/font/devlbp/EI
+#usr/share/groff/1.21/font/devlbp/ER
+#usr/share/groff/1.21/font/devlbp/HB
+#usr/share/groff/1.21/font/devlbp/HBI
+#usr/share/groff/1.21/font/devlbp/HI
+#usr/share/groff/1.21/font/devlbp/HNB
+#usr/share/groff/1.21/font/devlbp/HNBI
+#usr/share/groff/1.21/font/devlbp/HNI
+#usr/share/groff/1.21/font/devlbp/HNR
+#usr/share/groff/1.21/font/devlbp/HR
+#usr/share/groff/1.21/font/devlbp/TB
+#usr/share/groff/1.21/font/devlbp/TBI
+#usr/share/groff/1.21/font/devlbp/TI
+#usr/share/groff/1.21/font/devlbp/TR
+#usr/share/groff/1.21/font/devlj4
+#usr/share/groff/1.21/font/devlj4/AB
+#usr/share/groff/1.21/font/devlj4/ABI
+#usr/share/groff/1.21/font/devlj4/AI
+#usr/share/groff/1.21/font/devlj4/ALBB
+#usr/share/groff/1.21/font/devlj4/ALBR
+#usr/share/groff/1.21/font/devlj4/AOB
+#usr/share/groff/1.21/font/devlj4/AOI
+#usr/share/groff/1.21/font/devlj4/AOR
+#usr/share/groff/1.21/font/devlj4/AR
+#usr/share/groff/1.21/font/devlj4/CB
+#usr/share/groff/1.21/font/devlj4/CBI
+#usr/share/groff/1.21/font/devlj4/CI
+#usr/share/groff/1.21/font/devlj4/CLARENDON
+#usr/share/groff/1.21/font/devlj4/CORONET
+#usr/share/groff/1.21/font/devlj4/CR
+#usr/share/groff/1.21/font/devlj4/DESC
+#usr/share/groff/1.21/font/devlj4/GB
+#usr/share/groff/1.21/font/devlj4/GBI
+#usr/share/groff/1.21/font/devlj4/GI
+#usr/share/groff/1.21/font/devlj4/GR
+#usr/share/groff/1.21/font/devlj4/LGB
+#usr/share/groff/1.21/font/devlj4/LGI
+#usr/share/groff/1.21/font/devlj4/LGR
+#usr/share/groff/1.21/font/devlj4/MARIGOLD
+#usr/share/groff/1.21/font/devlj4/OB
+#usr/share/groff/1.21/font/devlj4/OBI
+#usr/share/groff/1.21/font/devlj4/OI
+#usr/share/groff/1.21/font/devlj4/OR
+#usr/share/groff/1.21/font/devlj4/S
+#usr/share/groff/1.21/font/devlj4/SYMBOL
+#usr/share/groff/1.21/font/devlj4/TB
+#usr/share/groff/1.21/font/devlj4/TBI
+#usr/share/groff/1.21/font/devlj4/TI
+#usr/share/groff/1.21/font/devlj4/TNRB
+#usr/share/groff/1.21/font/devlj4/TNRBI
+#usr/share/groff/1.21/font/devlj4/TNRI
+#usr/share/groff/1.21/font/devlj4/TNRR
+#usr/share/groff/1.21/font/devlj4/TR
+#usr/share/groff/1.21/font/devlj4/UB
+#usr/share/groff/1.21/font/devlj4/UBI
+#usr/share/groff/1.21/font/devlj4/UCB
+#usr/share/groff/1.21/font/devlj4/UCBI
+#usr/share/groff/1.21/font/devlj4/UCI
+#usr/share/groff/1.21/font/devlj4/UCR
+#usr/share/groff/1.21/font/devlj4/UI
+#usr/share/groff/1.21/font/devlj4/UR
+#usr/share/groff/1.21/font/devlj4/WINGDINGS
+#usr/share/groff/1.21/font/devlj4/generate
+#usr/share/groff/1.21/font/devlj4/generate/Makefile
+#usr/share/groff/1.21/font/devlj4/generate/special.awk
+#usr/share/groff/1.21/font/devlj4/generate/special.map
+#usr/share/groff/1.21/font/devlj4/generate/symbol.map
+#usr/share/groff/1.21/font/devlj4/generate/text.map
+#usr/share/groff/1.21/font/devlj4/generate/wingdings.map
+#usr/share/groff/1.21/font/devps
+#usr/share/groff/1.21/font/devps/AB
+#usr/share/groff/1.21/font/devps/ABI
+#usr/share/groff/1.21/font/devps/AI
+#usr/share/groff/1.21/font/devps/AR
+#usr/share/groff/1.21/font/devps/BMB
+#usr/share/groff/1.21/font/devps/BMBI
+#usr/share/groff/1.21/font/devps/BMI
+#usr/share/groff/1.21/font/devps/BMR
+#usr/share/groff/1.21/font/devps/CB
+#usr/share/groff/1.21/font/devps/CBI
+#usr/share/groff/1.21/font/devps/CI
+#usr/share/groff/1.21/font/devps/CR
+#usr/share/groff/1.21/font/devps/DESC
+#usr/share/groff/1.21/font/devps/EURO
+#usr/share/groff/1.21/font/devps/HB
+#usr/share/groff/1.21/font/devps/HBI
+#usr/share/groff/1.21/font/devps/HI
+#usr/share/groff/1.21/font/devps/HNB
+#usr/share/groff/1.21/font/devps/HNBI
+#usr/share/groff/1.21/font/devps/HNI
+#usr/share/groff/1.21/font/devps/HNR
+#usr/share/groff/1.21/font/devps/HR
+#usr/share/groff/1.21/font/devps/NB
+#usr/share/groff/1.21/font/devps/NBI
+#usr/share/groff/1.21/font/devps/NI
+#usr/share/groff/1.21/font/devps/NR
+#usr/share/groff/1.21/font/devps/PB
+#usr/share/groff/1.21/font/devps/PBI
+#usr/share/groff/1.21/font/devps/PI
+#usr/share/groff/1.21/font/devps/PR
+#usr/share/groff/1.21/font/devps/S
+#usr/share/groff/1.21/font/devps/SS
+#usr/share/groff/1.21/font/devps/TB
+#usr/share/groff/1.21/font/devps/TBI
+#usr/share/groff/1.21/font/devps/TI
+#usr/share/groff/1.21/font/devps/TR
+#usr/share/groff/1.21/font/devps/ZCMI
+#usr/share/groff/1.21/font/devps/ZD
+#usr/share/groff/1.21/font/devps/ZDR
+#usr/share/groff/1.21/font/devps/download
+#usr/share/groff/1.21/font/devps/freeeuro.afm
+#usr/share/groff/1.21/font/devps/freeeuro.pfa
+#usr/share/groff/1.21/font/devps/generate
+#usr/share/groff/1.21/font/devps/generate/Makefile
+#usr/share/groff/1.21/font/devps/generate/afmname
+#usr/share/groff/1.21/font/devps/generate/dingbats.map
+#usr/share/groff/1.21/font/devps/generate/dingbats.rmap
+#usr/share/groff/1.21/font/devps/generate/lgreekmap
+#usr/share/groff/1.21/font/devps/generate/symbol.sed
+#usr/share/groff/1.21/font/devps/generate/symbolchars
+#usr/share/groff/1.21/font/devps/generate/symbolsl.afm
+#usr/share/groff/1.21/font/devps/generate/textmap
+#usr/share/groff/1.21/font/devps/prologue
+#usr/share/groff/1.21/font/devps/symbolsl.pfa
+#usr/share/groff/1.21/font/devps/text.enc
+#usr/share/groff/1.21/font/devps/zapfdr.pfa
+#usr/share/groff/1.21/font/devutf8
+#usr/share/groff/1.21/font/devutf8/B
+#usr/share/groff/1.21/font/devutf8/BI
+#usr/share/groff/1.21/font/devutf8/DESC
+#usr/share/groff/1.21/font/devutf8/I
+#usr/share/groff/1.21/font/devutf8/R
+#usr/share/groff/1.21/oldfont
+#usr/share/groff/1.21/oldfont/devps
+#usr/share/groff/1.21/oldfont/devps/CB
+#usr/share/groff/1.21/oldfont/devps/CBI
+#usr/share/groff/1.21/oldfont/devps/CI
+#usr/share/groff/1.21/oldfont/devps/CR
+#usr/share/groff/1.21/oldfont/devps/HB
+#usr/share/groff/1.21/oldfont/devps/HBI
+#usr/share/groff/1.21/oldfont/devps/HI
+#usr/share/groff/1.21/oldfont/devps/HNB
+#usr/share/groff/1.21/oldfont/devps/HNBI
+#usr/share/groff/1.21/oldfont/devps/HNI
+#usr/share/groff/1.21/oldfont/devps/HNR
+#usr/share/groff/1.21/oldfont/devps/HR
+#usr/share/groff/1.21/oldfont/devps/NB
+#usr/share/groff/1.21/oldfont/devps/NBI
+#usr/share/groff/1.21/oldfont/devps/NI
+#usr/share/groff/1.21/oldfont/devps/NR
+#usr/share/groff/1.21/oldfont/devps/PB
+#usr/share/groff/1.21/oldfont/devps/PBI
+#usr/share/groff/1.21/oldfont/devps/PI
+#usr/share/groff/1.21/oldfont/devps/PR
+#usr/share/groff/1.21/oldfont/devps/S
+#usr/share/groff/1.21/oldfont/devps/SS
+#usr/share/groff/1.21/oldfont/devps/TB
+#usr/share/groff/1.21/oldfont/devps/TBI
+#usr/share/groff/1.21/oldfont/devps/TI
+#usr/share/groff/1.21/oldfont/devps/TR
+#usr/share/groff/1.21/oldfont/devps/symbol.afm
+#usr/share/groff/1.21/oldfont/devps/symbolsl.afm
+#usr/share/groff/1.21/oldfont/devps/zapfdr.afm
+#usr/share/groff/1.21/oldfont/devps/zapfdr.ps
+#usr/share/groff/1.21/pic
+#usr/share/groff/1.21/pic/chem.pic
+#usr/share/groff/1.21/tmac
+#usr/share/groff/1.21/tmac/62bit.tmac
+#usr/share/groff/1.21/tmac/X.tmac
+#usr/share/groff/1.21/tmac/Xps.tmac
+#usr/share/groff/1.21/tmac/a4.tmac
+#usr/share/groff/1.21/tmac/an-ext.tmac
+#usr/share/groff/1.21/tmac/an-old.tmac
+#usr/share/groff/1.21/tmac/an.tmac
+#usr/share/groff/1.21/tmac/andoc.tmac
+#usr/share/groff/1.21/tmac/composite.tmac
+#usr/share/groff/1.21/tmac/cp1047.tmac
+#usr/share/groff/1.21/tmac/cs.tmac
+#usr/share/groff/1.21/tmac/de.tmac
+#usr/share/groff/1.21/tmac/den.tmac
+#usr/share/groff/1.21/tmac/devtag.tmac
+#usr/share/groff/1.21/tmac/doc-old.tmac
+#usr/share/groff/1.21/tmac/doc.tmac
+#usr/share/groff/1.21/tmac/dvi.tmac
+#usr/share/groff/1.21/tmac/e.tmac
+#usr/share/groff/1.21/tmac/ec.tmac
+#usr/share/groff/1.21/tmac/eqnrc
+#usr/share/groff/1.21/tmac/europs.tmac
+#usr/share/groff/1.21/tmac/fr.tmac
+#usr/share/groff/1.21/tmac/hdmisc.tmac
+#usr/share/groff/1.21/tmac/hdtbl.tmac
+#usr/share/groff/1.21/tmac/html-end.tmac
+#usr/share/groff/1.21/tmac/html.tmac
+#usr/share/groff/1.21/tmac/hyphen.cs
+#usr/share/groff/1.21/tmac/hyphen.den
+#usr/share/groff/1.21/tmac/hyphen.det
+#usr/share/groff/1.21/tmac/hyphen.fr
+#usr/share/groff/1.21/tmac/hyphen.sv
+#usr/share/groff/1.21/tmac/hyphen.us
+#usr/share/groff/1.21/tmac/hyphenex.cs
+#usr/share/groff/1.21/tmac/hyphenex.det
+#usr/share/groff/1.21/tmac/hyphenex.us
+#usr/share/groff/1.21/tmac/ja.tmac
+#usr/share/groff/1.21/tmac/latin1.tmac
+#usr/share/groff/1.21/tmac/latin2.tmac
+#usr/share/groff/1.21/tmac/latin5.tmac
+#usr/share/groff/1.21/tmac/latin9.tmac
+#usr/share/groff/1.21/tmac/lbp.tmac
+#usr/share/groff/1.21/tmac/lj4.tmac
+#usr/share/groff/1.21/tmac/m.tmac
+#usr/share/groff/1.21/tmac/man.tmac
+#usr/share/groff/1.21/tmac/mandoc.tmac
+#usr/share/groff/1.21/tmac/mdoc
+#usr/share/groff/1.21/tmac/mdoc.tmac
+#usr/share/groff/1.21/tmac/mdoc/doc-common
+#usr/share/groff/1.21/tmac/mdoc/doc-ditroff
+#usr/share/groff/1.21/tmac/mdoc/doc-nroff
+#usr/share/groff/1.21/tmac/mdoc/doc-syms
+#usr/share/groff/1.21/tmac/me.tmac
+#usr/share/groff/1.21/tmac/mm
+#usr/share/groff/1.21/tmac/mm.tmac
+#usr/share/groff/1.21/tmac/mm/0.MT
+#usr/share/groff/1.21/tmac/mm/4.MT
+#usr/share/groff/1.21/tmac/mm/5.MT
+#usr/share/groff/1.21/tmac/mm/locale
+#usr/share/groff/1.21/tmac/mm/ms.cov
+#usr/share/groff/1.21/tmac/mm/se_locale
+#usr/share/groff/1.21/tmac/mm/se_ms.cov
+#usr/share/groff/1.21/tmac/mmse.tmac
+#usr/share/groff/1.21/tmac/mom.tmac
+#usr/share/groff/1.21/tmac/ms.tmac
+#usr/share/groff/1.21/tmac/mse.tmac
+#usr/share/groff/1.21/tmac/om.tmac
+#usr/share/groff/1.21/tmac/papersize.tmac
+#usr/share/groff/1.21/tmac/pdfmark.tmac
+#usr/share/groff/1.21/tmac/pic.tmac
+#usr/share/groff/1.21/tmac/ps.tmac
+#usr/share/groff/1.21/tmac/psatk.tmac
+#usr/share/groff/1.21/tmac/psold.tmac
+#usr/share/groff/1.21/tmac/pspic.tmac
+#usr/share/groff/1.21/tmac/s.tmac
+#usr/share/groff/1.21/tmac/safer.tmac
+#usr/share/groff/1.21/tmac/spdf.tmac
+#usr/share/groff/1.21/tmac/sv.tmac
+#usr/share/groff/1.21/tmac/trace.tmac
+#usr/share/groff/1.21/tmac/trans.tmac
+#usr/share/groff/1.21/tmac/troffrc
+#usr/share/groff/1.21/tmac/troffrc-end
+#usr/share/groff/1.21/tmac/tty-char.tmac
+#usr/share/groff/1.21/tmac/tty.tmac
+#usr/share/groff/1.21/tmac/unicode.tmac
+#usr/share/groff/1.21/tmac/www.tmac
+#usr/share/groff/current
+#usr/share/groff/site-font
#usr/share/groff/site-tmac
#usr/share/groff/site-tmac/man.local
#usr/share/groff/site-tmac/mdoc.local
+#usr/share/info/groff.info
+#usr/share/info/groff.info-1
+#usr/share/info/groff.info-2
+#usr/share/info/groff.info-3
+#usr/share/man/man1/addftinfo.1
+#usr/share/man/man1/afmtodit.1
+#usr/share/man/man1/chem.1
+#usr/share/man/man1/eqn.1
+#usr/share/man/man1/eqn2graph.1
+#usr/share/man/man1/gdiffmk.1
+#usr/share/man/man1/grap2graph.1
+#usr/share/man/man1/grn.1
+#usr/share/man/man1/grodvi.1
+#usr/share/man/man1/groff.1
+#usr/share/man/man1/groffer.1
+#usr/share/man/man1/grog.1
+#usr/share/man/man1/grohtml.1
+#usr/share/man/man1/grolbp.1
+#usr/share/man/man1/grolj4.1
+#usr/share/man/man1/grops.1
+#usr/share/man/man1/grotty.1
+#usr/share/man/man1/hpftodit.1
+#usr/share/man/man1/indxbib.1
+#usr/share/man/man1/lkbib.1
+#usr/share/man/man1/lookbib.1
+#usr/share/man/man1/mmroff.1
+#usr/share/man/man1/neqn.1
+#usr/share/man/man1/nroff.1
+#usr/share/man/man1/pdfroff.1
+#usr/share/man/man1/pfbtops.1
+#usr/share/man/man1/pic.1
+#usr/share/man/man1/pic2graph.1
+#usr/share/man/man1/preconv.1
+#usr/share/man/man1/refer.1
+#usr/share/man/man1/roff2dvi.1
+#usr/share/man/man1/roff2html.1
+#usr/share/man/man1/roff2pdf.1
+#usr/share/man/man1/roff2ps.1
+#usr/share/man/man1/roff2text.1
+#usr/share/man/man1/roff2x.1
+#usr/share/man/man1/soelim.1
+#usr/share/man/man1/tbl.1
+#usr/share/man/man1/tfmtodit.1
+#usr/share/man/man1/troff.1
+#usr/share/man/man5/groff_font.5
+#usr/share/man/man5/groff_out.5
+#usr/share/man/man5/groff_tmac.5
+#usr/share/man/man5/lj4_font.5
+#usr/share/man/man7/ditroff.7
+#usr/share/man/man7/groff.7
+#usr/share/man/man7/groff_char.7
+#usr/share/man/man7/groff_diff.7
+#usr/share/man/man7/groff_hdtbl.7
+#usr/share/man/man7/groff_man.7
+#usr/share/man/man7/groff_mdoc.7
+#usr/share/man/man7/groff_me.7
+#usr/share/man/man7/groff_mm.7
+#usr/share/man/man7/groff_mmse.7
+#usr/share/man/man7/groff_mom.7
+#usr/share/man/man7/groff_ms.7
+#usr/share/man/man7/groff_trace.7
+#usr/share/man/man7/groff_www.7
+#usr/share/man/man7/roff.7
etc/rc.d/init.d/squid
etc/rc.d/init.d/sshd
#etc/rc.d/init.d/sslh
+etc/rc.d/init.d/static-routes
etc/rc.d/init.d/swap
etc/rc.d/init.d/sysctl
etc/rc.d/init.d/sysklogd
usr/local/bin/pakfire
usr/local/bin/qosctrl
usr/local/bin/rebuildhosts
+usr/local/bin/rebuildroutes
usr/local/bin/redctrl
#usr/local/bin/sambactrl
usr/local/bin/setaliases
etc/ipsec.d/reqs
etc/ipsec.secrets
etc/strongswan.conf
-#usr/lib/libcharon.a
-#usr/lib/libcharon.la
-usr/lib/libcharon.so
-usr/lib/libcharon.so.0
-usr/lib/libcharon.so.0.0.0
-#usr/lib/libhydra.a
-#usr/lib/libhydra.la
-usr/lib/libhydra.so
-usr/lib/libhydra.so.0
-usr/lib/libhydra.so.0.0.0
-#usr/lib/libstrongswan.a
-#usr/lib/libstrongswan.la
-usr/lib/libstrongswan.so
-usr/lib/libstrongswan.so.0
-usr/lib/libstrongswan.so.0.0.0
+#usr/lib/ipsec/libcharon.a
+#usr/lib/ipsec/libcharon.la
+usr/lib/ipsec/libcharon.so
+usr/lib/ipsec/libcharon.so.0
+usr/lib/ipsec/libcharon.so.0.0.0
+#usr/lib/ipsec/libhydra.a
+#usr/lib/ipsec/libhydra.la
+usr/lib/ipsec/libhydra.so
+usr/lib/ipsec/libhydra.so.0
+usr/lib/ipsec/libhydra.so.0.0.0
+#usr/lib/ipsec/libstrongswan.a
+#usr/lib/ipsec/libstrongswan.la
+usr/lib/ipsec/libstrongswan.so
+usr/lib/ipsec/libstrongswan.so.0
+usr/lib/ipsec/libstrongswan.so.0.0.0
#usr/libexec/ipsec
usr/libexec/ipsec/_copyright
usr/libexec/ipsec/_pluto_adns
usr/libexec/ipsec/charon
usr/libexec/ipsec/openac
usr/libexec/ipsec/pki
-#usr/libexec/ipsec/plugins
-#usr/libexec/ipsec/plugins/libstrongswan-aes.a
-#usr/libexec/ipsec/plugins/libstrongswan-aes.la
-usr/libexec/ipsec/plugins/libstrongswan-aes.so
-#usr/libexec/ipsec/plugins/libstrongswan-attr.a
-#usr/libexec/ipsec/plugins/libstrongswan-attr.la
-usr/libexec/ipsec/plugins/libstrongswan-attr.so
-#usr/libexec/ipsec/plugins/libstrongswan-curl.a
-#usr/libexec/ipsec/plugins/libstrongswan-curl.la
-usr/libexec/ipsec/plugins/libstrongswan-curl.so
-#usr/libexec/ipsec/plugins/libstrongswan-des.a
-#usr/libexec/ipsec/plugins/libstrongswan-des.la
-usr/libexec/ipsec/plugins/libstrongswan-des.so
-#usr/libexec/ipsec/plugins/libstrongswan-dnskey.a
-#usr/libexec/ipsec/plugins/libstrongswan-dnskey.la
-usr/libexec/ipsec/plugins/libstrongswan-dnskey.so
-#usr/libexec/ipsec/plugins/libstrongswan-fips-prf.a
-#usr/libexec/ipsec/plugins/libstrongswan-fips-prf.la
-usr/libexec/ipsec/plugins/libstrongswan-fips-prf.so
-#usr/libexec/ipsec/plugins/libstrongswan-gmp.a
-#usr/libexec/ipsec/plugins/libstrongswan-gmp.la
-usr/libexec/ipsec/plugins/libstrongswan-gmp.so
-#usr/libexec/ipsec/plugins/libstrongswan-hmac.a
-#usr/libexec/ipsec/plugins/libstrongswan-hmac.la
-usr/libexec/ipsec/plugins/libstrongswan-hmac.so
-#usr/libexec/ipsec/plugins/libstrongswan-kernel-netlink.a
-#usr/libexec/ipsec/plugins/libstrongswan-kernel-netlink.la
-usr/libexec/ipsec/plugins/libstrongswan-kernel-netlink.so
-#usr/libexec/ipsec/plugins/libstrongswan-md5.a
-#usr/libexec/ipsec/plugins/libstrongswan-md5.la
-usr/libexec/ipsec/plugins/libstrongswan-md5.so
-#usr/libexec/ipsec/plugins/libstrongswan-pem.a
-#usr/libexec/ipsec/plugins/libstrongswan-pem.la
-usr/libexec/ipsec/plugins/libstrongswan-pem.so
-#usr/libexec/ipsec/plugins/libstrongswan-pgp.a
-#usr/libexec/ipsec/plugins/libstrongswan-pgp.la
-usr/libexec/ipsec/plugins/libstrongswan-pgp.so
-#usr/libexec/ipsec/plugins/libstrongswan-pkcs1.a
-#usr/libexec/ipsec/plugins/libstrongswan-pkcs1.la
-usr/libexec/ipsec/plugins/libstrongswan-pkcs1.so
-#usr/libexec/ipsec/plugins/libstrongswan-pubkey.a
-#usr/libexec/ipsec/plugins/libstrongswan-pubkey.la
-usr/libexec/ipsec/plugins/libstrongswan-pubkey.so
-#usr/libexec/ipsec/plugins/libstrongswan-random.a
-#usr/libexec/ipsec/plugins/libstrongswan-random.la
-usr/libexec/ipsec/plugins/libstrongswan-random.so
-#usr/libexec/ipsec/plugins/libstrongswan-resolve.a
-#usr/libexec/ipsec/plugins/libstrongswan-resolve.la
-usr/libexec/ipsec/plugins/libstrongswan-resolve.so
-#usr/libexec/ipsec/plugins/libstrongswan-revocation.a
-#usr/libexec/ipsec/plugins/libstrongswan-revocation.la
-usr/libexec/ipsec/plugins/libstrongswan-revocation.so
-#usr/libexec/ipsec/plugins/libstrongswan-sha1.a
-#usr/libexec/ipsec/plugins/libstrongswan-sha1.la
-usr/libexec/ipsec/plugins/libstrongswan-sha1.so
-#usr/libexec/ipsec/plugins/libstrongswan-sha2.a
-#usr/libexec/ipsec/plugins/libstrongswan-sha2.la
-usr/libexec/ipsec/plugins/libstrongswan-sha2.so
-#usr/libexec/ipsec/plugins/libstrongswan-socket-raw.a
-#usr/libexec/ipsec/plugins/libstrongswan-socket-raw.la
-usr/libexec/ipsec/plugins/libstrongswan-socket-raw.so
-#usr/libexec/ipsec/plugins/libstrongswan-stroke.a
-#usr/libexec/ipsec/plugins/libstrongswan-stroke.la
-usr/libexec/ipsec/plugins/libstrongswan-stroke.so
-#usr/libexec/ipsec/plugins/libstrongswan-updown.a
-#usr/libexec/ipsec/plugins/libstrongswan-updown.la
-usr/libexec/ipsec/plugins/libstrongswan-updown.so
-#usr/libexec/ipsec/plugins/libstrongswan-x509.a
-#usr/libexec/ipsec/plugins/libstrongswan-x509.la
-usr/libexec/ipsec/plugins/libstrongswan-x509.so
-#usr/libexec/ipsec/plugins/libstrongswan-xauth.a
-#usr/libexec/ipsec/plugins/libstrongswan-xauth.la
-usr/libexec/ipsec/plugins/libstrongswan-xauth.so
-#usr/libexec/ipsec/plugins/libstrongswan-xcbc.a
-#usr/libexec/ipsec/plugins/libstrongswan-xcbc.la
-usr/libexec/ipsec/plugins/libstrongswan-xcbc.so
+#usr/lib/ipsec
+#usr/lib/ipsec/plugins
+#usr/lib/ipsec/plugins/libstrongswan-aes.a
+#usr/lib/ipsec/plugins/libstrongswan-aes.la
+usr/lib/ipsec/plugins/libstrongswan-aes.so
+#usr/lib/ipsec/plugins/libstrongswan-attr.a
+#usr/lib/ipsec/plugins/libstrongswan-attr.la
+usr/lib/ipsec/plugins/libstrongswan-attr.so
+#usr/lib/ipsec/plugins/libstrongswan-constraints.a
+#usr/lib/ipsec/plugins/libstrongswan-constraints.la
+usr/lib/ipsec/plugins/libstrongswan-constraints.so
+#usr/lib/ipsec/plugins/libstrongswan-curl.a
+#usr/lib/ipsec/plugins/libstrongswan-curl.la
+usr/lib/ipsec/plugins/libstrongswan-curl.so
+#usr/lib/ipsec/plugins/libstrongswan-des.a
+#usr/lib/ipsec/plugins/libstrongswan-des.la
+usr/lib/ipsec/plugins/libstrongswan-des.so
+#usr/lib/ipsec/plugins/libstrongswan-dnskey.a
+#usr/lib/ipsec/plugins/libstrongswan-dnskey.la
+usr/lib/ipsec/plugins/libstrongswan-dnskey.so
+#usr/lib/ipsec/plugins/libstrongswan-fips-prf.a
+#usr/lib/ipsec/plugins/libstrongswan-fips-prf.la
+usr/lib/ipsec/plugins/libstrongswan-fips-prf.so
+#usr/lib/ipsec/plugins/libstrongswan-gmp.a
+#usr/lib/ipsec/plugins/libstrongswan-gmp.la
+usr/lib/ipsec/plugins/libstrongswan-gmp.so
+#usr/lib/ipsec/plugins/libstrongswan-hmac.a
+#usr/lib/ipsec/plugins/libstrongswan-hmac.la
+usr/lib/ipsec/plugins/libstrongswan-hmac.so
+#usr/lib/ipsec/plugins/libstrongswan-kernel-netlink.a
+#usr/lib/ipsec/plugins/libstrongswan-kernel-netlink.la
+usr/lib/ipsec/plugins/libstrongswan-kernel-netlink.so
+#usr/lib/ipsec/plugins/libstrongswan-md5.a
+#usr/lib/ipsec/plugins/libstrongswan-md5.la
+usr/lib/ipsec/plugins/libstrongswan-md5.so
+#usr/lib/ipsec/plugins/libstrongswan-pem.a
+#usr/lib/ipsec/plugins/libstrongswan-pem.la
+usr/lib/ipsec/plugins/libstrongswan-pem.so
+#usr/lib/ipsec/plugins/libstrongswan-pgp.a
+#usr/lib/ipsec/plugins/libstrongswan-pgp.la
+usr/lib/ipsec/plugins/libstrongswan-pgp.so
+#usr/lib/ipsec/plugins/libstrongswan-pkcs1.a
+#usr/lib/ipsec/plugins/libstrongswan-pkcs1.la
+usr/lib/ipsec/plugins/libstrongswan-pkcs1.so
+#usr/lib/ipsec/plugins/libstrongswan-pubkey.a
+#usr/lib/ipsec/plugins/libstrongswan-pubkey.la
+usr/lib/ipsec/plugins/libstrongswan-pubkey.so
+#usr/lib/ipsec/plugins/libstrongswan-random.a
+#usr/lib/ipsec/plugins/libstrongswan-random.la
+usr/lib/ipsec/plugins/libstrongswan-random.so
+#usr/lib/ipsec/plugins/libstrongswan-resolve.a
+#usr/lib/ipsec/plugins/libstrongswan-resolve.la
+usr/lib/ipsec/plugins/libstrongswan-resolve.so
+#usr/lib/ipsec/plugins/libstrongswan-revocation.a
+#usr/lib/ipsec/plugins/libstrongswan-revocation.la
+usr/lib/ipsec/plugins/libstrongswan-revocation.so
+#usr/lib/ipsec/plugins/libstrongswan-sha1.a
+#usr/lib/ipsec/plugins/libstrongswan-sha1.la
+usr/lib/ipsec/plugins/libstrongswan-sha1.so
+#usr/lib/ipsec/plugins/libstrongswan-sha2.a
+#usr/lib/ipsec/plugins/libstrongswan-sha2.la
+usr/lib/ipsec/plugins/libstrongswan-sha2.so
+#usr/lib/ipsec/plugins/libstrongswan-socket-raw.a
+#usr/lib/ipsec/plugins/libstrongswan-socket-raw.la
+usr/lib/ipsec/plugins/libstrongswan-socket-raw.so
+#usr/lib/ipsec/plugins/libstrongswan-stroke.a
+#usr/lib/ipsec/plugins/libstrongswan-stroke.la
+usr/lib/ipsec/plugins/libstrongswan-stroke.so
+#usr/lib/ipsec/plugins/libstrongswan-updown.a
+#usr/lib/ipsec/plugins/libstrongswan-updown.la
+usr/lib/ipsec/plugins/libstrongswan-updown.so
+#usr/lib/ipsec/plugins/libstrongswan-x509.a
+#usr/lib/ipsec/plugins/libstrongswan-x509.la
+usr/lib/ipsec/plugins/libstrongswan-x509.so
+#usr/lib/ipsec/plugins/libstrongswan-xauth.a
+#usr/lib/ipsec/plugins/libstrongswan-xauth.la
+usr/lib/ipsec/plugins/libstrongswan-xauth.so
+#usr/lib/ipsec/plugins/libstrongswan-xcbc.a
+#usr/lib/ipsec/plugins/libstrongswan-xcbc.la
+usr/lib/ipsec/plugins/libstrongswan-xcbc.so
usr/libexec/ipsec/pluto
usr/libexec/ipsec/scepclient
usr/libexec/ipsec/starter
#usr/share/man/man3/anyaddr.3
#usr/share/man/man3/atoaddr.3
#usr/share/man/man3/atoasr.3
-#usr/share/man/man3/atosa.3
#usr/share/man/man3/atoul.3
#usr/share/man/man3/goodmask.3
#usr/share/man/man3/initaddr.3
#usr/share/man/man3/initsubnet.3
-#usr/share/man/man3/keyblobtoid.3
#usr/share/man/man3/portof.3
-#usr/share/man/man3/prng.3
#usr/share/man/man3/rangetosubnet.3
#usr/share/man/man3/sameaddr.3
#usr/share/man/man3/subnetof.3
#usr/share/man/man5/ipsec.conf.5
#usr/share/man/man5/ipsec.secrets.5
#usr/share/man/man5/strongswan.conf.5
-#usr/share/man/man8/_copyright.8
#usr/share/man/man8/_updown.8
#usr/share/man/man8/_updown_espmark.8
#usr/share/man/man8/ipsec.8
#usr/share/man/man8/openac.8
#usr/share/man/man8/pluto.8
#usr/share/man/man8/scepclient.8
-#usr/share/man/man8/starter.8
etc/ipsec.user.conf
etc/ipsec.user.secrets
-#etc/usb_modeswitch.conf
-etc/usb_modeswitch.setup.example
+etc/usb_modeswitch.conf
#lib/udev/usb_modeswitch
usr/sbin/usb_modeswitch
usr/sbin/usb_modeswitch_dispatcher
#usr/share/man/man1/usb_modeswitch.1
+var/lib/usb_modeswitch
-#etc/usb_modeswitch.d
-etc/usb_modeswitch.d/0421:060c
-etc/usb_modeswitch.d/0421:0610
-etc/usb_modeswitch.d/0421:0622
-etc/usb_modeswitch.d/0421:0627
-etc/usb_modeswitch.d/0471:1210
-etc/usb_modeswitch.d/0471:1237
-etc/usb_modeswitch.d/0482:024d
-etc/usb_modeswitch.d/04e8:689a
-etc/usb_modeswitch.d/04e8:f000
-etc/usb_modeswitch.d/057c:84ff
-etc/usb_modeswitch.d/05c6:1000:sVe=Option
-etc/usb_modeswitch.d/05c6:1000:uMa=AnyDATA
-etc/usb_modeswitch.d/05c6:1000:uMa=Option
-etc/usb_modeswitch.d/05c6:1000:uMa=SAMSUNG
-etc/usb_modeswitch.d/05c6:1000:uMa=Vertex
-etc/usb_modeswitch.d/05c6:2001
-etc/usb_modeswitch.d/05c6:f000
-etc/usb_modeswitch.d/05c7:1000
-etc/usb_modeswitch.d/072f:100d
-etc/usb_modeswitch.d/0930:0d46
-etc/usb_modeswitch.d/0ace:2011
-etc/usb_modeswitch.d/0ace:20ff
-etc/usb_modeswitch.d/0af0:6711
-etc/usb_modeswitch.d/0af0:6731
-etc/usb_modeswitch.d/0af0:6751
-etc/usb_modeswitch.d/0af0:6771
-etc/usb_modeswitch.d/0af0:6791
-etc/usb_modeswitch.d/0af0:6811
-etc/usb_modeswitch.d/0af0:6911
-etc/usb_modeswitch.d/0af0:6951
-etc/usb_modeswitch.d/0af0:6971
-etc/usb_modeswitch.d/0af0:7011
-etc/usb_modeswitch.d/0af0:7031
-etc/usb_modeswitch.d/0af0:7051
-etc/usb_modeswitch.d/0af0:7071
-etc/usb_modeswitch.d/0af0:7111
-etc/usb_modeswitch.d/0af0:7211
-etc/usb_modeswitch.d/0af0:7251
-etc/usb_modeswitch.d/0af0:7271
-etc/usb_modeswitch.d/0af0:7301
-etc/usb_modeswitch.d/0af0:7311
-etc/usb_modeswitch.d/0af0:7361
-etc/usb_modeswitch.d/0af0:7381
-etc/usb_modeswitch.d/0af0:7401
-etc/usb_modeswitch.d/0af0:7501
-etc/usb_modeswitch.d/0af0:7601
-etc/usb_modeswitch.d/0af0:7701
-etc/usb_modeswitch.d/0af0:7801
-etc/usb_modeswitch.d/0af0:7901
-etc/usb_modeswitch.d/0af0:8200
-etc/usb_modeswitch.d/0af0:8201
-etc/usb_modeswitch.d/0af0:8300
-etc/usb_modeswitch.d/0af0:8302
-etc/usb_modeswitch.d/0af0:8304
-etc/usb_modeswitch.d/0af0:8400
-etc/usb_modeswitch.d/0af0:c031
-etc/usb_modeswitch.d/0af0:c100
-etc/usb_modeswitch.d/0af0:d013
-etc/usb_modeswitch.d/0af0:d031
-etc/usb_modeswitch.d/0af0:d033
-etc/usb_modeswitch.d/0af0:d035
-etc/usb_modeswitch.d/0af0:d055
-etc/usb_modeswitch.d/0af0:d057
-etc/usb_modeswitch.d/0af0:d058
-etc/usb_modeswitch.d/0af0:d155
-etc/usb_modeswitch.d/0af0:d157
-etc/usb_modeswitch.d/0af0:d255
-etc/usb_modeswitch.d/0af0:d257
-etc/usb_modeswitch.d/0af0:d357
-etc/usb_modeswitch.d/0b3c:c700
-etc/usb_modeswitch.d/0b3c:f000
-etc/usb_modeswitch.d/0cf3:20ff
-etc/usb_modeswitch.d/0d46:45a1
-etc/usb_modeswitch.d/0d46:45a5
-etc/usb_modeswitch.d/0e8d:7109
-etc/usb_modeswitch.d/0fce:d0cf
-etc/usb_modeswitch.d/0fce:d0e1
-etc/usb_modeswitch.d/0fce:d103
-etc/usb_modeswitch.d/0fd1:1000
-etc/usb_modeswitch.d/1004:1000
-etc/usb_modeswitch.d/1004:607f
-etc/usb_modeswitch.d/1004:613a
-etc/usb_modeswitch.d/1004:613f
-etc/usb_modeswitch.d/1004:6190
-etc/usb_modeswitch.d/1033:0035
-etc/usb_modeswitch.d/106c:3b03
-etc/usb_modeswitch.d/106c:3b05
-etc/usb_modeswitch.d/106c:3b06
-etc/usb_modeswitch.d/1076:7f40
-etc/usb_modeswitch.d/1199:0fff
-etc/usb_modeswitch.d/1266:1000
-etc/usb_modeswitch.d/12d1:1001
-etc/usb_modeswitch.d/12d1:1003
-etc/usb_modeswitch.d/12d1:101e
-etc/usb_modeswitch.d/12d1:1031
-etc/usb_modeswitch.d/12d1:1414
-etc/usb_modeswitch.d/12d1:1446
-etc/usb_modeswitch.d/12d1:14ad
-etc/usb_modeswitch.d/12d1:14c1
-etc/usb_modeswitch.d/12d1:1520
-etc/usb_modeswitch.d/12d1:1521
-etc/usb_modeswitch.d/12d1:1523
-etc/usb_modeswitch.d/12d1:1553
-etc/usb_modeswitch.d/12d1:1557
-etc/usb_modeswitch.d/12d1:1c0b
-etc/usb_modeswitch.d/1410:5010
-etc/usb_modeswitch.d/1410:5020
-etc/usb_modeswitch.d/1410:5030
-etc/usb_modeswitch.d/1410:5031
-etc/usb_modeswitch.d/1410:5041
-etc/usb_modeswitch.d/148f:2578
-etc/usb_modeswitch.d/16d8:6281
-etc/usb_modeswitch.d/16d8:6803
-etc/usb_modeswitch.d/16d8:6803:?
-etc/usb_modeswitch.d/16d8:700a
-etc/usb_modeswitch.d/16d8:f000
-etc/usb_modeswitch.d/198f:bccd
-etc/usb_modeswitch.d/19d2:0003
-etc/usb_modeswitch.d/19d2:0026
-etc/usb_modeswitch.d/19d2:0040
-etc/usb_modeswitch.d/19d2:0053
-etc/usb_modeswitch.d/19d2:0083
-etc/usb_modeswitch.d/19d2:0101
-etc/usb_modeswitch.d/19d2:0103
-etc/usb_modeswitch.d/19d2:0115
-etc/usb_modeswitch.d/19d2:1001
-etc/usb_modeswitch.d/19d2:1007
-etc/usb_modeswitch.d/19d2:1009
-etc/usb_modeswitch.d/19d2:1013
-etc/usb_modeswitch.d/19d2:2000
-etc/usb_modeswitch.d/19d2:fff5
-etc/usb_modeswitch.d/19d2:fff6
-etc/usb_modeswitch.d/1a8d:1000
-etc/usb_modeswitch.d/1ab7:5700
-etc/usb_modeswitch.d/1b7d:0700
-etc/usb_modeswitch.d/1bbb:f000
-etc/usb_modeswitch.d/1c9e:1001
-etc/usb_modeswitch.d/1c9e:9200
-etc/usb_modeswitch.d/1c9e:9e00
-etc/usb_modeswitch.d/1c9e:f000
-etc/usb_modeswitch.d/1dd6:1000
-etc/usb_modeswitch.d/1e0e:f000
-etc/usb_modeswitch.d/1edf:6003
-etc/usb_modeswitch.d/1ee8:0009
-etc/usb_modeswitch.d/1ee8:0013
-etc/usb_modeswitch.d/1f28:0021
-etc/usb_modeswitch.d/1fac:0130
-etc/usb_modeswitch.d/230d:0001
+etc/usb_modeswitch.d
lib/udev/rules.d/40-usb_modeswitch.rules
+#usr/share/usb_modeswitch
+usr/share/usb_modeswitch/03f0:002a
+usr/share/usb_modeswitch/0421:060c
+usr/share/usb_modeswitch/0421:0610
+usr/share/usb_modeswitch/0421:0622
+usr/share/usb_modeswitch/0421:0627
+usr/share/usb_modeswitch/0471:1210:uMa=Philips
+usr/share/usb_modeswitch/0471:1210:uMa=Wisue
+usr/share/usb_modeswitch/0471:1237
+usr/share/usb_modeswitch/0482:024d
+usr/share/usb_modeswitch/04e8:689a
+usr/share/usb_modeswitch/04e8:f000
+usr/share/usb_modeswitch/057c:84ff
+usr/share/usb_modeswitch/05c6:1000:sVe=GT
+usr/share/usb_modeswitch/05c6:1000:sVe=Option
+usr/share/usb_modeswitch/05c6:1000:uMa=AnyDATA
+usr/share/usb_modeswitch/05c6:1000:uMa=Option
+usr/share/usb_modeswitch/05c6:1000:uMa=SAMSUNG
+usr/share/usb_modeswitch/05c6:1000:uMa=SSE
+usr/share/usb_modeswitch/05c6:1000:uMa=Vertex
+usr/share/usb_modeswitch/05c6:2000
+usr/share/usb_modeswitch/05c6:2001
+usr/share/usb_modeswitch/05c6:f000
+usr/share/usb_modeswitch/05c7:1000
+usr/share/usb_modeswitch/072f:100d
+usr/share/usb_modeswitch/07d1:a800
+usr/share/usb_modeswitch/07d1:a804
+usr/share/usb_modeswitch/0930:0d46
+usr/share/usb_modeswitch/0ace:2011
+usr/share/usb_modeswitch/0ace:20ff
+usr/share/usb_modeswitch/0af0:6711
+usr/share/usb_modeswitch/0af0:6731
+usr/share/usb_modeswitch/0af0:6751
+usr/share/usb_modeswitch/0af0:6771
+usr/share/usb_modeswitch/0af0:6791
+usr/share/usb_modeswitch/0af0:6811
+usr/share/usb_modeswitch/0af0:6911
+usr/share/usb_modeswitch/0af0:6951
+usr/share/usb_modeswitch/0af0:6971
+usr/share/usb_modeswitch/0af0:7011
+usr/share/usb_modeswitch/0af0:7031
+usr/share/usb_modeswitch/0af0:7051
+usr/share/usb_modeswitch/0af0:7071
+usr/share/usb_modeswitch/0af0:7111
+usr/share/usb_modeswitch/0af0:7211
+usr/share/usb_modeswitch/0af0:7251
+usr/share/usb_modeswitch/0af0:7271
+usr/share/usb_modeswitch/0af0:7301
+usr/share/usb_modeswitch/0af0:7311
+usr/share/usb_modeswitch/0af0:7361
+usr/share/usb_modeswitch/0af0:7381
+usr/share/usb_modeswitch/0af0:7401
+usr/share/usb_modeswitch/0af0:7501
+usr/share/usb_modeswitch/0af0:7601
+usr/share/usb_modeswitch/0af0:7701
+usr/share/usb_modeswitch/0af0:7801
+usr/share/usb_modeswitch/0af0:7901
+usr/share/usb_modeswitch/0af0:7a01
+usr/share/usb_modeswitch/0af0:7a05
+usr/share/usb_modeswitch/0af0:8200
+usr/share/usb_modeswitch/0af0:8201
+usr/share/usb_modeswitch/0af0:8300
+usr/share/usb_modeswitch/0af0:8302
+usr/share/usb_modeswitch/0af0:8304
+usr/share/usb_modeswitch/0af0:8400
+usr/share/usb_modeswitch/0af0:8600
+usr/share/usb_modeswitch/0af0:8800
+usr/share/usb_modeswitch/0af0:8900
+usr/share/usb_modeswitch/0af0:9000
+usr/share/usb_modeswitch/0af0:c031
+usr/share/usb_modeswitch/0af0:c100
+usr/share/usb_modeswitch/0af0:d013
+usr/share/usb_modeswitch/0af0:d031
+usr/share/usb_modeswitch/0af0:d033
+usr/share/usb_modeswitch/0af0:d035
+usr/share/usb_modeswitch/0af0:d055
+usr/share/usb_modeswitch/0af0:d057
+usr/share/usb_modeswitch/0af0:d058
+usr/share/usb_modeswitch/0af0:d155
+usr/share/usb_modeswitch/0af0:d157
+usr/share/usb_modeswitch/0af0:d255
+usr/share/usb_modeswitch/0af0:d257
+usr/share/usb_modeswitch/0af0:d357
+usr/share/usb_modeswitch/0b3c:c700
+usr/share/usb_modeswitch/0b3c:f000
+usr/share/usb_modeswitch/0cf3:20ff
+usr/share/usb_modeswitch/0d46:45a1
+usr/share/usb_modeswitch/0d46:45a5
+usr/share/usb_modeswitch/0df7:0800
+usr/share/usb_modeswitch/0e8d:7109
+usr/share/usb_modeswitch/0fce:d0cf
+usr/share/usb_modeswitch/0fce:d0e1
+usr/share/usb_modeswitch/0fce:d103
+usr/share/usb_modeswitch/0fd1:1000
+usr/share/usb_modeswitch/1004:1000
+usr/share/usb_modeswitch/1004:607f
+usr/share/usb_modeswitch/1004:613a
+usr/share/usb_modeswitch/1004:613f
+usr/share/usb_modeswitch/1004:6190
+usr/share/usb_modeswitch/1033:0035
+usr/share/usb_modeswitch/106c:3b03
+usr/share/usb_modeswitch/106c:3b05
+usr/share/usb_modeswitch/106c:3b06
+usr/share/usb_modeswitch/1076:7f40
+usr/share/usb_modeswitch/1199:0fff
+usr/share/usb_modeswitch/1266:1000
+usr/share/usb_modeswitch/12d1:1001
+usr/share/usb_modeswitch/12d1:1003
+usr/share/usb_modeswitch/12d1:1009
+usr/share/usb_modeswitch/12d1:101e
+usr/share/usb_modeswitch/12d1:1030
+usr/share/usb_modeswitch/12d1:1031
+usr/share/usb_modeswitch/12d1:1414
+usr/share/usb_modeswitch/12d1:1446
+usr/share/usb_modeswitch/12d1:1449
+usr/share/usb_modeswitch/12d1:14ad
+usr/share/usb_modeswitch/12d1:14b5
+usr/share/usb_modeswitch/12d1:14b7
+usr/share/usb_modeswitch/12d1:14c1
+usr/share/usb_modeswitch/12d1:14c4
+usr/share/usb_modeswitch/12d1:14c5
+usr/share/usb_modeswitch/12d1:14d1
+usr/share/usb_modeswitch/12d1:14fe
+usr/share/usb_modeswitch/12d1:1505
+usr/share/usb_modeswitch/12d1:1520
+usr/share/usb_modeswitch/12d1:1521
+usr/share/usb_modeswitch/12d1:1523
+usr/share/usb_modeswitch/12d1:1553
+usr/share/usb_modeswitch/12d1:1557
+usr/share/usb_modeswitch/12d1:1c0b
+usr/share/usb_modeswitch/12d1:1da1
+usr/share/usb_modeswitch/12d1:380b
+usr/share/usb_modeswitch/1307:1169
+usr/share/usb_modeswitch/1410:5010
+usr/share/usb_modeswitch/1410:5020
+usr/share/usb_modeswitch/1410:5030
+usr/share/usb_modeswitch/1410:5031
+usr/share/usb_modeswitch/1410:5041
+usr/share/usb_modeswitch/148e:a000
+usr/share/usb_modeswitch/148f:2578
+usr/share/usb_modeswitch/16d8:6281
+usr/share/usb_modeswitch/16d8:6803
+usr/share/usb_modeswitch/16d8:700a
+usr/share/usb_modeswitch/16d8:700b
+usr/share/usb_modeswitch/16d8:f000
+usr/share/usb_modeswitch/198a:0003
+usr/share/usb_modeswitch/198f:bccd
+usr/share/usb_modeswitch/19d2:0003
+usr/share/usb_modeswitch/19d2:0013
+usr/share/usb_modeswitch/19d2:0026
+usr/share/usb_modeswitch/19d2:0040
+usr/share/usb_modeswitch/19d2:0053
+usr/share/usb_modeswitch/19d2:0083
+usr/share/usb_modeswitch/19d2:0101
+usr/share/usb_modeswitch/19d2:0103
+usr/share/usb_modeswitch/19d2:0110
+usr/share/usb_modeswitch/19d2:0115
+usr/share/usb_modeswitch/19d2:0149
+usr/share/usb_modeswitch/19d2:1001
+usr/share/usb_modeswitch/19d2:1007
+usr/share/usb_modeswitch/19d2:1009
+usr/share/usb_modeswitch/19d2:1013
+usr/share/usb_modeswitch/19d2:1171
+usr/share/usb_modeswitch/19d2:1175
+usr/share/usb_modeswitch/19d2:1179
+usr/share/usb_modeswitch/19d2:1201
+usr/share/usb_modeswitch/19d2:1216
+usr/share/usb_modeswitch/19d2:1224
+usr/share/usb_modeswitch/19d2:2000
+usr/share/usb_modeswitch/19d2:bccd
+usr/share/usb_modeswitch/19d2:ffe6
+usr/share/usb_modeswitch/19d2:fff5
+usr/share/usb_modeswitch/19d2:fff6
+usr/share/usb_modeswitch/1a8d:1000
+usr/share/usb_modeswitch/1ab7:5700
+usr/share/usb_modeswitch/1b7d:0700
+usr/share/usb_modeswitch/1bbb:f000
+usr/share/usb_modeswitch/1c9e:1001
+usr/share/usb_modeswitch/1c9e:6061
+usr/share/usb_modeswitch/1c9e:9200
+usr/share/usb_modeswitch/1c9e:9800
+usr/share/usb_modeswitch/1c9e:9e00
+usr/share/usb_modeswitch/1c9e:f000
+usr/share/usb_modeswitch/1dd6:1000
+usr/share/usb_modeswitch/1e0e:f000
+usr/share/usb_modeswitch/1edf:6003
+usr/share/usb_modeswitch/1ee8:0009
+usr/share/usb_modeswitch/1ee8:0013
+usr/share/usb_modeswitch/1ee8:0040
+usr/share/usb_modeswitch/1f28:0021
+usr/share/usb_modeswitch/1fac:0032
+usr/share/usb_modeswitch/1fac:0130
+usr/share/usb_modeswitch/201e:2009
+usr/share/usb_modeswitch/2020:f00e
+usr/share/usb_modeswitch/230d:0001
+usr/share/usb_modeswitch/230d:0007
+usr/share/usb_modeswitch/8888:6500
--- /dev/null
+etc/udev/rules.d/30-persistent-network.rules
+etc/ipsec.conf
+etc/ipsec.secrets
+etc/ipsec.user.conf
+etc/ipsec.user.secrets
+var/updatecache
+etc/localtime
--- /dev/null
+../../../common/apache2
\ No newline at end of file
--- /dev/null
+etc/sysctl.conf
+etc/system-release
+etc/issue
+srv/web/ipfire/cgi-bin/extrahd.cgi
+srv/web/ipfire/cgi-bin/index.cgi
+srv/web/ipfire/cgi-bin/vpnmain.cgi
+var/ipfire/langs/de.pl
+var/ipfire/langs/en.pl
+var/ipfire/langs/es.pl
+var/ipfire/langs/fr.pl
+var/ipfire/langs/pl.pl
+usr/local/bin/ipsecctrl
+usr/local/bin/vpn-watch
--- /dev/null
+../../../common/gcc
\ No newline at end of file
--- /dev/null
+../../../common/glibc
\ No newline at end of file
--- /dev/null
+../../../common/gmp
\ No newline at end of file
--- /dev/null
+../../../common/strongswan
\ No newline at end of file
--- /dev/null
+../../../common/usb_modeswitch
\ No newline at end of file
--- /dev/null
+../../../common/usb_modeswitch_data
\ No newline at end of file
--- /dev/null
+#!/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 3 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) 2011 IPFire-Team <info@ipfire.org>. #
+# #
+############################################################################
+#
+. /opt/pakfire/lib/functions.sh
+/usr/local/bin/backupctrl exclude >/dev/null 2>&1
+
+#
+# Remove old core updates from pakfire cache to save space...
+core=52
+for (( i=1; i<=$core; i++ ))
+do
+ rm -f /var/cache/pakfire/core-upgrade-*-$i.ipfire
+done
+
+#
+#Stop services
+
+/etc/init.d/ipsec stop
+
+#
+# Remove old strongswan libs
+rm -rf /usr/lib/libcharon.so
+rm -rf /usr/lib/libcharon.so.0
+rm -rf /usr/lib/libcharon.so.0.0.0
+rm -rf /usr/lib/libhydra.so
+rm -rf /usr/lib/libhydra.so.0
+rm -rf /usr/lib/libhydra.so.0.0.0
+rm -rf /usr/lib/libstrongswan.so
+rm -rf /usr/lib/libstrongswan.so.0
+rm -rf /usr/lib/libstrongswan.so.0.0.0
+rm -rf /usr/libexec/ipsec/plugins
+
+# Remove old usb_modeswitch_data
+rm -rf /etc/usb_modeswitch.d
+
+#
+#Extract files
+extract_files
+
+#
+#Start services
+
+if [ `grep "ENABLED=on" /var/ipfire/vpn/settings` ]; then
+ /etc/init.d/ipsec start
+fi
+
+#
+#Update Language cache
+perl -e "require '/var/ipfire/lang.pl'; &Lang::BuildCacheLang"
+
+#Rebuild module dep's
+#depmod 2.6.32.45-ipfire >/dev/null 2>&1
+#depmod 2.6.32.45-ipfire-pae >/dev/null 2>&1
+#depmod 2.6.32.45-ipfire-xen >/dev/null 2>&1
+
+## Change version of Pakfire.conf
+##
+#OLDVERSION=`grep "version = " /opt/pakfire/etc/pakfire.conf | cut -d'"' -f2`
+#NEWVERSION="2.9"
+#sed -i "s|$OLDVERSION|$NEWVERSION|g" /opt/pakfire/etc/pakfire.conf
+##
+## After pakfire has ended run it again and update the lists and do upgrade
+##
+#echo '#!/bin/bash' > /tmp/pak_update
+#echo 'while [ "$(ps -A | grep " update.sh")" != "" ]; do' >> /tmp/pak_update
+#echo ' sleep 1' >> /tmp/pak_update
+#echo 'done' >> /tmp/pak_update
+#echo 'while [ "$(ps -A | grep " pakfire")" != "" ]; do' >> /tmp/pak_update
+#echo ' sleep 1' >> /tmp/pak_update
+#echo 'done' >> /tmp/pak_update
+#echo '/opt/pakfire/pakfire update -y --force' >> /tmp/pak_update
+#echo '/opt/pakfire/pakfire upgrade -y' >> /tmp/pak_update
+#echo '/opt/pakfire/pakfire upgrade -y' >> /tmp/pak_update
+#echo '/opt/pakfire/pakfire upgrade -y' >> /tmp/pak_update
+#echo '/usr/bin/logger -p syslog.emerg -t core-upgrade-44 "Upgrade finished. If you use a customized grub.cfg"' >> /tmp/pak_update
+#echo '/usr/bin/logger -p syslog.emerg -t core-upgrade-44 "Check it before reboot !!!"' >> /tmp/pak_update
+#echo '/usr/bin/logger -p syslog.emerg -t core-upgrade-44 " *** Please reboot... *** "' >> /tmp/pak_update
+#echo 'touch /var/run/need_reboot ' >> /tmp/pak_update
+#
+#chmod +x /tmp/pak_update
+#/tmp/pak_update &
+#echo
+#echo Please wait until pakfire has ended...
+#echo
+
+#
+#Finish
+/etc/init.d/fireinfo start
+sendprofile
+#Don't report the exitcode last command
+exit 0
+++ /dev/null
-#usr/include/satsolver
-#usr/include/satsolver/bitmap.h
-#usr/include/satsolver/chksum.h
-#usr/include/satsolver/dirpool.h
-#usr/include/satsolver/evr.h
-#usr/include/satsolver/hash.h
-#usr/include/satsolver/knownid.h
-#usr/include/satsolver/md5.h
-#usr/include/satsolver/policy.h
-#usr/include/satsolver/pool.h
-#usr/include/satsolver/pool_fileconflicts.h
-#usr/include/satsolver/poolarch.h
-#usr/include/satsolver/poolid.h
-#usr/include/satsolver/pooltypes.h
-#usr/include/satsolver/poolvendor.h
-#usr/include/satsolver/problems.h
-#usr/include/satsolver/queue.h
-#usr/include/satsolver/repo.h
-#usr/include/satsolver/repo_content.h
-#usr/include/satsolver/repo_deb.h
-#usr/include/satsolver/repo_deltainfoxml.h
-#usr/include/satsolver/repo_helix.h
-#usr/include/satsolver/repo_products.h
-#usr/include/satsolver/repo_releasefile_products.h
-#usr/include/satsolver/repo_repomdxml.h
-#usr/include/satsolver/repo_rpmdb.h
-#usr/include/satsolver/repo_rpmmd.h
-#usr/include/satsolver/repo_solv.h
-#usr/include/satsolver/repo_susetags.h
-#usr/include/satsolver/repo_updateinfoxml.h
-#usr/include/satsolver/repo_write.h
-#usr/include/satsolver/repo_zyppdb.h
-#usr/include/satsolver/repodata.h
-#usr/include/satsolver/repopage.h
-#usr/include/satsolver/rules.h
-#usr/include/satsolver/sat_xfopen.h
-#usr/include/satsolver/satversion.h
-#usr/include/satsolver/sha1.h
-#usr/include/satsolver/sha2.h
-#usr/include/satsolver/solvable.h
-#usr/include/satsolver/solver.h
-#usr/include/satsolver/solverdebug.h
-#usr/include/satsolver/strpool.h
-#usr/include/satsolver/tools_util.h
-#usr/include/satsolver/transaction.h
-#usr/include/satsolver/util.h
-usr/lib/libsatsolver.so
-usr/lib/libsatsolver.so.0
-usr/lib/libsatsolver.so.0.16
-usr/lib/libsatsolverext.so
-usr/lib/libsatsolverext.so.0
-usr/lib/libsatsolverext.so.0.16
--- /dev/null
+#usr/include/solv
+#usr/include/solv/bitmap.h
+#usr/include/solv/chksum.h
+#usr/include/solv/dirpool.h
+#usr/include/solv/evr.h
+#usr/include/solv/hash.h
+#usr/include/solv/knownid.h
+#usr/include/solv/policy.h
+#usr/include/solv/pool.h
+#usr/include/solv/pool_fileconflicts.h
+#usr/include/solv/poolarch.h
+#usr/include/solv/poolid.h
+#usr/include/solv/pooltypes.h
+#usr/include/solv/poolvendor.h
+#usr/include/solv/problems.h
+#usr/include/solv/queue.h
+#usr/include/solv/repo.h
+#usr/include/solv/repo_content.h
+#usr/include/solv/repo_deb.h
+#usr/include/solv/repo_deltainfoxml.h
+#usr/include/solv/repo_helix.h
+#usr/include/solv/repo_products.h
+#usr/include/solv/repo_releasefile_products.h
+#usr/include/solv/repo_repomdxml.h
+#usr/include/solv/repo_rpmdb.h
+#usr/include/solv/repo_rpmmd.h
+#usr/include/solv/repo_solv.h
+#usr/include/solv/repo_susetags.h
+#usr/include/solv/repo_updateinfoxml.h
+#usr/include/solv/repo_write.h
+#usr/include/solv/repo_zyppdb.h
+#usr/include/solv/repodata.h
+#usr/include/solv/repopage.h
+#usr/include/solv/rules.h
+#usr/include/solv/solv_xfopen.h
+#usr/include/solv/solvable.h
+#usr/include/solv/solver.h
+#usr/include/solv/solverdebug.h
+#usr/include/solv/solvversion.h
+#usr/include/solv/strpool.h
+#usr/include/solv/tools_util.h
+#usr/include/solv/transaction.h
+#usr/include/solv/util.h
+usr/lib/libsolv.so
+usr/lib/libsolv.so.0
+usr/lib/libsolvext.so
+usr/lib/libsolvext.so.0
+++ /dev/null
-usr/lib/python2.7/site-packages/_satsolver.so
-usr/lib/python2.7/site-packages/satsolver.py
#etc/qemu
etc/qemu/target-x86_64.conf
usr/bin/qemu
+usr/bin/qemu-ga
usr/bin/qemu-i386
usr/bin/qemu-img
usr/bin/qemu-io
usr/bin/qemu-nbd
+usr/bin/qemu-system-arm
#usr/share/doc/qemu
#usr/share/doc/qemu/qemu-doc.html
#usr/share/doc/qemu/qemu-tech.html
usr/share/qemu
usr/share/qemu/bamboo.dtb
usr/share/qemu/bios.bin
-usr/share/qemu/gpxe-eepro100-80861209.rom
+usr/share/qemu/extboot.bin
usr/share/qemu/keymaps
usr/share/qemu/keymaps/ar
usr/share/qemu/keymaps/common
usr/share/qemu/keymaps/th
usr/share/qemu/keymaps/tr
usr/share/qemu/linuxboot.bin
+usr/share/qemu/mpc8544ds.dtb
usr/share/qemu/multiboot.bin
usr/share/qemu/openbios-ppc
usr/share/qemu/openbios-sparc32
usr/share/qemu/openbios-sparc64
+usr/share/qemu/petalogix-ml605.dtb
usr/share/qemu/petalogix-s3adsp1800.dtb
usr/share/qemu/ppc_rom.bin
-usr/share/qemu/pxe-e1000.bin
-usr/share/qemu/pxe-ne2k_pci.bin
-usr/share/qemu/pxe-pcnet.bin
-usr/share/qemu/pxe-rtl8139.bin
-usr/share/qemu/pxe-virtio.bin
+usr/share/qemu/pxe-e1000.rom
+usr/share/qemu/pxe-eepro100.rom
+usr/share/qemu/pxe-ne2k_pci.rom
+usr/share/qemu/pxe-pcnet.rom
+usr/share/qemu/pxe-rtl8139.rom
+usr/share/qemu/pxe-virtio.rom
usr/share/qemu/s390-zipl.rom
+usr/share/qemu/slof.bin
+usr/share/qemu/spapr-rtas.bin
+usr/share/qemu/vapic.bin
usr/share/qemu/vgabios-cirrus.bin
usr/share/qemu/vgabios-qxl.bin
usr/share/qemu/vgabios-stdvga.bin
WARNING: translation string unused: expected
WARNING: translation string unused: exportkey
WARNING: translation string unused: external access rule changed
+WARNING: translation string unused: extrahd unable to read
+WARNING: translation string unused: extrahd unable to write
WARNING: translation string unused: filename
WARNING: translation string unused: firewall graphs
WARNING: translation string unused: firewall log viewer
WARNING: translation string unused: ovpnstatus log
WARNING: translation string unused: ovpnsys log
WARNING: translation string unused: package failed to install
+WARNING: translation string unused: pakfire core update auto
WARNING: translation string unused: pakfire updates
WARNING: translation string unused: password contains illegal characters
WARNING: translation string unused: password crypting key
WARNING: untranslated string: new
WARNING: untranslated string: outgoing firewall reserved groupname
WARNING: untranslated string: qos add subclass
+WARNING: untranslated string: route config changed
+WARNING: untranslated string: routing config added
+WARNING: untranslated string: routing config changed
+WARNING: untranslated string: routing table
WARNING: translation string unused: expected
WARNING: translation string unused: exportkey
WARNING: translation string unused: external access rule changed
+WARNING: translation string unused: extrahd unable to read
+WARNING: translation string unused: extrahd unable to write
WARNING: translation string unused: filename
WARNING: translation string unused: firewall graphs
WARNING: translation string unused: firewall log viewer
WARNING: translation string unused: ovpnstatus log
WARNING: translation string unused: ovpnsys log
WARNING: translation string unused: package failed to install
+WARNING: translation string unused: pakfire core update auto
WARNING: translation string unused: pakfire updates
WARNING: translation string unused: password contains illegal characters
WARNING: translation string unused: password crypting key
WARNING: untranslated string: bytes
WARNING: untranslated string: new
WARNING: untranslated string: outgoing firewall reserved groupname
+WARNING: untranslated string: route config changed
+WARNING: untranslated string: routing config added
+WARNING: untranslated string: routing config changed
+WARNING: untranslated string: routing table
WARNING: translation string unused: expected
WARNING: translation string unused: exportkey
WARNING: translation string unused: external access rule changed
+WARNING: translation string unused: extrahd unable to read
+WARNING: translation string unused: extrahd unable to write
WARNING: translation string unused: filename
WARNING: translation string unused: firewall graphs
WARNING: translation string unused: firewall log viewer
WARNING: translation string unused: ovpnstatus log
WARNING: translation string unused: ovpnsys log
WARNING: translation string unused: package failed to install
+WARNING: translation string unused: pakfire core update auto
WARNING: translation string unused: pakfire updates
WARNING: translation string unused: password contains illegal characters
WARNING: translation string unused: password crypting key
WARNING: untranslated string: outgoing firewall reserved groupname
WARNING: untranslated string: outgoing firewall view group
WARNING: untranslated string: pakfire ago
+WARNING: untranslated string: route config changed
+WARNING: untranslated string: routing config added
+WARNING: untranslated string: routing config changed
+WARNING: untranslated string: routing table
+WARNING: untranslated string: static routes
WARNING: untranslated string: system information
+WARNING: untranslated string: vpn keyexchange
WARNING: translation string unused: expected
WARNING: translation string unused: exportkey
WARNING: translation string unused: external access rule changed
-WARNING: translation string unused: extrahd founded drives
+WARNING: translation string unused: extrahd unable to read
+WARNING: translation string unused: extrahd unable to write
WARNING: translation string unused: filename
WARNING: translation string unused: firewall graphs
WARNING: translation string unused: firewall log viewer
WARNING: translation string unused: ovpnstatus log
WARNING: translation string unused: ovpnsys log
WARNING: translation string unused: package failed to install
+WARNING: translation string unused: pakfire core update auto
WARNING: translation string unused: pakfire updates
WARNING: translation string unused: password contains illegal characters
WARNING: translation string unused: password crypting key
WARNING: untranslated string: Scan for Songs
WARNING: untranslated string: bytes
WARNING: untranslated string: dns address deleted txt
-WARNING: untranslated string: extrahd detected drives
WARNING: untranslated string: fireinfo ipfire version
WARNING: untranslated string: fireinfo is disabled
WARNING: untranslated string: fireinfo is enabled
WARNING: untranslated string: ntp sync
WARNING: untranslated string: outgoing firewall reserved groupname
WARNING: untranslated string: pakfire ago
+WARNING: untranslated string: route config changed
+WARNING: untranslated string: routing config added
+WARNING: untranslated string: routing config changed
+WARNING: untranslated string: routing table
WARNING: untranslated string: snort working
+WARNING: untranslated string: static routes
WARNING: untranslated string: system information
WARNING: untranslated string: upload new ruleset
WARNING: untranslated string: urlfilter file ext block
WARNING: untranslated string: urlfilter mode block
+WARNING: untranslated string: vpn keyexchange
WARNING: untranslated string: wlanap access point
WARNING: untranslated string: wlanap channel
WARNING: untranslated string: wlanap debugging
WARNING: translation string unused: expected
WARNING: translation string unused: exportkey
WARNING: translation string unused: external access rule changed
+WARNING: translation string unused: extrahd unable to read
+WARNING: translation string unused: extrahd unable to write
WARNING: translation string unused: filename
WARNING: translation string unused: firewall graphs
WARNING: translation string unused: firewall log viewer
WARNING: translation string unused: ovpnstatus log
WARNING: translation string unused: ovpnsys log
WARNING: translation string unused: package failed to install
+WARNING: translation string unused: pakfire core update auto
WARNING: translation string unused: pakfire updates
WARNING: translation string unused: password contains illegal characters
WARNING: translation string unused: password crypting key
WARNING: untranslated string: outgoing firewall reserved groupname
WARNING: untranslated string: outgoing firewall view group
WARNING: untranslated string: pakfire ago
+WARNING: untranslated string: route config changed
+WARNING: untranslated string: routing config added
+WARNING: untranslated string: routing config changed
+WARNING: untranslated string: routing table
+WARNING: untranslated string: static routes
WARNING: untranslated string: system information
+WARNING: untranslated string: vpn keyexchange
WARNING: translation string unused: ovpnstatus log
WARNING: translation string unused: ovpnsys log
WARNING: translation string unused: package failed to install
+WARNING: translation string unused: pakfire core update auto
WARNING: translation string unused: pakfire updates
WARNING: translation string unused: password contains illegal characters
WARNING: translation string unused: password crypting key
WARNING: translation string unused: weekly firewallhits
WARNING: translation string unused: xtaccess bad transfert
WARNING: translation string unused: yearly firewallhits
+WARNING: untranslated string: Add a route
+WARNING: untranslated string: Edit an existing route
WARNING: untranslated string: Scan for Songs
WARNING: untranslated string: bytes
+WARNING: untranslated string: extrahd because there is already a device mounted
+WARNING: untranslated string: extrahd cant umount
+WARNING: untranslated string: extrahd install or load driver
+WARNING: untranslated string: extrahd maybe the device is in use
+WARNING: untranslated string: extrahd to
+WARNING: untranslated string: extrahd to root
+WARNING: untranslated string: extrahd you cant mount
WARNING: untranslated string: minute
WARNING: untranslated string: new
WARNING: untranslated string: outgoing firewall reserved groupname
+WARNING: untranslated string: route config changed
+WARNING: untranslated string: routing config added
+WARNING: untranslated string: routing config changed
+WARNING: untranslated string: routing table
+WARNING: untranslated string: static routes
+WARNING: untranslated string: vpn keyexchange
# Checking cgi-bin translations for language: fr #
############################################################################
< dns address deleted txt
-< extrahd detected drives
< fireinfo ipfire version
< fireinfo is disabled
< fireinfo is enabled
< ntp common settings
< ntp sync
< snort working
+< static routes
< system information
< upload new ruleset
< urlfilter file ext block
< urlfilter mode block
+< vpn keyexchange
< wlanap access point
< wlanap channel
< wlanap debugging
< outgoing firewall p2p description 3
< outgoing firewall view group
< Set time on boot
+< static routes
< system information
+< vpn keyexchange
############################################################################
# Checking install/setup translations for language: pl #
############################################################################
############################################################################
# Checking cgi-bin translations for language: pl #
############################################################################
+< extrahd because there is already a device mounted
+< extrahd cant umount
+< extrahd install or load driver
+< extrahd maybe the device is in use
+< extrahd to
+< extrahd to root
+< extrahd unable to read
+< extrahd unable to write
+< extrahd you cant mount
< minute
+< static routes
+< vpn keyexchange
############################################################################
# Checking install/setup translations for language: ru #
############################################################################
############################################################################
# Checking cgi-bin translations for language: ru #
############################################################################
+< Add a route
+< Edit an existing route
+< extrahd because there is already a device mounted
+< extrahd cant umount
+< extrahd install or load driver
+< extrahd maybe the device is in use
+< extrahd to
+< extrahd to root
+< extrahd unable to read
+< extrahd unable to write
+< extrahd you cant mount
< minute
+< static routes
+< vpn keyexchange
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2010 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2011 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
@deviceline = split( /\;/, $deviceentry );
if ( "$extrahdsettings{'PATH'}" eq "$deviceline[2]" ) {
$ok = "false";
- $errormessage = "You can't mount $extrahdsettings{'DEVICE'} to $extrahdsettings{'PATH'}, because there is already a device mounted.";
+ $errormessage = "$Lang::tr{'extrahd you cant mount'} $extrahdsettings{'DEVICE'} $Lang::tr{'extrahd to'} $extrahdsettings{'PATH'}$Lang::tr{'extrahd because there is already a device mounted'}.";
}
if ( "$extrahdsettings{'PATH'}" eq "/" ) {
$ok = "false";
- $errormessage = "You can't mount $extrahdsettings{'DEVICE'} to root /.";
+ $errormessage = "$Lang::tr{'extrahd you cant mount'} $extrahdsettings{'DEVICE'} $Lang::tr{'extrahd to root'}.";
}
}
}
close FILE;
} else {
- $errormessage = "Can't umount $extrahdsettings{'PATH'}. Maybe the device is in use?";
+ $errormessage = "$Lang::tr{'extrahd cant umount'} $extrahdsettings{'PATH'}$Lang::tr{'extrahd maybe the device is in use'}?";
}
}
$color=$Header::colourgreen;
}
print <<END
- <tr><td colspan="5">
- <tr><td align='center'><font color=$color><b>$deviceline[0]</b></font>
- <td align='center'>$deviceline[1]
- <td align='center'>$deviceline[2]
+ <tr><td colspan="4"> </td></tr>
+ <tr><td align='left'><font color=$color><b>$deviceline[0]</b></font></td>
+ <td align='left'>$deviceline[1]</td>
+ <td align='left'>$deviceline[2]</td>
<td align='center'>
<form method='post' action='$ENV{'SCRIPT_NAME'}'>
<input type='hidden' name='DEVICE' value='$deviceline[0]' />
<input type='hidden' name='PATH' value='$deviceline[2]' />
<input type='hidden' name='ACTION' value=$Lang::tr{'delete'} />
<input type='image' alt=$Lang::tr{'delete'} src='/images/delete.gif' />
- </form>
+ </form></td></tr>
END
;
}
foreach $scanentry (sort @scans)
{
@scanline = split( /\;/, $scanentry );
- print <<END
- <tr><td colspan="5">
- <tr><td align='left' colspan="2"><b>/dev/$scanline[0]</b>
- <td align='center' colspan="2">$scanline[1]
+ # remove wrong entries like usb controller name
+ if ($scanline[1] ne "\n")
+ {
+ print <<END
+ <tr><td colspan="5"> </td></tr>
+ <tr><td align='left' colspan="2"><b>/dev/$scanline[0]</b></td>
+ <td align='center' colspan="2">$scanline[1]</td>
END
;
+
+ }
foreach $partitionentry (sort @partitions)
{
@partitionline = split( /\;/, $partitionentry );
if ( "$partitionline[0]" eq "$scanline[0]" ) {
$size = int($partitionline[1] / 1024);
print <<END
- <td align='center'>$Lang::tr{'size'} $size MB
- <td>
- <tr><td colspan="5">
+ <td align='center'>$Lang::tr{'size'} $size MB</td>
+ <td> </td></tr>
+ <tr><td colspan="5"> </td></tr>
END
;
}
$size = int($partitionline[1] / 1024);
print <<END
<form method='post' action='$ENV{'SCRIPT_NAME'}'>
- <tr><td align="left" colspan=5><b>UUID=$partitionline[2]</b></td></tr>
+ <tr><td align="left" colspan=5><strong>UUID=$partitionline[2]</strong></td></tr>
<tr>
<td align="list">/dev/$partitionline[0]</td>
- <td align="center">$Lang::tr{'size'} $size MB
+ <td align="center">$Lang::tr{'size'} $size MB</td>
<td align="center"><select name="FS">
<option value="auto">auto</option>
<option value="ext3">ext3</option>
+ <option value="ext4">ext4</option>
<option value="reiserfs">reiserfs</option>
<option value="vfat">fat</option>
<option value="ntfs-3g">ntfs (experimental)</option>
- </select>
- <td align="center"><input type='text' name='PATH' value=/mnt/harddisk />
+ </select></td>
+ <td align="center"><input type='text' name='PATH' value=/mnt/harddisk /></td>
<td align="center">
<input type='hidden' name='DEVICE' value='$partitionline[0]' />
<input type='hidden' name='UUID' value='$partitionline[2]' />
<input type='hidden' name='ACTION' value=$Lang::tr{'add'} />
<input type='image' alt=$Lang::tr{'add'} src='/images/add.gif' />
- </form>
+ </form></td></tr>
+END
+;
END
;
}
print <<END
- <tr><td align="center" colspan="5">If your device isn't listed here, you need to install or load the driver.<br />If you can see your device but no partitions you have to create them first.
+ <tr><td align="center" colspan="5"> </td></tr>
+ <tr><td align="center" colspan="5"> </td></tr>
+ <tr><td align="center" colspan="5">$Lang::tr{'extrahd install or load driver'}</td></tr>
</table>
END
;
$active = "<table cellpadding='2' cellspacing='0' bgcolor='${Header::colourblue}' width='100%'><tr><td align='center'><b><font color='#FFFFFF'>$Lang::tr{'capsclosed'}</font></b></td></tr></table>";
} else {
foreach my $line (@status) {
- if ($line =~ /\"$confighash{$key}[1]\".*IPsec SA established/) {
+ if (($line =~ /\"$confighash{$key}[1]\".*IPsec SA established/) ||
+ ($line =~/$confighash{$key}[1]\{.*INSTALLED/ ))
+ {
$active = "<table cellpadding='2' cellspacing='0' bgcolor='${Header::colourgreen}' width='100%'><tr><td align='center'><b><font color='#FFFFFF'>$Lang::tr{'capsopen'}</font></b></td></tr></table>";
}
}
if ( -e "$configpath/macgroups/$outgrpsettings{'ipgroup'}" ){
$errormessage = "$Lang::tr{'outgoing firewall group error'}";
+ } elsif ( $outgrpsettings{'ipgroup'} =~ /\W/ ){
+ $errormessage = $Lang::tr{'name must only contain characters'}." - ".$outgrpsettings{'ipgroup'};
} elsif ( $outgrpsettings{'ipgroup'} eq "all" || $outgrpsettings{'ipgroup'} eq "red" || $outgrpsettings{'ipgroup'} eq "blue" ||
$outgrpsettings{'ipgroup'} eq "green" || $outgrpsettings{'ipgroup'} eq "orange" || $outgrpsettings{'ipgroup'} eq "ip" ||
$outgrpsettings{'ipgroup'} eq "mac" || $outgrpsettings{'ipgroup'} eq "ovpn" || $outgrpsettings{'ipgroup'} eq "ipsec" ) {
if ( -e "$configpath/ipgroups/$outgrpsettings{'macgroup'}" ){
$errormessage = "$Lang::tr{'outgoing firewall group error'}";
+ } elsif ( $outgrpsettings{'macgroup'} =~ /\W/ ){
+ $errormessage = $Lang::tr{'name must only contain characters'}." - ".$outgrpsettings{'macgroup'};
} elsif ( $outgrpsettings{'macgroup'} eq "all" || $outgrpsettings{'macgroup'} eq "red" || $outgrpsettings{'macgroup'} eq "blue" ||
$outgrpsettings{'macgroup'} eq "green" || $outgrpsettings{'macgroup'} eq "orange" || $outgrpsettings{'macgroup'} eq "ip" ||
$outgrpsettings{'macgroup'} eq "mac" || $outgrpsettings{'macgroup'} eq "ovpn" || $outgrpsettings{'macgroup'} eq "ipsec" ) {
$pakfiresettings{'INSPAKS'} = '';
$pakfiresettings{'DELPAKS'} = '';
$pakfiresettings{'AUTOUPDATE'} = 'off';
-$pakfiresettings{'AUTOUPGRADE'} = 'off';
$pakfiresettings{'HEALTHCHECK'} = 'on';
$pakfiresettings{'UUID'} = 'on';
system("/usr/local/bin/pakfire disable updates >/dev/null 2>&1");
}
- if ($pakfiresettings{'AUTOUPGRADE'} eq 'on') {
- system("/usr/local/bin/pakfire enable upgrades >/dev/null 2>&1");
- } else {
- system("/usr/local/bin/pakfire disable upgrades >/dev/null 2>&1");
- }
-
&General::writehash("${General::swroot}/pakfire/settings", \%pakfiresettings);
}
$checked{'AUTOUPDATE'}{'off'} = '';
$checked{'AUTOUPDATE'}{'on'} = '';
$checked{'AUTOUPDATE'}{$pakfiresettings{'AUTOUPDATE'}} = "checked='checked'";
-$checked{'AUTOUPGRADE'}{'off'} = '';
-$checked{'AUTOUPGRADE'}{'on'} = '';
-$checked{'AUTOUPGRADE'}{$pakfiresettings{'AUTOUPGRADE'}} = "checked='checked'";
$checked{'HEALTHCHECK'}{'off'} = '';
$checked{'HEALTHCHECK'}{'on'} = '';
$checked{'HEALTHCHECK'}{$pakfiresettings{'HEALTHCHECK'}} = "checked='checked'";
<tr><td align='left' width='45%'>$Lang::tr{'pakfire update daily'}</td><td width="55%" align="left">
on <input type='radio' name='AUTOUPDATE' value='on' $checked{'AUTOUPDATE'}{'on'} /> |
<input type='radio' name='AUTOUPDATE' value='off' $checked{'AUTOUPDATE'}{'off'} /> off </td></tr>
- <tr><td align='left' width='45%'>$Lang::tr{'pakfire core update auto'}</td><td align="left">
- on <input type='radio' name='AUTOUPGRADE' value='on' $checked{'AUTOUPGRADE'}{'on'} /> |
- <input type='radio' name='AUTOUPGRADE' value='off' $checked{'AUTOUPGRADE'}{'off'} /> off </td></tr>
<tr><td align='left' width='45%'>$Lang::tr{'pakfire health check'}</td><td align="left">
on <input type='radio' name='HEALTHCHECK' value='on' $checked{'HEALTHCHECK'}{'on'} /> |
<input type='radio' name='HEALTHCHECK' value='off' $checked{'HEALTHCHECK'}{'off'} /> off </td></tr>
--- /dev/null
+#!/usr/bin/perl
+###############################################################################
+# #
+# IPFire.org - A linux based firewall #
+# Copyright (C) 2007-2011 IPFire Team <info@ipfire.org> #
+# #
+# This program is free software: you can redistribute it and/or modify #
+# it under the terms of the GNU General Public License as published by #
+# the Free Software Foundation, either version 3 of the License, or #
+# (at your option) any later version. #
+# #
+# This program is distributed in the hope that it will be useful, #
+# but WITHOUT ANY WARRANTY; without even the implied warranty of #
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
+# GNU General Public License for more details. #
+# #
+# You should have received a copy of the GNU General Public License #
+# along with this program. If not, see <http://www.gnu.org/licenses/>. #
+# #
+###############################################################################
+
+use strict;
+
+# enable only the following on debugging purpose
+#use warnings;
+#use CGI::Carp 'fatalsToBrowser';
+
+require '/var/ipfire/general-functions.pl';
+require "${General::swroot}/lang.pl";
+require "${General::swroot}/header.pl";
+
+#workaround to suppress a warning when a variable is used only once
+my @dummy = ( ${Header::colouryellow} );
+undef (@dummy);
+
+# Files used
+my $setting = "${General::swroot}/main/settings";
+our $datafile = "${General::swroot}/main/routing"; #(our: used in subroutine)
+
+my %color = ();
+my %mainsettings = ();
+&General::readhash("${General::swroot}/main/settings", \%mainsettings);
+&General::readhash("/srv/web/ipfire/html/themes/".$mainsettings{'THEME'}."/include/colors.txt", \%color);
+
+our %settings = ();
+
+$settings{'EN'} = ''; # reuse for dummy field in position zero
+$settings{'IP'} = '';
+$settings{'GATEWAY'} = '';
+$settings{'REMARK'} = '';
+my @nosaved=('EN','IP','GATEWAY','REMARK'); # List here ALL setting2 fields. Mandatory
+
+$settings{'ACTION'} = ''; # add/edit/remove
+$settings{'KEY1'} = ''; # point record for ACTION
+
+#Define each field that can be used to sort columns
+my $sortstring='^IP|^GATEWAY|^REMARK';
+$settings{'SORT_GATEWAYLIST'} = 'GATEWAY';
+my $errormessage = '';
+my $warnmessage = '';
+
+&Header::showhttpheaders();
+
+#Get GUI values
+&Header::getcgihash(\%settings);
+
+###############
+# DEBUG DEBUG
+#&Header::openbox('100%', 'left', 'DEBUG');
+#my $debugCount = 0;
+#foreach my $line (sort keys %settings) {
+#print "$line = $settings{$line}<br />\n";
+# $debugCount++;
+#}
+#print " Count: $debugCount\n";
+#&Header::closebox();
+# DEBUG DEBUG
+###############
+
+# Load multiline data
+our @current = ();
+if (open(FILE, "$datafile")) {
+ @current = <FILE>;
+ close (FILE);
+}
+
+## Settings1 Box not used...
+&General::readhash("${General::swroot}/main/settings", \%settings);
+
+
+## Now manipulate the multi-line list with Settings2
+# Basic actions are:
+# toggle the check box
+# add/update a new line
+# begin editing a line
+# remove a line
+
+
+# Toggle enable/disable field. Field is in second position
+if ($settings{'ACTION'} eq $Lang::tr{'toggle enable disable'}) {
+ #move out new line
+ chomp(@current[$settings{'KEY1'}]);
+ my @temp = split(/\,/,@current[$settings{'KEY1'}]);
+
+ $temp[0] = $temp[0] ne '' ? '' : 'on'; # Toggle the field
+ @current[$settings{'KEY1'}] = join (',',@temp)."\n";
+ $settings{'KEY1'} = ''; # End edit mode
+
+ &General::log($Lang::tr{'routing config changed'});
+
+ #Save current
+ open(FILE, ">$datafile") or die 'routing datafile error';
+ print FILE @current;
+ close(FILE);
+
+ # Rebuild configuration file
+ &BuildConfiguration;
+}
+
+if ($settings{'ACTION'} eq $Lang::tr{'add'}) {
+
+# Validate inputs
+ if (( !&General::validip($settings{'IP'})) and ( !&General::validipandmask($settings{'IP'}))){
+ $errormessage = $Lang::tr{'invalid ip'}." / ".$Lang::tr{'invalid netmask'};
+ }
+
+ if ($settings{'IP'} =~ /0.0.0.0/){
+ $errormessage = $Lang::tr{'invalid ip'}." - 0.0.0.0";
+ }
+
+ if( !&General::validip($settings{'GATEWAY'}) ) {
+ $errormessage = $Lang::tr{'invalid ip'}. " - ".$Lang::tr{'gateway ip'};
+ }
+
+ unless ($errormessage) {
+ if ($settings{'KEY1'} eq '') { #add or edit ?
+ unshift (@current, "$settings{'EN'},$settings{'IP'},$settings{'GATEWAY'},$settings{'REMARK'}\n");
+ &General::log($Lang::tr{'routing config added'});
+ } else {
+ @current[$settings{'KEY1'}] = "$settings{'EN'},$settings{'IP'},$settings{'GATEWAY'},$settings{'REMARK'}\n";
+ $settings{'KEY1'} = ''; # End edit mode
+ &General::log($Lang::tr{'routing config changed'});
+ }
+
+ # Write changes to config file.
+ &SortDataFile; # sort newly added/modified entry
+ &BuildConfiguration; # then re-build routing
+
+ #map ($settings{$_}='' ,@nosaved); # Clear fields
+ }
+}
+
+if ($settings{'ACTION'} eq $Lang::tr{'edit'}) {
+ #move out new line
+ my $line = @current[$settings{'KEY1'}]; # KEY1 is the index in current
+ chomp($line);
+ my @temp = split(/\,/, $line);
+ $settings{'EN'}=$temp[0]; # Prepare the screen for editing
+ $settings{'IP'}=$temp[1];
+ $settings{'GATEWAY'}=$temp[2];
+ $settings{'REMARK'}=$temp[3];
+ &BuildConfiguration;
+}
+
+if ($settings{'ACTION'} eq $Lang::tr{'remove'}) {
+ splice (@current,$settings{'KEY1'},1); # Delete line
+ open(FILE, ">$datafile") or die 'route datafile error';
+ print FILE @current;
+ close(FILE);
+ $settings{'KEY1'} = ''; # End remove mode
+ &General::log($Lang::tr{'route config changed'});
+
+ &BuildConfiguration; # then re-build conf which use new data
+}
+
+## Check if sorting is asked
+# If same column clicked, reverse the sort.
+if ($ENV{'QUERY_STRING'} =~ /$sortstring/ ) {
+ my $newsort=$ENV{'QUERY_STRING'};
+ my $actual=$settings{'SORT_GATEWAYLIST'};
+ #Reverse actual sort ?
+ if ($actual =~ $newsort) {
+ my $Rev='';
+ if ($actual !~ 'Rev') {
+ $Rev='Rev';
+ }
+ $newsort.=$Rev;
+ }
+ $settings{'SORT_GATEWAYLIST'}=$newsort;
+ map (delete ($settings{$_}) ,(@nosaved,'ACTION','KEY1'));# Must never be saved
+ &General::writehash($setting, \%settings);
+ &SortDataFile;
+ $settings{'ACTION'} = 'SORT'; # Create an 'ACTION'
+ map ($settings{$_} = '' ,@nosaved,'KEY1'); # and reinit vars to empty
+}
+
+if ($settings{'ACTION'} eq '' ) { # First launch from GUI
+ # Place here default value when nothing is initialized
+ $settings{'EN'} = 'on';
+ $settings{'GATEWAY'} = '';
+ $settings{'IP'} = '';
+}
+
+&Header::openpage($Lang::tr{'routing table entries'}, 1, '');
+&Header::openbigbox('100%', 'left', '', $errormessage);
+my %checked=(); # Checkbox manipulations
+
+if ($errormessage) {
+ &Header::openbox('100%', 'left', $Lang::tr{'error messages'});
+ print "<font class='base'>$errormessage </font>";
+ &Header::closebox();
+}
+
+#
+
+$checked{'EN'}{'on'} = ($settings{'EN'} eq '' ) ? '' : "checked='checked'";
+
+my $buttontext = $Lang::tr{'add'};
+if ($settings{'KEY1'} ne '') {
+ $buttontext = $Lang::tr{'update'};
+ &Header::openbox('100%', 'left', $Lang::tr{'Edit an existing route'});
+} else {
+ &Header::openbox('100%', 'left', $Lang::tr{'Add a route'});
+}
+
+#Edited line number (KEY1) passed until cleared by 'save' or 'remove' or 'new sort order'
+print <<END
+<form method='post' action='$ENV{'SCRIPT_NAME'}'>
+<input type='hidden' name='KEY1' value='$settings{'KEY1'}' />
+<table width='100%'>
+<tr>
+ <td class='base'>$Lang::tr{'host ip'} / $Lang::tr{'network'}: </td>
+ <td><input type='text' name='IP' value='$settings{'IP'}' size='25'/></td>
+</tr><tr>
+ <td class='base'>$Lang::tr{'gateway'}: </td>
+ <td><input type='text' name='GATEWAY' value='$settings{'GATEWAY'}' size='25'/></td>
+ <td class='base'>$Lang::tr{'enabled'}</td>
+ <td><input type='checkbox' name='EN' $checked{'EN'}{'on'} /></td>
+</tr>
+</tr>
+ <td class='base'>$Lang::tr{'remark'}: </td>
+ <td><input type='text' name='REMARK' value='$settings{'REMARK'}' size='25'/></td>
+</tr>
+</table>
+<hr />
+<table width='100%'>
+<tr>
+ <td width='50%' align='center'><input type='hidden' name='ACTION' value='$Lang::tr{'add'}' /><input type='submit' name='SUBMIT' value='$buttontext' /></td>
+</tr>
+</table>
+</form>
+END
+;
+&Header::closebox();
+
+&Header::openbox('100%', 'left', $Lang::tr{'routing table'});
+print <<END
+<hr />
+<table width='100%'>
+<tr>
+ <td width='30%' align='center'><a href='$ENV{'SCRIPT_NAME'}?IP'><b>$Lang::tr{'host ip'} / $Lang::tr{'network'}</b></a></td>
+ <td width='30%' align='center'><a href='$ENV{'SCRIPT_NAME'}?GATEWAY'><b>$Lang::tr{'gateway'}</b></a></td>
+ <td width='30%' align='center'><a href='$ENV{'SCRIPT_NAME'}?REMARK'><b>$Lang::tr{'remark'}</b></a></td>
+ <td width='10%' colspan='3' class='boldbase' align='center'><b>$Lang::tr{'action'}</b></td>
+</tr>
+END
+;
+
+#
+# Print each line of @current list
+#
+
+my $key = 0;
+foreach my $line (@current) {
+ chomp($line); # remove newline
+ my @temp=split(/\,/,$line);
+ $temp[2] ='' unless defined $temp[2]; # not always populated
+ $temp[3] ='' unless defined $temp[2]; # not always populated
+
+ #Choose icon for checkbox
+ my $gif = '';
+ my $gdesc = '';
+ if ($temp[0] ne '' ) {
+ $gif = 'on.gif';
+ $gdesc = $Lang::tr{'click to disable'};
+ } else {
+ $gif = 'off.gif';
+ $gdesc = $Lang::tr{'click to enable'};
+ }
+
+ #Colorize each line
+ if ($settings{'KEY1'} eq $key) {
+ print "<tr bgcolor='${Header::colouryellow}'>";
+ } elsif ($key % 2) {
+ print "<tr bgcolor='$color{'color22'}'>";
+ } else {
+ print "<tr bgcolor='$color{'color20'}'>";
+ }
+ print <<END
+<td align='center'>$temp[1]</td>
+<td align='center'>$temp[2]</td>
+<td align='center'>$temp[3]</td>
+<td align='center'>
+<form method='post' action='$ENV{'SCRIPT_NAME'}'>
+<input type='hidden' name='ACTION' value='$Lang::tr{'toggle enable disable'}' />
+<input type='image' name='$Lang::tr{'toggle enable disable'}' src='/images/$gif' alt='$gdesc' title='$gdesc' />
+<input type='hidden' name='KEY1' value='$key' />
+</form>
+</td>
+
+<td align='center'>
+<form method='post' action='$ENV{'SCRIPT_NAME'}'>
+<input type='hidden' name='ACTION' value='$Lang::tr{'edit'}' />
+<input type='image' name='$Lang::tr{'edit'}' src='/images/edit.gif' alt='$Lang::tr{'edit'}' title='$Lang::tr{'edit'}' />
+<input type='hidden' name='KEY1' value='$key' />
+</form>
+</td>
+
+<td align='center'>
+<form method='post' action='$ENV{'SCRIPT_NAME'}'>
+<input type='hidden' name='ACTION' value='$Lang::tr{'remove'}' />
+<input type='image' name='$Lang::tr{'remove'}' src='/images/delete.gif' alt='$Lang::tr{'remove'}' title='$Lang::tr{'remove'}' />
+<input type='hidden' name='KEY1' value='$key' />
+</form>
+</td>
+</tr>
+END
+;
+ $key++;
+}
+print "</table>";
+
+# If table contains entries, print 'Key to action icons'
+if ($key) {
+print <<END
+<table>
+<tr>
+ <td class='boldbase'> <b>$Lang::tr{'legend'}: </b></td>
+ <td><img src='/images/on.gif' alt='$Lang::tr{'click to disable'}' /></td>
+ <td class='base'>$Lang::tr{'click to disable'}</td>
+ <td> </td>
+ <td><img src='/images/off.gif' alt='$Lang::tr{'click to enable'}' /></td>
+ <td class='base'>$Lang::tr{'click to enable'}</td>
+ <td> </td>
+ <td><img src='/images/edit.gif' alt='$Lang::tr{'edit'}' /></td>
+ <td class='base'>$Lang::tr{'edit'}</td>
+ <td> </td>
+ <td><img src='/images/delete.gif' alt='$Lang::tr{'remove'}' /></td>
+ <td class='base'>$Lang::tr{'remove'}</td>
+</tr>
+</table>
+END
+;
+}
+
+&Header::closebox();
+
+my $output = `/sbin/ip route show table static`;
+$output = &Header::cleanhtml($output,"y");
+
+if ( $output != "" ) {
+ &Header::openbox('100%', 'left', $Lang::tr{'routing table entries'});
+ print "<pre>$output</pre>\n";
+ &Header::closebox();
+}
+
+&Header::closebigbox();
+&Header::closepage();
+
+## Ouf it's the end !
+
+# Sort the "current" array according to choices
+sub SortDataFile
+{
+ our %entries = ();
+
+ # Sort pair of record received in $a $b special vars.
+ # When IP is specified use numeric sort else alpha.
+ # If sortname ends with 'Rev', do reverse sort.
+ #
+ sub fixedleasesort {
+ my $qs=''; # The sort field specified minus 'Rev'
+ if (rindex ($settings{'SORT_GATEWAYLIST'},'Rev') != -1) {
+ $qs=substr ($settings{'SORT_GATEWAYLIST'},0,length($settings{'SORT_GATEWAYLIST'})-3);
+ if ($qs eq 'IP') {
+ my @a = split(/\./,$entries{$a}->{$qs});
+ my @b = split(/\./,$entries{$b}->{$qs});
+ ($b[0]<=>$a[0]) ||
+ ($b[1]<=>$a[1]) ||
+ ($b[2]<=>$a[2]) ||
+ ($b[3]<=>$a[3]);
+ } else {
+ $entries{$b}->{$qs} cmp $entries{$a}->{$qs};
+ }
+ } else { #not reverse
+ $qs=$settings{'SORT_GATEWAYLIST'};
+ if ($qs eq 'IP') {
+ my @a = split(/\./,$entries{$a}->{$qs});
+ my @b = split(/\./,$entries{$b}->{$qs});
+ ($a[0]<=>$b[0]) ||
+ ($a[1]<=>$b[1]) ||
+ ($a[2]<=>$b[2]) ||
+ ($a[3]<=>$b[3]);
+ } else {
+ $entries{$a}->{$qs} cmp $entries{$b}->{$qs};
+ }
+ }
+ }
+
+ #Use an associative array (%entries)
+ my $key = 0;
+ foreach my $line (@current) {
+ chomp( $line); #remove newline because can be on field 5 or 6 (addition of REMARK)
+ my @temp = ( '','','', '');
+ @temp = split (',',$line);
+
+ # Build a pair 'Field Name',value for each of the data dataline.
+ # Each SORTABLE field must have is pair.
+ # Other data fields (non sortable) can be grouped in one
+
+ my @record = ('KEY',$key++,'EN',$temp[0],'IP',$temp[1],'GATEWAY',$temp[2],'REMARK',$temp[3]);
+ my $record = {}; # create a reference to empty hash
+ %{$record} = @record; # populate that hash with @record
+ $entries{$record->{KEY}} = $record; # add this to a hash of hashes
+ }
+
+ open(FILE, ">$datafile") or die 'routing datafile error';
+
+ # Each field value is printed , with the newline ! Don't forget separator and order of them.
+ foreach my $entry (sort fixedleasesort keys %entries) {
+ print FILE "$entries{$entry}->{EN},$entries{$entry}->{IP},$entries{$entry}->{GATEWAY},$entries{$entry}->{REMARK}\n";
+ }
+
+ close(FILE);
+ # Reload sorted @current
+ open (FILE, "$datafile");
+ @current = <FILE>;
+ close (FILE);
+}
+
+#
+# Build the configuration file
+#
+sub BuildConfiguration {
+ system '/usr/local/bin/rebuildroutes';
+}
\ No newline at end of file
$cgiparams{'ROOTCERT_OU'} = '';
$cgiparams{'ROOTCERT_CITY'} = '';
$cgiparams{'ROOTCERT_STATE'} = '';
+$cgiparams{'RW_NET'} = '';
&Header::getcgihash(\%cgiparams, {'wantfile' => 1, 'filevar' => 'FH'});
print CONF "\tpfsgroup=$lconfighash{$key}[23]\n";
}
- # IKE V1
- print CONF "\tkeyexchange=ikev1\n";
+ # IKE V1 or V2
+ if (! $lconfighash{$key}[29]) {
+ $lconfighash{$key}[29] = "ikev1";
+ }
+ print CONF "\tkeyexchange=$lconfighash{$key}[29]\n";
# Lifetimes
print CONF "\tikelifetime=$lconfighash{$key}[16]h\n" if ($lconfighash{$key}[16]);
# Automatically start only if a net-to-net connection
if ($lconfighash{$key}[3] eq 'host') {
print CONF "\tauto=add\n";
+ print CONF "\trightsourceip=$lvpnsettings{'RW_NET'}\n";
} else {
print CONF "\tauto=start\n";
}
goto SAVE_ERROR;
}
+ if ( $cgiparams{'RW_NET'} ne '' and !&General::validipandmask($cgiparams{'RW_NET'}) ) {
+ $errormessage = $Lang::tr{'urlfilter invalid ip or mask error'};
+ goto SAVE_ERROR;
+ }
+
map ($vpnsettings{$_} = $cgiparams{$_},
('ENABLED','DBG_CRYPT','DBG_PARSING','DBG_EMITTING','DBG_CONTROL',
'DBG_DNS'));
$vpnsettings{'VPN_DELAYED_START'} = $cgiparams{'VPN_DELAYED_START'};
$vpnsettings{'VPN_OVERRIDE_MTU'} = $cgiparams{'VPN_OVERRIDE_MTU'};
$vpnsettings{'VPN_WATCH'} = $cgiparams{'VPN_WATCH'};
+ $vpnsettings{'RW_NET'} = $cgiparams{'RW_NET'};
&General::writehash("${General::swroot}/vpn/settings", \%vpnsettings);
&writeipsecfiles();
if (&vpnenabled) {
$cgiparams{'REMARK'} = $confighash{$cgiparams{'KEY'}}[25];
$cgiparams{'INTERFACE'} = $confighash{$cgiparams{'KEY'}}[26];
$cgiparams{'DPD_ACTION'} = $confighash{$cgiparams{'KEY'}}[27];
+ $cgiparams{'IKE_VERSION'} = $confighash{$cgiparams{'KEY'}}[29];
$cgiparams{'IKE_ENCRYPTION'} = $confighash{$cgiparams{'KEY'}}[18];
$cgiparams{'IKE_INTEGRITY'} = $confighash{$cgiparams{'KEY'}}[19];
$cgiparams{'IKE_GROUPTYPE'} = $confighash{$cgiparams{'KEY'}}[20];
$confighash{$key}[25] = $cgiparams{'REMARK'};
$confighash{$key}[26] = $cgiparams{'INTERFACE'};
$confighash{$key}[27] = $cgiparams{'DPD_ACTION'};
+ $confighash{$key}[29] = $cgiparams{'IKE_VERSION'};
#dont forget advanced value
$confighash{$key}[18] = $cgiparams{'IKE_ENCRYPTION'};
$cgiparams{'DPD_ACTION'} = 'restart';
}
+ # Default IKE Version to V1
+ if (! $cgiparams{'IKE_VERSION'}) {
+ $cgiparams{'IKE_VERSION'} = 'ikev1';
+ }
+
# Default is yes for 'pfs'
$cgiparams{'PFS'} = 'on';
$selected{'DPD_ACTION'}{'restart'} = '';
$selected{'DPD_ACTION'}{$cgiparams{'DPD_ACTION'}} = "selected='selected'";
+ $selected{'IKE_VERSION'}{'ikev1'} = '';
+ $selected{'IKE_VERSION'}{'ikev2'} = '';
+ $selected{'IKE_VERSION'}{$cgiparams{'IKE_VERSION'}} = "selected='selected'";
+
&Header::showhttpheaders();
&Header::openpage($Lang::tr{'vpn configuration main'}, 1, '');
&Header::openbigbox('100%', 'left', '', $errormessage);
<td><input type='text' name='REMOTE_ID' value='$cgiparams{'REMOTE_ID'}' /></td>
</tr><tr>
</tr><td><br /></td><tr>
+ <td>$Lang::tr{'vpn keyexchange'}:</td>
+ <td><select name='IKE_VERSION'>
+ <option value='ikev1' $selected{'IKE_VERSION'}{'ikev1'}>IKEv1</option>
+ <option value='ikev2' $selected{'IKE_VERSION'}{'ikev2'}>IKEv2</option>
+ </select></a>
+ </td>
<td>$Lang::tr{'dpd action'}:</td>
<td><select name='DPD_ACTION'>
<option value='clear' $selected{'DPD_ACTION'}{'clear'}>clear</option>
<td class='base' nowrap='nowrap'>$Lang::tr{'vpn delayed start'}: <img src='/blob.gif' alt='*' /><img src='/blob.gif' alt='*' /></td>
<td ><input type='text' name='VPN_DELAYED_START' value='$cgiparams{'VPN_DELAYED_START'}' /></td>
</tr>
+ <tr>
+ <td class='base' nowrap='nowrap'>$Lang::tr{'host to net vpn'}: <img src='/blob.gif' alt='*' /></td>
+ <td ><input type='text' name='RW_NET' value='$cgiparams{'RW_NET'}' /></td>
+ </tr>
</table>
<p>$Lang::tr{'vpn watch'}:<input type='checkbox' name='VPN_WATCH' $checked{'VPN_WATCH'} /></p>
<p>PLUTO DEBUG =
print "<tr bgcolor='$color{'color22'}'>\n";
}
print "<td align='center' nowrap='nowrap'>$confighash{$key}[1]</td>";
- print "<td align='center' nowrap='nowrap'>" . $Lang::tr{"$confighash{$key}[3]"} . " (" . $Lang::tr{"$confighash{$key}[4]"} . ")</td>";
+ print "<td align='center' nowrap='nowrap'>" . $Lang::tr{"$confighash{$key}[3]"} . " (" . $Lang::tr{"$confighash{$key}[4]"} . ") $confighash{$key}[29]</td>";
if ($confighash{$key}[2] eq '%auth-dn') {
print "<td align='left' nowrap='nowrap'>$confighash{$key}[9]</td>";
} elsif ($confighash{$key}[4] eq 'cert') {
# get real state
my $active = "<table cellpadding='2' cellspacing='0' bgcolor='${Header::colourred}' width='100%'><tr><td align='center'><b><font color='#FFFFFF'>$Lang::tr{'capsclosed'}</font></b></td></tr></table>";
foreach my $line (@status) {
- if ($line =~ /\"$confighash{$key}[1]\".*IPsec SA established/) {
+ if (($line =~ /\"$confighash{$key}[1]\".*IPsec SA established/) ||
+ ($line =~ /$confighash{$key}[1]\{.*INSTALLED/))
+ {
$active = "<table cellpadding='2' cellspacing='0' bgcolor='${Header::colourgreen}' width='100%'><tr><td align='center'><b><font color='#FFFFFF'>$Lang::tr{'capsopen'}</font></b></td></tr></table>";
}
}
'Add Level7 rule' => 'Level7-Regel hinzufügen',
'Add Port Rule' => 'Port Regel hinzufügen',
'Add Rule' => 'Regel hinzufügen',
+'Add a route' => 'Eine Route hinzufügen',
'Async logging enabled' => 'Aktiviere asynchrones schreiben des Syslogs',
'Choose Rule' => 'Wählen sie <u>eine</u> der untenstehenden Regeln aus.',
'Class' => 'Klasse',
'ConnSched time' => 'Zeit:',
'ConnSched up' => 'Hoch',
'ConnSched weekdays' => 'Wochentage:',
+'Edit an existing route' => 'Eine existierende Route editieren',
'Enter TOS' => 'Aktivieren oder deaktivieren sie die TOS-Bits <br /> und klicken Sie danach auf <i>Speichern</i>.',
'Existing Files' => 'Dateien in der Datenbank',
'HDD temperature' => 'HDD-Temperatur',
'external access rule removed' => ' Regel für externen Zugang entfernt; Starte Zugangskontroller neu',
'external aliases configuration' => 'Externe Alias-Konfiguration',
'extrahd' => 'ExtraHD',
+'extrahd because there is already a device mounted' => ' mounten, weil bereits ein Geräte gemountet ist',
+'extrahd cant umount' => 'Konnte',
'extrahd detected drives' => 'gefundene Laufwerke',
+'extrahd install or load driver' => 'Wenn Ihre Festplatte nicht angezeigt wird, müssen Sie zuerst den Treiber laden oder ggf. auch nach installieren. Wenn diese jedoch angezeigt wird, aber keine Partitionen zu sehen sind, müssen diese erst angelegt werden.',
+'extrahd maybe the device is in use' => 'nicht mounten. Vielleicht wird das Gerät bereits verwendet',
+'extrahd to' => 'nicht nach',
+'extrahd to root' => 'nicht nach root mounten',
+'extrahd unable to read' => 'Lesefehler von',
+'extrahd unable to write' => 'Schreibfehler von',
+'extrahd you cant mount' => 'Sie können',
'false classnumber' => 'Die Klassennummer passt nicht zum angegebenen Interface.',
'false max bandwith' => 'Maximalbandbreite ist ungültig.',
'false min bandwith' => 'Mindestbandbreite ist ungültig.',
'start ovpn server' => 'Starte OpenVPN Server',
'state or province' => 'Bundesstat oder Provinz',
'static ip' => 'Statisch IP',
+'static routes' => 'Statische Routen',
'status' => 'Status',
'status information' => 'Statusinformationen',
'status ovpn' => 'OpenVPN',
'vpn delayed start' => 'Verzögerung bevor VPN gestartet wird (Sekunden)',
'vpn delayed start help' => 'Falls notwendig, kann diese Verzögerung dazu verwendet werden, um Dynamic DNS Updates ordnungsgemäß anzuwenden. 60 ist ein gängiger Wert, wenn ROT (RED) eine dynamische IP Adresse ist.',
'vpn incompatible use of defaultroute' => 'Hostname=%defaultroute nicht zulässig',
+'vpn keyexchange' => 'Schlüsseltausch',
'vpn local id' => 'Lokale ID',
'vpn missing remote id' => 'Sie müssen einen korrekten Distinguished Name (DN) für diese Authentifikation eingeben.',
'vpn mtu invalid' => 'MTU muß ein numerischer Wert sein!',
'Add Level7 rule' => 'Add Level7 rule',
'Add Port Rule' => 'Add port rule',
'Add Rule' => 'Add rule',
+'Add a route' => 'Add a route',
'Async logging enabled' => 'Enable asynchronous writing of the syslog file',
'Choose Rule' => 'Choose <u>one</u> of the following rules.',
'Class' => 'Class',
'ConnSched time' => 'Time:',
'ConnSched up' => 'Up',
'ConnSched weekdays' => 'Days of the week:',
+'Edit an existing route' => 'Edit an existing route',
'Enter TOS' => 'Activate or deactivate TOS-bits <br /> and then press <i>Save</i>.',
'Existing Files' => 'Files in database',
'HDD temperature' => 'HDD temperature',
'external access rule removed' => ' External access rule removed; restarting access controller',
'external aliases configuration' => 'External aliases configuration',
'extrahd' => 'ExtraHD',
+'extrahd because there is already a device mounted' => ', because there is already a device mounted',
+'extrahd cant umount' => 'Can\'t umount',
'extrahd detected drives' => 'detected drives',
+'extrahd install or load driver' => 'If your device isn\'t listed here, you need to install or load the driver.<br />If you can see your device but no partitions you have to create them first.',
+'extrahd maybe the device is in use' => '. Maybe the device is in use',
+'extrahd to' => 'to',
+'extrahd to root' => 'to root',
+'extrahd unable to read' => 'Unable to read',
+'extrahd unable to write' => 'Unable to write',
+'extrahd you cant mount' => 'You can\'t mount',
'false classnumber' => 'The Class-Number does not match the interface.',
'false max bandwith' => 'Maximum bandwith is false.',
'false min bandwith' => 'Minimum bandwith is false.',
'start ovpn server' => 'Start OpenVPN Server',
'state or province' => 'State or Province',
'static ip' => 'Static IP',
+'static routes' => 'Static routes',
'status' => 'Status',
'status information' => 'Status information',
'status ovpn' => '4. OpenVPN Status / Configuration:',
'vpn delayed start' => 'Delay before launching VPN (seconds)',
'vpn delayed start help' => 'If required, this delay can be used to allow dynamic DNS updates to propagate properly. 60 is a common value when RED is a dynamic IP.',
'vpn incompatible use of defaultroute' => 'hostname=%defaultroute not allowed',
+'vpn keyexchange' => 'Keyexchange',
'vpn local id' => 'Local ID',
'vpn missing remote id' => 'You must specify a correct Distinguished Name (DN) for this authentication.',
'vpn mtu invalid' => 'MTU must be a numeric value!',
'Add Level7 rule' => 'añadir regla de Nivel 7',
'Add Port Rule' => 'Añadir Regla de Puerto',
'Add Rule' => 'Añadir Regla',
+'Add a route' => 'Añadir una route',
'Choose Rule' => 'Seleccione <u>una</u> de las siguientes reglas.',
'Class' => 'Clase',
'Class was deleted' => 'con subclases potenciales fué eliminado',
'ConnSched time' => 'Tiempo:',
'ConnSched up' => 'Arriba',
'ConnSched weekdays' => 'DÃas de las semana:',
+'Edit an existing route' => 'Editar una route existente',
'Enter TOS' => 'Activar o desactivar bits TOS<br /> y después presione <i>Guardar</i>',
'Existing Files' => 'Archivos en la base de datos',
'HDD temperature' => 'Temperatura de HDD',
'external access rule removed' => '"Reglas de acceso externo eliminadas; reiniciando controlador de acceso"',
'external aliases configuration' => 'Configuración de Alias externo',
'extrahd' => 'Disco duro Adicional',
+'extrahd because there is already a device mounted' => ', because there is already a device mounted',
+'extrahd cant umount' => 'Can\'t umount',
'extrahd detected drives' => 'Unidades encontradas',
+'extrahd install or load driver' => 'If your device isn\'t listed here, you need to install or load the driver.<br />If you can see your device but no partitions you have to create them first.',
+'extrahd maybe the device is in use' => '. Maybe the device is in use',
+'extrahd to' => 'to',
+'extrahd to root' => 'to root',
+'extrahd unable to read' => 'Unable to read',
+'extrahd unable to write' => 'Unable to write',
+'extrahd you cant mount' => 'You can\'t mount',
'false classnumber' => 'El número de clase no coincide con la interfaz',
'false max bandwith' => 'El ancho de banda máximo es falso',
'false min bandwith' => 'El ancho de banda mÃnimo es falso',
'Add Level7 rule' => 'Ajouter une règle Level7',
'Add Port Rule' => 'Ajouter une règle de port',
'Add Rule' => 'Ajouter une règle',
+'Add a route' => 'Ajouter une route',
'Async logging enabled' => 'Activer l\'écriture asynchrone du fichier syslog',
'Choose Rule' => 'Choisissez <u>une</u> des règles suivantes.',
'Class' => 'Classe',
'ConnSched time' => 'Temps :',
'ConnSched up' => 'Actif',
'ConnSched weekdays' => 'Jours de la semaine :',
+'Edit an existing route' => 'Modifier une route existante',
'Enter TOS' => 'Activer ou désactiver TOS-Bits <br /> puis appuyez sur <i> Enregistrer </i>.',
'Existing Files' => 'Fichiers dans la base de donnée',
'HDD temperature' => 'Température Disque Dur',
'external access rule removed' => 'Règle d\'accès externe supprimée; redémarrage du controleur d\'accès',
'external aliases configuration' => 'Configuration des alias externes',
'extrahd' => 'ExtraHD',
-'extrahd founded drives' => 'Périphériques trouvés',
+'extrahd because there is already a device mounted' => ' car vous avez déjà un support de monté',
+'extrahd cant umount' => 'Impossible de démonter',
+'extrahd detected drives' => 'Périphériques trouvés',
+'extrahd install or load driver' => 'Si votre support n\'est pas visible ici, vous devez installer ou charger son pilote.<br />Si vous voyez votre support mais pas de partitions, vous devez tout d\'abord les créer.',
+'extrahd maybe the device is in use' => '. Votre support est peut-être en cours d\'utilisation',
+'extrahd to' => 'vers',
+'extrahd to root' => 'vers root',
+'extrahd unable to read' => 'Impossible de lire',
+'extrahd unable to write' => 'Impossible d\'écrire',
+'extrahd you cant mount' => 'Vous ne pouvez pas monter',
'false classnumber' => 'Le numéro de classe ne correspond pas à l\'interface.',
'false max bandwith' => 'La bande passante maximum est fausse.',
'false min bandwith' => 'La bande passante minimum est fausse.',
'Add Level7 rule' => 'Dodaj regułę L7',
'Add Port Rule' => 'Dodaj regułę portu',
'Add Rule' => 'Dodaj regułę',
+'Add a route' => 'Dodaj trase',
'Async logging enabled' => 'WÅ‚Ä…cz asynchroniczny zapis do pliku syslog',
'Choose Rule' => 'Wybierz <u>jedną</u> z poniższych reguł.',
'Class' => 'Klasa',
'ConnSched time' => 'Czas:',
'ConnSched up' => 'Wyżej',
'ConnSched weekdays' => 'Dni tygodnia:',
+'Edit an existing route' => 'Edytuj istniejaca trase',
'Enter TOS' => 'Aktywuj lub deaktywuj bity TOS <br /> a następnie kliknij <i>Zapisz</i>.',
'Existing Files' => 'Plików w bazie',
'HDD temperature' => 'Temperatura HDD',
include Config
-VER = 2.17
+VER = 2.18
THISAPP = binutils-$(VER)
DL_FILE = $(THISAPP).tar.bz2
# Normal build or /tools build.
#
ifeq "$(ROOT)" ""
-ifeq "$(LFS_PASS)" "install"
- TARGET = $(DIR_INFO)/$(THISAPP)-install
- EXTRA_CONFIG = --prefix=/opt/$(MACHINE)-uClibc \
- --build=$(MACHINE)-pc-linux-gnu \
- --host=$(MACHINE)-pc-linux-gnu \
- --target=$(MACHINE)-linux-uclibc \
- --disable-nls \
- --enable-multilib \
- --disable-werror
- EXTRA_MAKE = all
- EXTRA_INSTALL =
-else
TARGET = $(DIR_INFO)/$(THISAPP)
EXTRA_CONFIG = --prefix=/usr --enable-shared --disable-nls
EXTRA_MAKE = tooldir=/usr
EXTRA_INSTALL = tooldir=/usr
-endif
else
ifeq "$(PASS)" "1"
TARGET = $(DIR_INFO)/$(THISAPP)-tools1
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = e26e2e06b6e4bf3acf1dc8688a94c0d1
+$(DL_FILE)_MD5 = 9d22ee4dafa3a194457caf4706f9cf01
install : $(TARGET)
@$(PREBUILD)
@rm -rf $(DIR_APP) $(DIR_SRC)/binutils-build && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
@mkdir $(DIR_SRC)/binutils-build
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-configure-1.patch
cd $(DIR_SRC)/binutils-build && $(DIR_APP)/configure $(EXTRA_CONFIG)
ifeq "$(PASS)" "1"
cd $(DIR_SRC)/binutils-build && make configure-host
cd $(DIR_SRC)/binutils-build && make $(EXTRA_MAKE) $(MAKETUNING)
cd $(DIR_SRC)/binutils-build && make $(EXTRA_INSTALL) install
ifeq "$(ROOT)" ""
-ifneq "$(LFS_PASS)" "install"
cp -v $(DIR_APP)/include/libiberty.h /usr/include
-endif
else
ifeq "$(PASS)" "1"
cd $(DIR_SRC)/binutils-build && make -C ld clean
include Config
-VER = 3.1
+VER = 3.1.6
THISAPP = ccache-$(VER)
DL_FILE = $(THISAPP).tar.bz2
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 7961852e1e36f11559039c32142f58df
+$(DL_FILE)_MD5 = 343dc9b642e1d2af1e6bd8e474dde92e
install : $(TARGET)
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007 Michael Tremer & Christian Schmidt #
+# Copyright (C) 2007-2011 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
mv -v /tools/i686-pc-linux-gnu/bin/{ld,ld-old}
cp -v /tools/bin/{ld-new,ld}
ln -sv /tools/bin/ld /tools/i686-pc-linux-gnu/bin/ld
- gcc -dumpspecs > /tools/lib/gcc/i686-pc-linux-gnu/4.0.4/specs
- sed 's@^/lib/ld-linux.so.2@/tools&@g' /tools/lib/gcc/i686-pc-linux-gnu/4.0.4/specs > tempspecfile
- mv -vf tempspecfile /tools/lib/gcc/i686-pc-linux-gnu/4.0.4/specs
- find /tools/lib/gcc/i686-pc-linux-gnu/4.0.4/include/* -maxdepth 0 -xtype d -exec rm -rvf '{}' \;
- rm -vf `grep -l "DO NOT EDIT THIS FILE" /tools/lib/gcc/i686-pc-linux-gnu/4.0.4/include/*`
+ gcc -dumpspecs > /tools/lib/gcc/i686-pc-linux-gnu/4.1.2/specs
+ sed 's@^/lib/ld-linux.so.2@/tools&@g' /tools/lib/gcc/i686-pc-linux-gnu/4.1.2/specs > tempspecfile
+ mv -vf tempspecfile /tools/lib/gcc/i686-pc-linux-gnu/4.1.2/specs
+ find /tools/lib/gcc/i686-pc-linux-gnu/4.1.2/include/* -maxdepth 0 -xtype d -exec rm -rvf '{}' \;
+ rm -vf `grep -l "DO NOT EDIT THIS FILE" /tools/lib/gcc/i686-pc-linux-gnu/4.1.2/include/*`
endif
ifeq "$(PASS)" "2"
-strip --strip-debug /tools/lib/*
gcc -dumpspecs | \
perl -p -e 's@/tools/lib/ld-linux.so.2@/lib/ld-linux.so.2@g;' \
-e 's@\*startfile_prefix_spec:\n@$$_/usr/lib/ @g;' > \
- /tools/lib/gcc/i686-pc-linux-gnu/4.0.4/specs
+ /tools/lib/gcc/i686-pc-linux-gnu/4.1.2/specs
endif
@$(POSTBUILD)
endif
endif
-VER = 2.6.39-1-sn
+VER = 3.0-2
THISAPP = compat-wireless-$(VER)
DL_FILE = compat-wireless-$(VER).tar.bz2
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
asix-3.5.0a.tar.bz2 = $(DL_FROM)/asix-3.5.0a.tar.bz2
-$(DL_FILE)_MD5 = ac2b20607d75de8ce2b30b74995383a6
+$(DL_FILE)_MD5 = 7f2d0de30bf9c3e9a941d9e67971e9b3
asix-3.5.0a.tar.bz2_MD5=cc57513505d3ad1a43b58add91d2bba7
install : $(TARGET)
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007 Michael Tremer & Christian Schmidt #
+# Copyright (C) 2007-2011 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 4.0.4
+VER = 4.1.2
THISAPP = gcc-$(VER)
DL_FILE = $(THISAPP).tar.bz2
DIR_APP = $(DIR_SRC)/$(THISAPP)
CFLAGS =
CXXFLAGS =
-TARGET_PATH = /opt/$(MACHINE)-uClibc/bin:$(PATH)
# Normal build or /tools build.
#
ifeq "$(ROOT)" ""
-ifeq "$(INST)" "1"
- TARGET = $(DIR_INFO)/$(THISAPP)-install1
- EXTRA_CONFIG = --prefix=/opt/$(MACHINE)-uClibc \
- --build=$(MACHINE)-pc-linux-gnu \
- --host=$(MACHINE)-pc-linux-gnu \
- --target=$(MACHINE)-linux-uclibc \
- --enable-languages=c \
- --with-sysroot=$(DIR_SRC)/uClibc_dev \
- --disable-__cxa_atexit \
- --enable-target-optspace \
- --with-gnu-ld \
- --disable-shared \
- --enable-threads \
- --enable-multilib \
- --disable-nls
- EXTRA_MAKE =
- EXTRA_INSTALL =
-else
-ifeq "$(INST)" "2"
- TARGET = $(DIR_INFO)/$(THISAPP)-install2
- EXTRA_CONFIG = --prefix=/opt/$(MACHINE)-uClibc \
- --build=$(MACHINE)-pc-linux-gnu \
- --host=$(MACHINE)-pc-linux-gnu \
- --target=$(MACHINE)-linux-uclibc \
- --enable-languages=c,c++ \
- --with-sysroot=$(DIR_SRC)/uClibc_dev \
- --disable-__cxa_atexit \
- --enable-target-optspace \
- --with-gnu-ld \
- --enable-shared \
- --disable-nls \
- --enable-threads \
- --enable-multilib
- EXTRA_MAKE =
- EXTRA_INSTALL =
-else
TARGET = $(DIR_INFO)/$(THISAPP)
EXTRA_CONFIG = --prefix=/usr \
--libexecdir=/usr/lib \
--disable-nls
EXTRA_MAKE =
EXTRA_INSTALL =
-endif
-endif
else
ifeq "$(PASS)" "1"
TARGET = $(DIR_INFO)/$(THISAPP)-tools1
--disable-nls \
--enable-shared \
--enable-languages=c
- EXTRA_MAKE =
- #bootstrap BOOT_LDFLAGS="-static"
+ EXTRA_MAKE = bootstrap
+ # BOOT_LDFLAGS="-static"
EXTRA_INSTALL =
else
TARGET = $(DIR_INFO)/$(THISAPP)-tools2
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 8970debbc55bea85ee80961d733080f0
+$(DL_FILE)_MD5 = a4a3eb15c96030906d8494959eeda23c
install : $(TARGET)
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) $(DIR_SRC)/gcc-build && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-fix_linker_version_detection.patch
@mkdir $(DIR_SRC)/gcc-build
ifeq "$(ROOT)" ""
-ifeq "$(INST)" "1"
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc-uclibc-conf.patch
- cd $(DIR_SRC)/gcc-build && $(DIR_APP)/configure $(EXTRA_CONFIG)
- cd $(DIR_SRC)/gcc-build && PATH=$(TARGET_PATH) make $(MAKETUNING) all-gcc
- cd $(DIR_SRC)/gcc-build && PATH=$(TARGET_PATH) make install-gcc
- cd /opt/$(MACHINE)-uClibc/bin && for i in `ls -w1 $(MACHINE)-linux-uclibc-*`; do \
- ln -svf $$i $(MACHINE)-linux-`echo $$i | cut -c 19-`; \
- done
- ln -svf $(MACHINE)-linux-uclibc /opt/$(MACHINE)-uClibc/$(MACHINE)-linux
- ln -svf gcc /opt/$(MACHINE)-uClibc/$(MACHINE)-linux-uclibc/bin/cc
-else
-ifeq "$(INST)" "2"
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc-uclibc-conf.patch
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc-uclibc-locale.patch
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc-libstdc++-pic.patch
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/gcc-sdk-libstdc++-includes.patch
- ln -snf ../include /opt/$(MACHINE)-uClibc/$(MACHINE)-linux-uclibc/sys-include
- cd $(DIR_SRC)/gcc-build && $(DIR_APP)/configure $(EXTRA_CONFIG)
- cd $(DIR_SRC)/gcc-build && PATH=$(TARGET_PATH) make $(MAKETUNING) $(EXTRA_MAKE)
- cd $(DIR_SRC)/gcc-build && PATH=$(TARGET_PATH) make install $(EXTRA_INSTALL)
- cp -f /opt/$(MACHINE)-uClibc/lib/libgcc_s.so /lib
- cd /lib && ln -sf libgcc_s.so libgcc_s.so.1
-else
cd $(DIR_APP) && sed -i 's/install_to_$$(INSTALL_DEST) //' libiberty/Makefile.in
cd $(DIR_APP) && sed -i 's/^XCFLAGS =$$/& -fomit-frame-pointer/' gcc/Makefile.in
cd $(DIR_APP) && sed -i 's@\./fixinc\.sh@-c true@' gcc/Makefile.in
cd $(DIR_SRC)/gcc-build && make $(EXTRA_INSTALL) install
ln -sfv ../usr/bin/cpp /lib
ln -sfv gcc /usr/bin/cc
-endif
-endif
else
ifeq "$(PASS)" "1"
cd $(DIR_SRC)/gcc-build && $(DIR_APP)/configure $(EXTRA_CONFIG)
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2007 Michael Tremer & Christian Schmidt #
+# Copyright (C) 2007-2011 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 1.18.1.1
+VER = 1.21
THISAPP = groff-$(VER)
DL_FILE = $(THISAPP).tar.gz
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 511dbd64b67548c99805f1521f82cc5e
+$(DL_FILE)_MD5 = 8b8cd29385b97616a0f0d96d0951c5bf
install : $(TARGET)
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-debian_fixes-1.patch
- cd $(DIR_APP) && sed -i -e 's/2010/002D/' -e 's/2212/002D/' \
- -e 's/2018/0060/' -e 's/2019/0027/' font/devutf8/R.proto
cd $(DIR_APP) && PAGE=A4 ./configure --prefix=/usr --enable-multibyte --disable-nls
cd $(DIR_APP) && make
cd $(DIR_APP) && make install
- ln -sv eqn /usr/bin/geqn
- ln -sv tbl /usr/bin/gtbl
+ ln -svf eqn /usr/bin/geqn
+ ln -svf tbl /usr/bin/gtbl
@rm -rf $(DIR_APP)
@$(POSTBUILD)
cd $(DIR_APP) && make $(MAKETUNING) SBINDIR=/sbin
cd $(DIR_APP) && make SBINDIR=/sbin install
cd $(DIR_APP) && mv -v /sbin/arpd /usr/sbin
+
+ # Add table for static routing
+ echo "200 static" >> /etc/iproute2/rt_tables
+
@rm -rf $(DIR_APP)
@$(POSTBUILD)
endif
endif
-VER = 2.6.38.6
+VER = 3.0b
THISAPP = kvm-kmod-$(VER)
DL_FILE = $(THISAPP).tar.bz2
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = b631ba6ba7b0d3c07de870c6104ffbd5
+$(DL_FILE)_MD5 = 19792041adc25779b31ea5c5fdca7d8c
install : $(TARGET)
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)_remove_pvclock_scale_delta_redifinition.patch
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)_remove_pvclock_scale_delta_redefinition.patch
cd $(DIR_APP) && ./configure --kerneldir=/usr/src/linux
cd $(DIR_APP) && make $(MAKETUNING)
cd $(DIR_APP) && install -m 644 x86/*.ko \
include Config
-VER = 0.16.4
+VER = 0.0.0-0db9d7f
-THISAPP = libsatsolver-$(VER)
-DL_FILE = $(THISAPP).tar.bz2
+THISAPP = libsolv-$(VER)
+DL_FILE = $(THISAPP).tar.gz
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
-PROG = libsatsolver
+PROG = libsolv
DEPS = ""
PAK_VER = 1
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = 563414330c29e9b49be0e43358185a78
+$(DL_FILE)_MD5 = ba95c404d807bc71297c508a7127a3d9
install : $(TARGET)
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
- @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar jxf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/libsatsolver-Build-only-libraries.patch
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/libsatsolver-Create-linker-scripts-that-do-only-export-the-needed.patch
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/libsatsolver-Make-libsatsolver-ext-a-versioned-shared-lib.patch
+ @rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
# Who releases code with -Werror?
cd $(DIR_APP) && sed -e "s/-Werror//g" -i CMakeLists.txt
+ # Disable bindings, examples and tools.
+ cd $(DIR_APP) && sed "/bindings/d" -i CMakeLists.txt
+ cd $(DIR_APP) && sed "/examples/d" -i CMakeLists.txt
+ cd $(DIR_APP) && sed "/tools/d" -i CMakeLists.txt
+
# Make sure that libsatsolverext is linked properly to all needed
# libraries.
- cd $(DIR_APP) && echo "TARGET_LINK_LIBRARIES(satsolverext satsolver \$${EXPAT_LIBRARY} \$${ZLIB_LIBRARY})" \
+ cd $(DIR_APP) && echo "TARGET_LINK_LIBRARIES(libsolvext libsolv \$${EXPAT_LIBRARY} \$${ZLIB_LIBRARY})" \
>> ext/CMakeLists.txt
# Remove the RPM stuff when we build with -DFEDORA=1 because we
ifneq "$(ROOT)" ""
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/$(THISAPP)-libc-2.patch
endif
+ cd $(DIR_APP) && sed -i -e 's|-fstack-protector|-fno-stack-protector|g' Configure
ifeq "$(ROOT)" ""
cd $(DIR_APP) && ./configure.gnu --prefix=/usr -Dman1dir=/usr/share/man/man1 \
-Dman3dir=/usr/share/man/man3 -Dpager="/usr/bin/less -isR" -Dusethreads
+++ /dev/null
-###############################################################################
-# #
-# IPFire.org - A linux based firewall #
-# Copyright (C) 2007 Michael Tremer & Christian Schmidt #
-# #
-# This program is free software: you can redistribute it and/or modify #
-# it under the terms of the GNU General Public License as published by #
-# the Free Software Foundation, either version 3 of the License, or #
-# (at your option) any later version. #
-# #
-# This program is distributed in the hope that it will be useful, #
-# but WITHOUT ANY WARRANTY; without even the implied warranty of #
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the #
-# GNU General Public License for more details. #
-# #
-# You should have received a copy of the GNU General Public License #
-# along with this program. If not, see <http://www.gnu.org/licenses/>. #
-# #
-###############################################################################
-
-###############################################################################
-# Definitions
-###############################################################################
-
-include Config
-
-VER = 0.16.0-20110429-868eae9
-
-THISAPP = sat-solver-bindings-$(VER)
-DL_FILE = $(THISAPP).tar.xz
-DL_FROM = http://source.ipfire.org/source-3.x
-DIR_APP = $(DIR_SRC)/$(THISAPP)
-TARGET = $(DIR_INFO)/$(THISAPP)
-
-PROG = python-satsolver
-DEPS = "libsatsolver"
-PAK_VER = 1
-
-###############################################################################
-# Top-level Rules
-###############################################################################
-
-objects = $(DL_FILE)
-
-$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-
-$(DL_FILE)_MD5 = 479f3b57a9f9a59c7b24e37aedda7469
-
-install : $(TARGET)
-
-check : $(patsubst %,$(DIR_CHK)/%,$(objects))
-
-download :$(patsubst %,$(DIR_DL)/%,$(objects))
-
-md5 : $(subst %,%_MD5,$(objects))
-
-dist :
- $(PAK)
-
-###############################################################################
-# Downloading, checking, md5sum
-###############################################################################
-
-$(patsubst %,$(DIR_CHK)/%,$(objects)) :
- @$(CHECK)
-
-$(patsubst %,$(DIR_DL)/%,$(objects)) :
- @$(LOAD)
-
-$(subst %,%_MD5,$(objects)) :
- @$(MD5)
-
-###############################################################################
-# Installation Details
-###############################################################################
-$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
- @$(PREBUILD)
-
- # Workaround for weak tarball
- @rm -rf $(DIR_APP) && mkdir $(DIR_APP) && cd $(DIR_SRC) && tar Jxf $(DIR_DL)/$(DL_FILE) -C $(DIR_APP)
-
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/python-satsover-fix-building-without-rpm.patch
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/python-satsolver-only-python-bindings.patch
-
- # Aaaahh!
- cd $(DIR_APP) && sed -e "s/-Werror//g" -i CMakeLists.txt
-
- cd $(DIR_APP) && mkdir build
- cd $(DIR_APP)/build && cmake .. -DDEBIAN=1 \
- -DCMAKE_INSTALL_PREFIX=/usr \
- -DCMAKE_BUILD_TYPE=Release \
- -DCMAKE_SKIP_RPATH=1 \
- -DPYTHON_LIBRARY=/usr/lib/libpython2.7.so \
- -DPYTHON_INCLUDE_PATH=/usr/include/python2.7
-
- cd $(DIR_APP)/build && make $(PARALELLISMFLAGS)
-
- # Install only the python bindings. That's all we need.
- cd $(DIR_APP)/build/bindings/python && make install
-
- @rm -rf $(DIR_APP)
- @$(POSTBUILD)
include Config
-VER = 0.14.1
+VER = 0.15.0
-THISAPP = qemu-$(VER)
+THISAPP = qemu-kvm-$(VER)
DL_FILE = $(THISAPP).tar.gz
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
PROG = qemu
-PAK_VER = 11
+PAK_VER = 13
DEPS = "sdl"
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = b6c713a8db638e173af53a62d5178640
+$(DL_FILE)_MD5 = b45b0deebba4ce47dcaaab3807f6ed47
install : $(TARGET)
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar zxf $(DIR_DL)/$(DL_FILE)
- cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/qemu-0.14.1_missing_ATFCWD_hack.patch
+ cd $(DIR_APP) && sed -i -e 's|CFLAGS+="-march=i486"|CFLAGS+=""|g' configure
+ cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/qemu-0.15.0_missing_definitions_hack.patch
cd $(DIR_APP) && ./configure --prefix=/usr --sysconfdir=/etc \
- --target-list="i386-linux-user i386-softmmu"
+ --target-list="i386-linux-user i386-softmmu arm-softmmu"
cd $(DIR_APP) && make $(MAKETUNING)
cd $(DIR_APP) && make install
@rm -rf $(DIR_APP)
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2010 Michael Tremer & Christian Schmidt #
+# Copyright (C) 2007-2011 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 4.5.0
+VER = 4.5.3
THISAPP = strongswan-$(VER)
DL_FILE = $(THISAPP).tar.bz2
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = cfbd6efef87830a2e7cc4175bde7ac84
+$(DL_FILE)_MD5 = ee7c50a90c91307b111e8085f2479890
install : $(TARGET)
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2010 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2011 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 1.1.6
+VER = 1.1.9
THISAPP = usb-modeswitch-$(VER)
DL_FILE = $(THISAPP).tar.bz2
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = be3c7fc908e6ab50eb9fd29d187ad176
+$(DL_FILE)_MD5 = 76f6978f18cac41f269a346a5d0f1052
install : $(TARGET)
cd $(DIR_APP) && make clean
cd $(DIR_APP) && make all $(MAKETUNING) $(EXTRA_MAKE)
cd $(DIR_APP) && make install
- cp -f $(DIR_APP)/device_reference.txt /etc/usb_modeswitch.setup.example
@rm -rf $(DIR_APP)
@$(POSTBUILD)
###############################################################################
# #
# IPFire.org - A linux based firewall #
-# Copyright (C) 2010 IPFire Team <info@ipfire.org> #
+# Copyright (C) 2007-2011 IPFire Team <info@ipfire.org> #
# #
# This program is free software: you can redistribute it and/or modify #
# it under the terms of the GNU General Public License as published by #
include Config
-VER = 20101222
+VER = 20110805
THISAPP = usb-modeswitch-data-$(VER)
DL_FILE = $(THISAPP).tar.bz2
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
-$(DL_FILE)_MD5 = e386386bc389c2a8184c7ea4136fde0e
+$(DL_FILE)_MD5 = 0ed8a28f8efd3177a128ecd46fc8bf9f
install : $(TARGET)
NAME="IPFire" # Software name
SNAME="ipfire" # Short name
-VERSION="2.9" # Version number
+VERSION="2.10" # Version number
CORE="52" # Core Level (Filename)
PAKFIRE_CORE="51" # Core Level (PAKFIRE)
GIT_BRANCH=`git status | head -n1 | cut -d" " -f4` # Git Branch
ipfiremake python-m2crypto
ipfiremake wireless-regdb
ipfiremake crda
- ipfiremake libsatsolver
- ipfiremake python-satsolver
+ ipfiremake libsolv
ipfiremake python-distutils-extra
ipfiremake python-lzma
ipfiremake python-progressbar
echo >> $BASEDIR/build/var/ipfire/firebuild
cat /proc/cpuinfo >> $BASEDIR/build/var/ipfire/firebuild
echo $PAKFIRE_CORE > $BASEDIR/build/opt/pakfire/db/core/mine
- if [ "$GIT_BRANCH" = "master" ]; then
+ if [ "$GIT_BRANCH" = "next" ]; then
echo "$NAME $VERSION - (Development Build: $GIT_LASTCOMMIT)" > $BASEDIR/build/etc/system-release
else
echo "$NAME $VERSION - $GIT_BRANCH" > $BASEDIR/build/etc/system-release
PPP_STD_OPTIONS+=" default-asyncmap hide-password nodetach mtu ${MTU}"
PPP_STD_OPTIONS+=" mru ${MRU} noaccomp nodeflate nopcomp novj novjccomp"
PPP_STD_OPTIONS+=" nobsdcomp user ${USERNAME} lcp-echo-interval 20"
- PPP_STD_OPTIONS+=" lcp-echo-failure 3 ${AUTH}"
+ PPP_STD_OPTIONS+=" lcp-echo-failure 5 ${AUTH}"
### Debugging
#
--- /dev/null
+#!/bin/bash
+
+. /etc/sysconfig/rc
+. ${rc_functions}
+
+
+function init_table() {
+ # Check if table does already exist. If not we add it.
+ if (ip rule | grep -q "static" >/dev/null 2>&1); then
+ return
+ fi
+
+ ip rule add table static
+}
+
+function create_all_routes() {
+ local file=${1}
+ shift
+
+ # Remote all routes.
+ ip route flush table static >/dev/null 2>&1
+
+ local status
+ local network
+ local gateway
+ local remark
+
+ # Read all routes from the configuration file and add the enabled ones
+ # immediately.
+ while IFS=, read status network gateway remark; do
+ [ "${status}" = "on" ] || continue
+
+ if [ -z "${network}" -o -z "${gateway}" ]; then
+ # Silently skipping invalid routes.
+ continue
+ fi
+
+ ip route add ${network} via ${gateway} table static
+ done < ${file}
+}
+
+CONFIGFILE="/var/ipfire/main/routing"
+
+case "${1}" in
+ start)
+ boot_mesg "Adding static routes..."
+
+ # First, initialize the table
+ init_table
+
+ # Add all routes
+ create_all_routes ${CONFIGFILE}
+
+ evaluate_retval
+ ;;
+
+ stop)
+ boot_mesg "Removing static routes..."
+ ip route flush table static >/dev/null 2>&1
+ evaluate_retval
+ ;;
+
+ *)
+ echo "Usage: ${0} {start|stop}"
+ exit 1
+ ;;
+esac
wirelessctrl getipstat getiptstate qosctrl launch-ether-wake \
redctrl syslogdctrl extrahdctrl sambactrl upnpctrl tripwirectrl \
smartctrl clamavctrl addonctrl pakfire mpfirectrl wlanapctrl \
- setaliases urlfilterctrl updxlratorctrl fireinfoctrl
+ setaliases urlfilterctrl updxlratorctrl fireinfoctrl rebuildroutes
SUID_UPDX = updxsetperms
install : all
fireinfoctrl: fireinfoctrl.c setuid.o ../install+setup/libsmooth/varval.o
$(COMPILE) -I../install+setup/libsmooth/ fireinfoctrl.c setuid.o ../install+setup/libsmooth/varval.o -o $@
+rebuildroutes: rebuildroutes.c setuid.o ../install+setup/libsmooth/varval.o
+ $(COMPILE) -I../install+setup/libsmooth/ rebuildroutes.c setuid.o ../install+setup/libsmooth/varval.o -o $@
// safe_system(str);
// IKE
- sprintf(str, "/sbin/iptables -D IPSECINPUT -p udp -i %s --sport 500 --dport 500 -j ACCEPT >/dev/null 2>&1", interface);
+ sprintf(str, "/sbin/iptables -D IPSECINPUT -p udp -i %s --dport 500 -j ACCEPT >/dev/null 2>&1", interface);
safe_system(str);
- sprintf(str, "/sbin/iptables -A IPSECINPUT -p udp -i %s --sport 500 --dport 500 -j ACCEPT", interface);
+ sprintf(str, "/sbin/iptables -A IPSECINPUT -p udp -i %s --dport 500 -j ACCEPT", interface);
safe_system(str);
if (! nat_traversal_port)
*/
void turn_connection_on (char *name, char *type) {
/*
- if you find a way to start a single connection without changing all add it
- here. Change also vpn-watch.
+ Rename the connection and run ipsec update and rename it back to readd
+ a deleted connection. Because ipsec update ignores connection that have
+ not changed since last load.
*/
- safe_system("/etc/rc.d/init.d/ipsec restart >/dev/null");
+ char command[STRING_SIZE];
+ memset(command, 0, STRING_SIZE);
+ snprintf(command, STRING_SIZE - 1,
+ "sed -i -e 's|^conn %s$|conn %s-renamed|g' /var/ipfire/vpn/ipsec.conf >/dev/null", name, name);
+ safe_system(command);
+
+ // Down and delete IKEv2 Tunnel before ipsec update
+ snprintf(command, STRING_SIZE - 1,
+ "/usr/sbin/ipsec stroke down %s >/dev/null", name);
+ safe_system(command);
+ snprintf(command, STRING_SIZE - 1,
+ "/usr/sbin/ipsec stroke delete %s >/dev/null", name);
+ safe_system(command);
+
+ safe_system("/etc/rc.d/init.d/ipsec update >/dev/null");
+
+ sleep(1);
+
+ // Back to original name
+ snprintf(command, STRING_SIZE - 1,
+ "sed -i -e 's|^conn %s-renamed$|conn %s|g' /var/ipfire/vpn/ipsec.conf >/dev/null", name, name);
+ safe_system(command);
+
+ // Down and delete IKEv2 Tunnel before ipsec update
+ snprintf(command, STRING_SIZE - 1,
+ "/usr/sbin/ipsec stroke down %s-renamed >/dev/null", name);
+ safe_system(command);
+ snprintf(command, STRING_SIZE - 1,
+ "/usr/sbin/ipsec stroke delete %s-renamed >/dev/null", name);
+ safe_system(command);
+
+ safe_system("/etc/rc.d/init.d/ipsec update >/dev/null");
}
/*
issue ipsec commmands to turn off connection 'name'
snprintf(command, STRING_SIZE - 1,
"/usr/sbin/ipsec whack --delete --name %s >/dev/null", name);
safe_system(command);
+ snprintf(command, STRING_SIZE - 1,
+ "/usr/sbin/ipsec stroke down %s >/dev/null", name);
+ safe_system(command);
+ snprintf(command, STRING_SIZE - 1,
+ "/usr/sbin/ipsec stroke delete %s >/dev/null", name);
+ safe_system(command);
+
safe_system("/usr/sbin/ipsec whack --rereadall >/dev/null");
+ safe_system("/usr/sbin/ipsec stroke rereadall >/dev/null");
+
}
if (strcmp(argv[1], "I") == 0) {
safe_system("/usr/sbin/ipsec whack --status");
+ safe_system("/usr/sbin/ipsec stroke status");
exit(0);
}
if (strcmp(argv[1], "R") == 0) {
safe_system("/usr/sbin/ipsec whack --rereadall >/dev/null");
+ safe_system("/usr/sbin/ipsec stroke rereadall >/dev/null");
exit(0);
}
--- /dev/null
+/* IPFire helper program - rebuildroutes
+ *
+ * This program is distributed under the terms of the GNU General Public
+ * Licence. See the file COPYING for details.
+ */
+
+#include "libsmooth.h"
+#include "setuid.h"
+
+int main(int argc, char *argv[]) {
+ if (!(initsetuid()))
+ exit(1);
+
+ safe_system("/etc/init.d/static-routes start >/dev/null 2>&1");
+
+ return 0;
+}
--- /dev/null
+Submitted By: Matt Burgess (matthew at linuxfromscratch dot org)
+Date: 2007-11-19
+Initial Package Version: 2.18
+Origin: Upstream (http://sourceware.org/cgi-bin/cvsweb.cgi/src/configure.diff?r1=1.268&r2=1.268.2.1&cvsroot=src)
+Upstream Status: Applied
+Description: Fixes the configure script to correctly dictate Texinfo > 4.9.
+
+diff -Naur binutils-2.18.orig/configure binutils-2.18/configure
+--- binutils-2.18.orig/configure 2007-08-06 20:29:40.000000000 +0000
++++ binutils-2.18/configure 2007-11-18 22:37:58.000000000 +0000
+@@ -6128,7 +6128,7 @@
+ # For an installed makeinfo, we require it to be from texinfo 4.4 or
+ # higher, else we use the "missing" dummy.
+ if ${MAKEINFO} --version \
+- | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[4-9]|[5-9])' >/dev/null 2>&1; then
++ | egrep 'texinfo[^0-9]*(4\.([4-9]|[1-9][0-9])|[5-9]|[1-9][0-9])' >/dev/null 2>&1; then
+ :
+ else
+ MAKEINFO="$MISSING makeinfo"
--- /dev/null
+diff -Naur gcc-4.1.2.org/libstdc++-v3/configure gcc-4.1.2/libstdc++-v3/configure
+--- gcc-4.1.2.org/libstdc++-v3/configure 2007-01-29 11:51:01.000000000 +0100
++++ gcc-4.1.2/libstdc++-v3/configure 2011-08-29 19:25:22.973430586 +0200
+@@ -8281,7 +8281,7 @@
+ if test x"$with_gnu_ld" = x"yes"; then
+
+ ldver=`$LD --version 2>/dev/null | head -1 | \
+- sed -e 's/GNU ld version \([0-9.][0-9.]*\).*/\1/'`
++ sed -e 's/GNU ld (GNU binutils) \([0-9.][0-9.]*\).*/\1/'`
+
+ glibcxx_gnu_ld_version=`echo $ldver | \
+ $AWK -F. '{ if (NF<3) $3=0; print ($1*100+$2)*100+$3 }'`
--- /dev/null
+Submitted By: Robert Connolly <robert at linuxfromscratch dot org> (ashes)
+Date: 2006-02-17
+Initial Package Version: 4.1.0
+Upstream Status: Not Sent - LFS Specific
+Origin: Idea originally developed by Ryan Oliver and Greg Schafer for
+ the Pure LFS project.
+ More architectures added by Zack Winkles.
+ Further fine tunings by Greg Schafer.
+ Modified for gcc 3.3.2 by Oliver Brakmann.
+ Rediffed against gcc 3.4.0 by Zack Winkles.
+ Rediffed against gcc 3.4.3 by Jim Gifford.
+ Rediffed against gcc 4.0.0 by Robert Connolly.
+ Rediffed against gcc 4.1.0 by Chris Staub
+Description: This patch modifies the location of the dynamic linker for
+ the GCC Pass 2 build in LFS Chapter 5.
+
+diff -Naur gcc-4.1.0.orig/gcc/config/alpha/linux-elf.h gcc-4.1.0/gcc/config/alpha/linux-elf.h
+--- gcc-4.1.0.orig/gcc/config/alpha/linux-elf.h 2005-06-24 21:22:41.000000000 -0400
++++ gcc-4.1.0/gcc/config/alpha/linux-elf.h 2006-02-28 22:02:20.000000000 -0500
+@@ -27,7 +27,7 @@
+ #define SUBTARGET_EXTRA_SPECS \
+ { "elf_dynamic_linker", ELF_DYNAMIC_LINKER },
+
+-#define ELF_DYNAMIC_LINKER "/lib/ld-linux.so.2"
++#define ELF_DYNAMIC_LINKER "/tools/lib/ld-linux.so.2"
+
+ #define LINK_SPEC "-m elf64alpha %{G*} %{relax:-relax} \
+ %{O*:-O3} %{!O*:-O1} \
+diff -Naur gcc-4.1.0.orig/gcc/config/arm/linux-elf.h gcc-4.1.0/gcc/config/arm/linux-elf.h
+--- gcc-4.1.0.orig/gcc/config/arm/linux-elf.h 2005-10-09 21:04:31.000000000 -0400
++++ gcc-4.1.0/gcc/config/arm/linux-elf.h 2006-02-28 22:02:20.000000000 -0500
+@@ -51,7 +51,7 @@
+
+ #define LIBGCC_SPEC "%{msoft-float:-lfloat} %{mfloat-abi=soft*:-lfloat} -lgcc"
+
+-#define LINUX_TARGET_INTERPRETER "/lib/ld-linux.so.2"
++#define LINUX_TARGET_INTERPRETER "/tools/lib/ld-linux.so.2"
+
+ #define LINUX_TARGET_LINK_SPEC "%{h*} %{version:-v} \
+ %{b} \
+diff -Naur gcc-4.1.0.orig/gcc/config/frv/linux.h gcc-4.1.0/gcc/config/frv/linux.h
+--- gcc-4.1.0.orig/gcc/config/frv/linux.h 2005-06-24 21:22:41.000000000 -0400
++++ gcc-4.1.0/gcc/config/frv/linux.h 2006-02-28 22:02:20.000000000 -0500
+@@ -41,7 +41,7 @@
+ %{mfdpic: -m elf32frvfd -z text} %{shared} %{pie} \
+ %{!shared: %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}} \
+ %{static}}"
+
+ /* Support for compile-time default CPU. */
+diff -Naur gcc-4.1.0.orig/gcc/config/i386/gnu.h gcc-4.1.0/gcc/config/i386/gnu.h
+--- gcc-4.1.0.orig/gcc/config/i386/gnu.h 2004-09-07 20:17:19.000000000 -0400
++++ gcc-4.1.0/gcc/config/i386/gnu.h 2006-02-28 22:02:21.000000000 -0500
+@@ -27,7 +27,7 @@
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib/ld.so}} \
++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so}} \
+ %{static:-static}}"
+
+ #undef STARTFILE_SPEC
+diff -Naur gcc-4.1.0.orig/gcc/config/i386/linux.h gcc-4.1.0/gcc/config/i386/linux.h
+--- gcc-4.1.0.orig/gcc/config/i386/linux.h 2005-08-10 13:53:01.000000000 -0400
++++ gcc-4.1.0/gcc/config/i386/linux.h 2006-02-28 22:02:21.000000000 -0500
+@@ -105,7 +105,7 @@
+ /* If ELF is the default format, we should not use /lib/elf. */
+
+ #define LINK_EMULATION "elf_i386"
+-#define DYNAMIC_LINKER "/lib/ld-linux.so.2"
++#define DYNAMIC_LINKER "/tools/lib/ld-linux.so.2"
+
+ #undef SUBTARGET_EXTRA_SPECS
+ #define SUBTARGET_EXTRA_SPECS \
+diff -Naur gcc-4.1.0.orig/gcc/config/i386/linux64.h gcc-4.1.0/gcc/config/i386/linux64.h
+--- gcc-4.1.0.orig/gcc/config/i386/linux64.h 2005-08-10 13:53:01.000000000 -0400
++++ gcc-4.1.0/gcc/config/i386/linux64.h 2006-02-28 22:02:21.000000000 -0500
+@@ -60,8 +60,8 @@
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{m32:%{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
+- %{!m32:%{!dynamic-linker:-dynamic-linker /lib64/ld-linux-x86-64.so.2}}} \
++ %{m32:%{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \
++ %{!m32:%{!dynamic-linker:-dynamic-linker /tools/lib64/ld-linux-x86-64.so.2}}} \
+ %{static:-static}}"
+
+ /* Similar to standard Linux, but adding -ffast-math support. */
+diff -Naur gcc-4.1.0.orig/gcc/config/ia64/linux.h gcc-4.1.0/gcc/config/ia64/linux.h
+--- gcc-4.1.0.orig/gcc/config/ia64/linux.h 2004-09-07 20:17:19.000000000 -0400
++++ gcc-4.1.0/gcc/config/ia64/linux.h 2006-02-28 22:02:21.000000000 -0500
+@@ -43,7 +43,7 @@
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib/ld-linux-ia64.so.2}} \
++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux-ia64.so.2}} \
+ %{static:-static}}"
+
+
+diff -Naur gcc-4.1.0.orig/gcc/config/linux.h gcc-4.1.0/gcc/config/linux.h
+--- gcc-4.1.0.orig/gcc/config/linux.h 2005-08-06 09:26:35.000000000 -0400
++++ gcc-4.1.0/gcc/config/linux.h 2006-02-28 22:02:21.000000000 -0500
+@@ -104,3 +104,7 @@
+ #define TARGET_C99_FUNCTIONS 1
+
+ #define TARGET_POSIX_IO
++
++/* Remove /usr/include from the end of the include search path. */
++#undef STANDARD_INCLUDE_DIR
++#define STANDARD_INCLUDE_DIR 0
+diff -Naur gcc-4.1.0.orig/gcc/config/m32r/linux.h gcc-4.1.0/gcc/config/m32r/linux.h
+--- gcc-4.1.0.orig/gcc/config/m32r/linux.h 2005-07-08 06:00:15.000000000 -0400
++++ gcc-4.1.0/gcc/config/m32r/linux.h 2006-02-28 22:02:21.000000000 -0500
+@@ -66,7 +66,7 @@
+ %{!ibcs: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \
+ %{static:-static}}}"
+ #else
+ #define LINK_SPEC "%(link_cpu) -m m32relf_linux %{shared:-shared} \
+@@ -74,7 +74,7 @@
+ %{!ibcs: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \
+ %{static:-static}}}"
+ #endif
+
+diff -Naur gcc-4.1.0.orig/gcc/config/m68k/linux.h gcc-4.1.0/gcc/config/m68k/linux.h
+--- gcc-4.1.0.orig/gcc/config/m68k/linux.h 2005-06-24 21:22:41.000000000 -0400
++++ gcc-4.1.0/gcc/config/m68k/linux.h 2006-02-28 22:02:21.000000000 -0500
+@@ -128,7 +128,7 @@
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker*:-dynamic-linker /lib/ld.so.1}} \
++ %{!dynamic-linker*:-dynamic-linker /tools/lib/ld.so.1}} \
+ %{static}}"
+
+ /* For compatibility with linux/a.out */
+diff -Naur gcc-4.1.0.orig/gcc/config/mips/linux.h gcc-4.1.0/gcc/config/mips/linux.h
+--- gcc-4.1.0.orig/gcc/config/mips/linux.h 2005-06-24 21:22:41.000000000 -0400
++++ gcc-4.1.0/gcc/config/mips/linux.h 2006-02-28 22:02:21.000000000 -0500
+@@ -112,7 +112,7 @@
+ %{!ibcs: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}} \
+ %{static:-static}}}"
+
+ #undef SUBTARGET_ASM_SPEC
+diff -Naur gcc-4.1.0.orig/gcc/config/mips/linux64.h gcc-4.1.0/gcc/config/mips/linux64.h
+--- gcc-4.1.0.orig/gcc/config/mips/linux64.h 2005-06-24 21:22:41.000000000 -0400
++++ gcc-4.1.0/gcc/config/mips/linux64.h 2006-02-28 22:02:21.000000000 -0500
+@@ -47,9 +47,9 @@
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+ %{!dynamic-linker: \
+- %{mabi=n32: -dynamic-linker /lib32/ld.so.1} \
+- %{mabi=64: -dynamic-linker /lib64/ld.so.1} \
+- %{mabi=32: -dynamic-linker /lib/ld.so.1}}} \
++ %{mabi=n32: -dynamic-linker /tools/lib32/ld.so.1} \
++ %{mabi=64: -dynamic-linker /tools/lib64/ld.so.1} \
++ %{mabi=32: -dynamic-linker /tools/lib/ld.so.1}}} \
+ %{static:-static}}} \
+ %{mabi=n32:-melf32%{EB:b}%{EL:l}tsmipn32} \
+ %{mabi=64:-melf64%{EB:b}%{EL:l}tsmip} \
+diff -Naur gcc-4.1.0.orig/gcc/config/mn10300/linux.h gcc-4.1.0/gcc/config/mn10300/linux.h
+--- gcc-4.1.0.orig/gcc/config/mn10300/linux.h 2005-06-24 21:22:41.000000000 -0400
++++ gcc-4.1.0/gcc/config/mn10300/linux.h 2006-02-28 22:02:21.000000000 -0500
+@@ -37,7 +37,7 @@
+ #define LINK_SPEC "%{mrelax:--relax} %{shared:-shared} \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}} \
+ %{static:-static}"
+
+ #undef PROCESSOR_DEFAULT
+diff -Naur gcc-4.1.0.orig/gcc/config/pa/pa-linux.h gcc-4.1.0/gcc/config/pa/pa-linux.h
+--- gcc-4.1.0.orig/gcc/config/pa/pa-linux.h 2005-11-17 22:22:18.000000000 -0500
++++ gcc-4.1.0/gcc/config/pa/pa-linux.h 2006-02-28 22:02:21.000000000 -0500
+@@ -55,7 +55,7 @@
+ %{!shared: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}} \
+ %{static:-static}}"
+
+ /* glibc's profiling functions don't need gcc to allocate counters. */
+diff -Naur gcc-4.1.0.orig/gcc/config/rs6000/linux64.h gcc-4.1.0/gcc/config/rs6000/linux64.h
+--- gcc-4.1.0.orig/gcc/config/rs6000/linux64.h 2006-02-10 15:58:33.000000000 -0500
++++ gcc-4.1.0/gcc/config/rs6000/linux64.h 2006-02-28 22:02:21.000000000 -0500
+@@ -339,11 +339,11 @@
+
+ #define LINK_OS_LINUX_SPEC32 "-m elf32ppclinux %{!shared: %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}"
++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}}}"
+
+ #define LINK_OS_LINUX_SPEC64 "-m elf64ppc %{!shared: %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib64/ld64.so.1}}}"
++ %{!dynamic-linker:-dynamic-linker /tools/lib64/ld64.so.1}}}"
+
+ #undef TOC_SECTION_ASM_OP
+ #define TOC_SECTION_ASM_OP \
+diff -Naur gcc-4.1.0.orig/gcc/config/rs6000/sysv4.h gcc-4.1.0/gcc/config/rs6000/sysv4.h
+--- gcc-4.1.0.orig/gcc/config/rs6000/sysv4.h 2006-02-10 15:58:33.000000000 -0500
++++ gcc-4.1.0/gcc/config/rs6000/sysv4.h 2006-02-28 22:02:21.000000000 -0500
+@@ -1041,7 +1041,7 @@
+
+ #define LINK_OS_LINUX_SPEC "-m elf32ppclinux %{!shared: %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}"
++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}}}"
+
+ #if defined(HAVE_LD_EH_FRAME_HDR)
+ # define LINK_EH_SPEC "%{!static:--eh-frame-hdr} "
+@@ -1072,7 +1072,7 @@
+
+ #define LINK_OS_GNU_SPEC "-m elf32ppclinux %{!shared: %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}}}"
++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}}}"
+
+ #define CPP_OS_GNU_SPEC "-D__unix__ -D__gnu_hurd__ -D__GNU__ \
+ %{!undef: \
+diff -Naur gcc-4.1.0.orig/gcc/config/s390/linux.h gcc-4.1.0/gcc/config/s390/linux.h
+--- gcc-4.1.0.orig/gcc/config/s390/linux.h 2006-02-11 03:38:51.000000000 -0500
++++ gcc-4.1.0/gcc/config/s390/linux.h 2006-02-28 22:02:21.000000000 -0500
+@@ -86,8 +86,8 @@
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+ %{!dynamic-linker: \
+- %{m31:-dynamic-linker /lib/ld.so.1} \
+- %{m64:-dynamic-linker /lib/ld64.so.1}}}}"
++ %{m31:-dynamic-linker /tools/lib/ld.so.1} \
++ %{m64:-dynamic-linker /tools/lib/ld64.so.1}}}}"
+
+
+ #define TARGET_ASM_FILE_END file_end_indicate_exec_stack
+diff -Naur gcc-4.1.0.orig/gcc/config/sh/linux.h gcc-4.1.0/gcc/config/sh/linux.h
+--- gcc-4.1.0.orig/gcc/config/sh/linux.h 2005-06-24 21:22:41.000000000 -0400
++++ gcc-4.1.0/gcc/config/sh/linux.h 2006-02-28 22:02:21.000000000 -0500
+@@ -60,7 +60,7 @@
+ "%{shared:-shared} \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \
+ %{static:-static}"
+
+ /* Output assembler code to STREAM to call the profiler. */
+diff -Naur gcc-4.1.0.orig/gcc/config/sparc/linux.h gcc-4.1.0/gcc/config/sparc/linux.h
+--- gcc-4.1.0.orig/gcc/config/sparc/linux.h 2006-02-11 03:38:51.000000000 -0500
++++ gcc-4.1.0/gcc/config/sparc/linux.h 2006-02-28 22:02:21.000000000 -0500
+@@ -126,13 +126,13 @@
+ /* If ELF is the default format, we should not use /lib/elf. */
+
+ #undef LINK_SPEC
+-#define LINK_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \
++#define LINK_SPEC "-m elf32_sparc -Y P,/tools/lib %{shared:-shared} \
+ %{!mno-relax:%{!r:-relax}} \
+ %{!shared: \
+ %{!ibcs: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \
+ %{static:-static}}}"
+
+ /* The sun bundled assembler doesn't accept -Yd, (and neither does gas).
+diff -Naur gcc-4.1.0.orig/gcc/config/sparc/linux64.h gcc-4.1.0/gcc/config/sparc/linux64.h
+--- gcc-4.1.0.orig/gcc/config/sparc/linux64.h 2006-02-11 03:38:51.000000000 -0500
++++ gcc-4.1.0/gcc/config/sparc/linux64.h 2006-02-28 22:02:21.000000000 -0500
+@@ -162,21 +162,21 @@
+ { "link_arch_default", LINK_ARCH_DEFAULT_SPEC }, \
+ { "link_arch", LINK_ARCH_SPEC },
+
+-#define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,/usr/lib %{shared:-shared} \
++#define LINK_ARCH32_SPEC "-m elf32_sparc -Y P,/tools/lib %{shared:-shared} \
+ %{!shared: \
+ %{!ibcs: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib/ld-linux.so.2}} \
++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld-linux.so.2}} \
+ %{static:-static}}} \
+ "
+
+-#define LINK_ARCH64_SPEC "-m elf64_sparc -Y P,/usr/lib64 %{shared:-shared} \
++#define LINK_ARCH64_SPEC "-m elf64_sparc -Y P,/tools/lib64 %{shared:-shared} \
+ %{!shared: \
+ %{!ibcs: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib64/ld-linux.so.2}} \
++ %{!dynamic-linker:-dynamic-linker /tools/lib64/ld-linux.so.2}} \
+ %{static:-static}}} \
+ "
+
+@@ -252,12 +252,12 @@
+ #else /* !SPARC_BI_ARCH */
+
+ #undef LINK_SPEC
+-#define LINK_SPEC "-m elf64_sparc -Y P,/usr/lib64 %{shared:-shared} \
++#define LINK_SPEC "-m elf64_sparc -Y P,/tools/lib64 %{shared:-shared} \
+ %{!shared: \
+ %{!ibcs: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib64/ld-linux.so.2}} \
++ %{!dynamic-linker:-dynamic-linker /tools/lib64/ld-linux.so.2}} \
+ %{static:-static}}} \
+ %{mlittle-endian:-EL} \
+ %{!mno-relax:%{!r:-relax}} \
+diff -Naur gcc-4.1.0.orig/gcc/config/xtensa/linux.h gcc-4.1.0/gcc/config/xtensa/linux.h
+--- gcc-4.1.0.orig/gcc/config/xtensa/linux.h 2005-06-24 21:22:41.000000000 -0400
++++ gcc-4.1.0/gcc/config/xtensa/linux.h 2006-02-28 22:02:21.000000000 -0500
+@@ -50,7 +50,7 @@
+ %{!ibcs: \
+ %{!static: \
+ %{rdynamic:-export-dynamic} \
+- %{!dynamic-linker:-dynamic-linker /lib/ld.so.1}} \
++ %{!dynamic-linker:-dynamic-linker /tools/lib/ld.so.1}} \
+ %{static:-static}}}"
+
+ #undef LOCAL_LABEL_PREFIX
--- /dev/null
+diff -Naur kvm-kmod-3.0b.org/x86/external-module-compat.h kvm-kmod-3.0b/x86/external-module-compat.h
+--- kvm-kmod-3.0b.org/x86/external-module-compat.h 2011-07-23 16:39:10.000000000 +0200
++++ kvm-kmod-3.0b/x86/external-module-compat.h 2011-08-13 21:37:56.046677541 +0200
+@@ -1095,7 +1095,7 @@
+
+ #endif /* >= 2.6.36 */
+
+-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,37) || \
++#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,37) && \
+ (LINUX_VERSION_CODE == KERNEL_VERSION(2,6,32) && KERNEL_EXTRAVERSION < 40)
+ static inline u64 pvclock_scale_delta(u64 delta, u32 mul_frac, int shift)
+ {
+++ /dev/null
-diff -Nur old/CMakeLists.txt new/CMakeLists.txt
---- old/CMakeLists.txt 2011-04-10 23:55:09.506257000 +0200
-+++ new/CMakeLists.txt 2011-04-10 23:46:30.612257002 +0200
-@@ -32,7 +32,7 @@
- INCLUDE( ${CMAKE_SOURCE_DIR}/VERSION.cmake )
-
- FIND_PACKAGE(EXPAT REQUIRED)
--FIND_PACKAGE(Check REQUIRED)
-+#FIND_PACKAGE(Check REQUIRED)
- FIND_PACKAGE(ZLIB REQUIRED)
-
- IF ( FEDORA )
-@@ -190,10 +190,10 @@
-
- ADD_SUBDIRECTORY(src)
- ADD_SUBDIRECTORY(ext)
--ADD_SUBDIRECTORY(tools)
--ADD_SUBDIRECTORY(tests)
--ADD_SUBDIRECTORY(examples)
--ADD_SUBDIRECTORY(doc)
-+#ADD_SUBDIRECTORY(tools)
-+#ADD_SUBDIRECTORY(tests)
-+#ADD_SUBDIRECTORY(examples)
-+#ADD_SUBDIRECTORY(doc)
-
- MESSAGE(STATUS "version: ${VERSION}")
+++ /dev/null
->From a42d7e17fa3e39a8306126c19f1b3b54f1fdd79e Mon Sep 17 00:00:00 2001
-From: Michael Tremer <michael.tremer@ipfire.org>
-Date: Thu, 21 Apr 2011 16:40:11 +0200
-Subject: [PATCH] Create linker-scripts that do only export the needed symbols
- of libsatsolver{,ext}.
-
-See these posts for reference:
- http://lists.opensuse.org/zypp-devel/2011-04/msg00012.html
- http://lists.opensuse.org/zypp-devel/2011-04/msg00014.html
-
-Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
----
- ext/CMakeLists.txt | 1 +
- ext/libsatsolverext.ver | 25 ++++
- src/CMakeLists.txt | 1 +
- src/libsatsolver.ver | 355 +++++++++++++++++++++++++++++++++++++++++++++++
- 4 files changed, 382 insertions(+), 0 deletions(-)
- create mode 100644 ext/libsatsolverext.ver
- create mode 100644 src/libsatsolver.ver
-
-diff --git a/ext/CMakeLists.txt b/ext/CMakeLists.txt
-index 68e1c3c..d51a43b 100644
---- a/ext/CMakeLists.txt
-+++ b/ext/CMakeLists.txt
-@@ -21,6 +21,7 @@ SET(libsatsolverext_HEADERS
- tools_util.h repo_deb.h sat_xfopen.h)
-
- SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC")
-+SET(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS} -Wl,--version-script=${satsolver_SOURCE_DIR}/ext/libsatsolverext.ver")
-
- INSTALL(FILES ${libsatsolverext_HEADERS} DESTINATION "${CMAKE_INSTALL_PREFIX}/include/satsolver")
- INSTALL(TARGETS satsolverext LIBRARY DESTINATION ${LIB_INSTALL_DIR} ARCHIVE DESTINATION ${LIB_INSTALL_DIR})
-diff --git a/ext/libsatsolverext.ver b/ext/libsatsolverext.ver
-new file mode 100644
-index 0000000..4869d37
---- /dev/null
-+++ b/ext/libsatsolverext.ver
-@@ -0,0 +1,25 @@
-+EXT1.0 {
-+ global:
-+ repo_add_code11_products;
-+ repo_add_content;
-+ repo_add_deb;
-+ repo_add_debdb;
-+ repo_add_debpackages;
-+ repo_add_debs;
-+ repo_add_deltainfoxml;
-+ repo_add_helix;
-+ repo_add_products;
-+ repo_add_releasefile_products;
-+ repo_add_repomdxml;
-+ repo_add_rpmmd;
-+ repo_add_susetags;
-+ repo_add_updateinfoxml;
-+ repo_add_zyppdb_products;
-+ repodata_write;
-+ repo_write;
-+ repo_write_stdkeyfilter;
-+ sat_xfopen;
-+ sat_xfopen_fd;
-+ local:
-+ *;
-+};
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 6a14d10..b54d01d 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -20,6 +20,7 @@ SET(libsatsolver_HEADERS
- chksum.h md5.h sha1.h sha2.h ${CMAKE_BINARY_DIR}/src/satversion.h)
-
- SET(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -fPIC")
-+SET(CMAKE_SHARED_LINKER_FLAGS "${LINK_FLAGS} -Wl,--version-script=${satsolver_SOURCE_DIR}/src/libsatsolver.ver")
-
- INSTALL(FILES ${libsatsolver_HEADERS} DESTINATION "${CMAKE_INSTALL_PREFIX}/include/satsolver")
- INSTALL(TARGETS satsolver LIBRARY DESTINATION ${LIB_INSTALL_DIR} ARCHIVE DESTINATION ${LIB_INSTALL_DIR})
-diff --git a/src/libsatsolver.ver b/src/libsatsolver.ver
-new file mode 100644
-index 0000000..dab3576
---- /dev/null
-+++ b/src/libsatsolver.ver
-@@ -0,0 +1,355 @@
-+SAT1.0 {
-+ global:
-+ dataiterator_clonepos;
-+ dataiterator_entersub;
-+ dataiterator_free;
-+ dataiterator_init;
-+ dataiterator_init_clone;
-+ dataiterator_jump_to_repo;
-+ dataiterator_jump_to_solvid;
-+ dataiterator_match;
-+ dataiterator_prepend_keyname;
-+ dataiterator_seek;
-+ dataiterator_set_keyname;
-+ dataiterator_set_match;
-+ dataiterator_setpos;
-+ dataiterator_setpos_parent;
-+ dataiterator_set_search;
-+ dataiterator_skip_attribute;
-+ dataiterator_skip_repo;
-+ dataiterator_skip_solvable;
-+ dataiterator_step;
-+ datamatcher_free;
-+ datamatcher_init;
-+ datamatcher_match;
-+ data_read_idarray;
-+ data_read_rel_idarray;
-+ data_skip_key;
-+ dep2str;
-+ dirpool_add_dir;
-+ dirpool_free;
-+ dirpool_init;
-+ dirpool_make_dirtraverse;
-+ evrcmp;
-+ evrmatch;
-+ id2str;
-+ map_free;
-+ map_grow;
-+ map_init;
-+ map_init_clone;
-+ policy_create_obsolete_index;
-+ policy_filter_unwanted;
-+ policy_findupdatepackages;
-+ policy_illegal2str;
-+ policy_illegal_archchange;
-+ policy_illegal_vendorchange;
-+ policy_is_illegal;
-+ pool_add_fileconflicts_deps;
-+ pool_addfileprovides;
-+ pool_addfileprovides_ids;
-+ pool_addrelproviders;
-+ pool_add_solvable;
-+ pool_add_solvable_block;
-+ pool_alloctmpspace;
-+ pool_arch2color_slow;
-+ pool_bin2hex;
-+ pool_calc_duchanges;
-+ pool_calc_installsizechange;
-+ pool_clear_pos;
-+ pool_create;
-+ pool_create_state_maps;
-+ pool_createwhatprovides;
-+ pool_debug;
-+ pool_free;
-+ pool_freeidhashes;
-+ pool_free_solvable_block;
-+ pool_freetmpspace;
-+ pool_freewhatprovides;
-+ pool_id2langid;
-+ pool_job2str;
-+ pool_lookup_bin_checksum;
-+ pool_lookup_checksum;
-+ pool_lookup_id;
-+ pool_lookup_num;
-+ pool_lookup_str;
-+ pool_lookup_void;
-+ pool_match_dep;
-+ pool_match_nevr_rel;
-+ pool_queuetowhatprovides;
-+ pool_search;
-+ pool_setarch;
-+ pool_setarchpolicy;
-+ pool_setdebuglevel;
-+ pool_set_installed;
-+ pool_set_languages;
-+ pool_setvendorclasses;
-+ pool_shrink_rels;
-+ pool_shrink_strings;
-+ pool_tmpappend;
-+ pool_tmpjoin;
-+ pool_trivial_installable;
-+ pool_trivial_installable_noobsoletesmap;
-+ pool_vendor2mask;
-+ prune_best_arch_name_version;
-+ prune_to_best_arch;
-+ prune_to_best_version;
-+ queue_alloc_one;
-+ queue_alloc_one_head;
-+ queue_delete;
-+ queue_delete2;
-+ queue_deleten;
-+ queue_free;
-+ queue_init;
-+ queue_init_buffer;
-+ queue_init_clone;
-+ queue_insert;
-+ queue_insert2;
-+ queue_insertn;
-+ rel2id;
-+ repo_addid;
-+ repo_addid_dep;
-+ repo_add_poolstr_array;
-+ repo_add_repodata;
-+ repo_add_solv;
-+ repo_add_solv_flags;
-+ repo_create;
-+ repodata_add_dirnumnum;
-+ repodata_add_dirstr;
-+ repodata_add_fixarray;
-+ repodata_add_flexarray;
-+ repodata_add_idarray;
-+ repodata_add_poolstr_array;
-+ repodata_chk2str;
-+ repodata_create;
-+ repodata_create_stubs;
-+ repodata_delete;
-+ repodata_delete_uninternalized;
-+ repodata_dir2str;
-+ repodata_disable_paging;
-+ repodata_empty;
-+ repodata_extend;
-+ repodata_extend_block;
-+ repodata_filelistfilter_matches;
-+ repodata_free;
-+ repodata_freedata;
-+ repodata_free_schemahash;
-+ repodata_globalize_id;
-+ repodata_initdata;
-+ repodata_internalize;
-+ repodata_key2id;
-+ repodata_localize_id;
-+ repodata_lookup_bin_checksum;
-+ repodata_lookup_id;
-+ repodata_lookup_idarray;
-+ repodata_lookup_num;
-+ repodata_lookup_str;
-+ repodata_lookup_type;
-+ repodata_lookup_void;
-+ repodata_merge_attrs;
-+ repodata_merge_some_attrs;
-+ repodata_new_handle;
-+ repodata_schema2id;
-+ repodata_search;
-+ repodata_set_binary;
-+ repodata_set_bin_checksum;
-+ repodata_set_checksum;
-+ repodata_set_constant;
-+ repodata_set_constantid;
-+ repodata_set_id;
-+ repodata_set_idarray;
-+ repodata_set_location;
-+ repodata_set_num;
-+ repodata_set_poolstr;
-+ repodata_setpos_kv;
-+ repodata_set_str;
-+ repodata_set_void;
-+ repodata_shrink;
-+ repodata_str2dir;
-+ repodata_stringify;
-+ repo_disable_paging;
-+ repo_empty;
-+ repo_fix_conflicts;
-+ repo_fix_supplements;
-+ repo_free;
-+ repo_freeallrepos;
-+ repo_free_solvable_block;
-+ repo_internalize;
-+ repo_last_repodata;
-+ repo_lookup_bin_checksum;
-+ repo_lookup_checksum;
-+ repo_lookup_id;
-+ repo_lookup_idarray;
-+ repo_lookup_num;
-+ repo_lookup_str;
-+ repo_lookup_type;
-+ repo_lookup_void;
-+ repo_matchvalue;
-+ repopagestore_compress_page;
-+ repopagestore_disable_paging;
-+ repopagestore_free;
-+ repopagestore_init;
-+ repopagestore_load_page_range;
-+ repopagestore_read_or_setup_pages;
-+ repo_reserve_ids;
-+ repo_search;
-+ repo_set_id;
-+ repo_set_num;
-+ repo_set_poolstr;
-+ repo_set_str;
-+ repo_sidedata_create;
-+ repo_sidedata_extend;
-+ sat_bin2hex;
-+ sat_calloc;
-+ sat_chksum_add;
-+ sat_chksum_create;
-+ sat_chksum_create_from_bin;
-+ sat_chksum_free;
-+ sat_chksum_get;
-+ sat_chksum_get_type;
-+ sat_chksum_isfinished;
-+ sat_chksum_str2type;
-+ sat_chksum_type2str;
-+ sat_dupappend;
-+ sat_dupjoin;
-+ sat_free;
-+ sat_hex2bin;
-+ sat_malloc;
-+ sat_malloc2;
-+ sat_MD5_Final;
-+ sat_MD5_Init;
-+ sat_MD5_Update;
-+ sat_oom;
-+ sat_realloc;
-+ sat_realloc2;
-+ sat_SHA1_Final;
-+ sat_SHA1_Init;
-+ sat_SHA1_Update;
-+ sat_SHA256_Data;
-+ sat_SHA256_End;
-+ sat_SHA256_Final;
-+ sat_SHA256_Init;
-+ sat_SHA256_Update;
-+ sat_SHA384_Data;
-+ sat_SHA384_End;
-+ sat_SHA384_Final;
-+ sat_SHA384_Init;
-+ sat_SHA384_Update;
-+ sat_SHA512_Data;
-+ sat_SHA512_End;
-+ sat_SHA512_Final;
-+ sat_SHA512_Init;
-+ sat_SHA512_Update;
-+ sat_sort;
-+ sat_timems;
-+ sat_version;
-+ sat_version_major;
-+ sat_version_minor;
-+ sat_version_patch;
-+ solvable2str;
-+ solvable_get_location;
-+ solvable_identical;
-+ solvable_lookup_bin_checksum;
-+ solvable_lookup_bool;
-+ solvable_lookup_checksum;
-+ solvable_lookup_id;
-+ solvable_lookup_idarray;
-+ solvable_lookup_num;
-+ solvable_lookup_str;
-+ solvable_lookup_str_lang;
-+ solvable_lookup_str_poollang;
-+ solvable_lookup_void;
-+ solvable_selfprovidedep;
-+ solvable_trivial_installable_map;
-+ solvable_trivial_installable_queue;
-+ solvable_trivial_installable_repo;
-+ solver_addchoicerules;
-+ solver_addduprules;
-+ solver_addinfarchrules;
-+ solver_addrpmrulesforsolvable;
-+ solver_addrpmrulesforupdaters;
-+ solver_addrpmrulesforweak;
-+ solver_addrule;
-+ solver_addupdaterule;
-+ solver_allruleinfos;
-+ solver_calc_duchanges;
-+ solver_calc_installsizechange;
-+ solver_calculate_noobsmap;
-+ solver_create;
-+ solver_create_decisions_obsoletesmap;
-+ solver_createdupmaps;
-+ solver_dep_installed;
-+ solver_disablechoicerules;
-+ solver_disablepolicyrules;
-+ solver_disableproblem;
-+ solver_enableproblem;
-+ solver_findallproblemrules;
-+ solver_findproblemrule;
-+ solver_free;
-+ solver_freedupmaps;
-+ solver_next_problem;
-+ solver_next_solution;
-+ solver_next_solutionelement;
-+ solver_prepare_solutions;
-+ solver_printallsolutions;
-+ solver_printcompleteprobleminfo;
-+ solver_printdecisionq;
-+ solver_printdecisions;
-+ solver_printproblem;
-+ solver_printprobleminfo;
-+ solver_printproblemruleinfo;
-+ solver_printrule;
-+ solver_printruleclass;
-+ solver_printruleelement;
-+ solver_printsolution;
-+ solver_printtransaction;
-+ solver_printtrivial;
-+ solver_printwatches;
-+ solver_problem_count;
-+ solver_problemruleinfo;
-+ solver_problemruleinfo2str;
-+ solver_reenablepolicyrules;
-+ solver_reset;
-+ solver_ruleinfo;
-+ solver_run_sat;
-+ solver_samerule;
-+ solver_select2str;
-+ solver_solution_count;
-+ solver_solutionelement2str;
-+ solver_solutionelement_count;
-+ solver_solve;
-+ solver_splitprovides;
-+ solver_take_solution;
-+ solver_take_solutionelement;
-+ solver_trivial_installable;
-+ solver_unifyrules;
-+ str2id;
-+ strn2id;
-+ stringpool_clone;
-+ stringpool_free;
-+ stringpool_freehash;
-+ stringpool_init;
-+ stringpool_init_empty;
-+ stringpool_shrink;
-+ stringpool_str2id;
-+ stringpool_strn2id;
-+ transaction_add_obsoleted;
-+ transaction_all_obs_pkgs;
-+ transaction_calc_duchanges;
-+ transaction_calc_installsizechange;
-+ transaction_calculate;
-+ transaction_check_order;
-+ transaction_classify;
-+ transaction_classify_pkgs;
-+ transaction_free;
-+ transaction_free_orderdata;
-+ transaction_init;
-+ transaction_init_clone;
-+ transaction_installedresult;
-+ transaction_obs_pkg;
-+ transaction_order;
-+ transaction_order_add_choices;
-+ transaction_type;
-+ vercmp;
-+ local:
-+ *;
-+};
---
-1.7.4.4
-
+++ /dev/null
->From 1f9659b55013f222046b9d161fd5a0f2fc399cb8 Mon Sep 17 00:00:00 2001
-From: Michael Tremer <michael.tremer@ipfire.org>
-Date: Thu, 21 Apr 2011 12:48:41 +0200
-Subject: [PATCH] Make libsatsolver{,ext} a versioned shared lib.
-
-Most distributions only do accept shared libraries because of
-relro and hardening stuff.
-
-Previously, libsatsolver was statically compiled because the ABI
-was assumed to be changed from time to time but has now become
-very stable.
-
-Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
----
- ext/CMakeLists.txt | 6 +++++-
- src/CMakeLists.txt | 6 +++++-
- tools/CMakeLists.txt | 12 ++++++------
- 3 files changed, 16 insertions(+), 8 deletions(-)
-
-diff --git a/ext/CMakeLists.txt b/ext/CMakeLists.txt
-index 8e71eee..68e1c3c 100644
---- a/ext/CMakeLists.txt
-+++ b/ext/CMakeLists.txt
-@@ -8,7 +8,11 @@ SET(libsatsolverext_SRCS
- ${libsatsolverext_SRCS} pool_fileconflicts.c repo_rpmdb.c)
- ENDIF (NOT DEBIAN)
-
--ADD_LIBRARY(satsolverext STATIC ${libsatsolverext_SRCS})
-+ADD_LIBRARY(satsolverext SHARED ${libsatsolverext_SRCS})
-+SET_TARGET_PROPERTIES(satsolverext PROPERTIES
-+ VERSION "${LIBSATSOLVER_MAJOR}.${LIBSATSOLVER_MINOR}"
-+ SOVERSION "${LIBSATSOLVER_MAJOR}"
-+)
-
- SET(libsatsolverext_HEADERS
- pool_fileconflicts.h repo_content.h repo_deltainfoxml.h repo_helix.h repo_products.h
-diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
-index 9bd0fde..6a14d10 100644
---- a/src/CMakeLists.txt
-+++ b/src/CMakeLists.txt
-@@ -6,7 +6,11 @@ SET(libsatsolver_SRCS
- transaction.c rules.c problems.c
- chksum.c md5.c sha1.c sha2.c satversion.c)
-
--ADD_LIBRARY(satsolver STATIC ${libsatsolver_SRCS})
-+ADD_LIBRARY(satsolver SHARED ${libsatsolver_SRCS})
-+SET_TARGET_PROPERTIES(satsolver PROPERTIES
-+ VERSION "${LIBSATSOLVER_MAJOR}.${LIBSATSOLVER_MINOR}"
-+ SOVERSION "${LIBSATSOLVER_MAJOR}"
-+)
-
- SET(libsatsolver_HEADERS
- bitmap.h evr.h hash.h policy.h poolarch.h poolvendor.h pool.h
-diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt
-index 79d4890..7696612 100644
---- a/tools/CMakeLists.txt
-+++ b/tools/CMakeLists.txt
-@@ -20,19 +20,19 @@ ADD_EXECUTABLE(rpmmd2solv rpmmd2solv.c)
- TARGET_LINK_LIBRARIES(rpmmd2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY})
-
- ADD_EXECUTABLE(helix2solv helix2solv.c)
--TARGET_LINK_LIBRARIES(helix2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY})
-+TARGET_LINK_LIBRARIES(helix2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY})
-
- ADD_EXECUTABLE(susetags2solv susetags2solv.c)
--TARGET_LINK_LIBRARIES(susetags2solv toolstuff satsolverext satsolver ${ZLIB_LIBRARY})
-+TARGET_LINK_LIBRARIES(susetags2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY})
-
- ADD_EXECUTABLE(updateinfoxml2solv updateinfoxml2solv.c)
--TARGET_LINK_LIBRARIES(updateinfoxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY})
-+TARGET_LINK_LIBRARIES(updateinfoxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY})
-
- ADD_EXECUTABLE(deltainfoxml2solv deltainfoxml2solv.c)
--TARGET_LINK_LIBRARIES(deltainfoxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY})
-+TARGET_LINK_LIBRARIES(deltainfoxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY})
-
- ADD_EXECUTABLE(repomdxml2solv repomdxml2solv.c)
--TARGET_LINK_LIBRARIES(repomdxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY})
-+TARGET_LINK_LIBRARIES(repomdxml2solv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY})
-
- ADD_EXECUTABLE(installcheck installcheck.c)
- TARGET_LINK_LIBRARIES(installcheck satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY})
-@@ -44,7 +44,7 @@ ADD_EXECUTABLE(dumpsolv dumpsolv.c )
- TARGET_LINK_LIBRARIES(dumpsolv satsolver)
-
- ADD_EXECUTABLE(mergesolv mergesolv.c )
--TARGET_LINK_LIBRARIES(mergesolv toolstuff satsolverext satsolver)
-+TARGET_LINK_LIBRARIES(mergesolv toolstuff satsolverext satsolver ${EXPAT_LIBRARY} ${ZLIB_LIBRARY})
-
- install(TARGETS
- mergesolv
---
-1.7.4.4
-
--- /dev/null
+diff -Naur qemu-kvm-0.15.0.org/hw/9pfs/virtio-9p-local.c qemu-kvm-0.15.0/hw/9pfs/virtio-9p-local.c
+--- qemu-kvm-0.15.0.org/hw/9pfs/virtio-9p-local.c 2011-08-09 14:40:29.000000000 +0200
++++ qemu-kvm-0.15.0/hw/9pfs/virtio-9p-local.c 2011-08-14 10:31:22.711480316 +0200
+@@ -21,6 +21,16 @@
+ #include <sys/un.h>
+ #include <attr/xattr.h>
+
++#ifndef AT_FDCWD
++/* Copied from linux/include/linux/fcntl.h * because direct include fails */
++#define AT_FDCWD -100 /* Special value used to indicate
++ openat should use the current
++ working directory. */
++#define AT_SYMLINK_NOFOLLOW 0x100 /* Do not follow symbolic links. */
++#define AT_REMOVEDIR 0x200 /* Remove directory instead of
++ unlinking file. */
++#define AT_SYMLINK_FOLLOW 0x400 /* Follow symbolic links. */
++#endif
+
+ static int local_lstat(FsContext *fs_ctx, const char *path, struct stat *stbuf)
+ {
+diff -Naur qemu-kvm-0.15.0.org/linux-user/syscall.c qemu-kvm-0.15.0/linux-user/syscall.c
+--- qemu-kvm-0.15.0.org/linux-user/syscall.c 2011-08-09 14:40:29.000000000 +0200
++++ qemu-kvm-0.15.0/linux-user/syscall.c 2011-08-14 12:43:43.190231600 +0200
+@@ -971,6 +971,16 @@
+ return result;
+ }
+
++/* Copied from linux/include/asm/resource.h * because direct include fails */
++
++#ifndef RLIMIT_NICE
++#define RLIMIT_NICE 13 /* max nice prio allowed to raise to
++ 0-39 for nice level 19 .. -20 */
++#endif
++#ifndef RLIMIT_RTPRIO
++#define RLIMIT_RTPRIO 14 /* maximum realtime priority */
++#endif
++
+ static inline int target_to_host_resource(int code)
+ {
+ switch (code) {
#!/usr/bin/perl
##################################################
-##### VPN-Watch.pl Version 0.6a #####
+##### VPN-Watch.pl Version 0.7 #####
##################################################
# #
# VPN-Watch is part of the IPFire Firewall #
$round++;
- # Reset roundcounter after 60 min. To do established check.
- if ($round > 59) { $round=0; }
+ # Reset roundcounter after 10 min. To do established check.
+ if ($round > 9) { $round=0; }
if (open(FILE, "<${General::swroot}/vpn/config")) { @vpnsettings = <FILE>;
close(FILE);
unless(@vpnsettings) {exit 1;}
}
-my $status = `ipsec whack --status`;
+my $status = `ipsec status`;
foreach (@vpnsettings){
my @settings = split(/,/,$_);
-
+
+ chomp($settings[30]);
if ($settings[27] ne 'RED'){next;}
if ($settings[4] ne 'net'){next;}
if ($settings[1] ne 'on'){next;}chomp($settings[29]);
my $remoteip = `/usr/bin/ping -c 1 $remotehostname 2>/dev/null | head -n1 | awk '{print \$3}' | tr -d '()' | tr -d ':'`;chomp($remoteip);
if ($remoteip eq ""){next;if ($debug){logger("Unable to resolve $remotehostname.");}}
my $ipmatch= `echo "$status" | grep '$remoteip' | grep '$settings[2]'`;
- my $established= `echo "$status" | grep '$settings[2]' | grep 'erouted;'`;
+ my $established= `echo "$status" | grep '$settings[2]' | grep -e 'erouted;' -e 'INSTALLED'`;
my $known= `echo "$status" | grep '$settings[2]'`;
if ( $ipmatch eq '' && $known ne '' ){
logger("Remote IP for host $remotehostname($remoteip) has changed, restarting ipsec.");
system("/usr/local/bin/ipsecctrl S $settings[0]");
$round=0;
- last; #all connections will reloaded
- #remove this if ipsecctrl can restart single con again
}
if ($debug){logger("Round=".$round." and established=".$established);}
logger("Connection to $remotehostname($remoteip) not erouted, restarting ipsec.");
system("/usr/local/bin/ipsecctrl S $settings[0]");
$round=0;
- last; #all connections will reloaded
- #remove this if ipsecctrl can restart single con again
}
}