From: Raphael Hertzog Date: Mon, 13 Aug 2007 21:08:27 +0000 (+0200) Subject: Fixed parsing of objdump's output on ia64 X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=90dfbd7eb305b880935f8b6cb57bf81fa753e283;p=dpkg Fixed parsing of objdump's output on ia64 ia64 libraries tend to have more entries listed by objdump with visibility attributes and no versions. This was unexpected and ended up with the visibility being mistakenly used as symbol version. This fixes that case and adds a corresponding non-regression test. --- diff --git a/scripts/Dpkg/Shlibs/Objdump.pm b/scripts/Dpkg/Shlibs/Objdump.pm index b635079b..cd51f427 100644 --- a/scripts/Dpkg/Shlibs/Objdump.pm +++ b/scripts/Dpkg/Shlibs/Objdump.pm @@ -204,6 +204,7 @@ sub _parse { # 00069960 w DF .text 0000001e GLIBC_2.0 bcmp # 00000000 w D *UND* 00000000 _pthread_cleanup_pop_restore # 0000b788 g DF .text 0000008e Base .protected xine_close +# 0000b788 g DF .text 0000008e .hidden IA__g_free # | ||||||| | | | | # | ||||||| | | Version str (.visibility) + Symbol name # | ||||||| | Alignment @@ -223,10 +224,15 @@ sub _parse { sub parse_dynamic_symbol { my ($self, $line) = @_; - my $vis = '(?:\s+(?:\.protected|\.hidden|\.internal|0x\S+))?'; - if ($line =~ /^[0-9a-f]+ (.{7})\s+(\S+)\s+[0-9a-f]+\s+(\S+)?(?:$vis\s+(\S+))/) { + my $vis = '(?:\.protected|\.hidden|\.internal|0x\S+)'; + if ($line =~ /^[0-9a-f]+ (.{7})\s+(\S+)\s+[0-9a-f]+\s+(\S+)?(?:(?:\s+$vis)?\s+(\S+))/) { my ($flags, $sect, $ver, $name) = ($1, $2, $3, $4); + + # Special case if version is missing but extra visibility + # attribute replaces it in the match + $ver = '' if defined($ver) and $ver =~ /^$vis$/; + my $symbol = { name => $name, version => defined($ver) ? $ver : '', diff --git a/scripts/t/200_Dpkg_Shlibs.t b/scripts/t/200_Dpkg_Shlibs.t index c2c5be7b..f19f83dd 100644 --- a/scripts/t/200_Dpkg_Shlibs.t +++ b/scripts/t/200_Dpkg_Shlibs.t @@ -1,6 +1,6 @@ # -*- mode: cperl;-*- -use Test::More tests => 24; +use Test::More tests => 25; use strict; use warnings; @@ -119,3 +119,19 @@ is_deeply($sym, { 'minver' => '1.0', 'dep_id' => 1, 'deprecated' => 0, 'depends' => 'libvirtualfake', 'soname' => 'libfake.so.1' }, 'overrides order with circular #include'); +# Check parsing of objdump output on ia64 (local symbols +# without versions and with visibility attribute) +$obj = Dpkg::Shlibs::Objdump::Object->new; + +open $objdump, '<', "t/200_Dpkg_Shlibs/objdump.glib-ia64" + or die "t/200_Dpkg_Shlibs/objdump.glib-ia64: $!"; +$obj->_parse($objdump); +close $objdump; + +$sym = $obj->get_symbol('IA__g_free'); +is_deeply( $sym, { name => 'IA__g_free', version => '', + soname => 'libglib-2.0.so.0', section => '.text', dynamic => 1, + debug => '', type => 'F', weak => '', + hidden => '', defined => 1 }, + 'symbol with visibility without version' ); + diff --git a/scripts/t/200_Dpkg_Shlibs/objdump.glib-ia64 b/scripts/t/200_Dpkg_Shlibs/objdump.glib-ia64 new file mode 100644 index 00000000..1b3d9871 --- /dev/null +++ b/scripts/t/200_Dpkg_Shlibs/objdump.glib-ia64 @@ -0,0 +1,347 @@ + +/usr/lib/libglib-2.0.so.0: file format elf64-little + +Program Header: + LOAD off 0x0000000000000000 vaddr 0x0000000000000000 paddr 0x0000000000000000 align 2**16 + filesz 0x0000000000158820 memsz 0x0000000000158820 flags r-x + LOAD off 0x0000000000158820 vaddr 0x0000000000168820 paddr 0x0000000000168820 align 2**16 + filesz 0x0000000000001498 memsz 0x0000000000001a90 flags rw- + DYNAMIC off 0x0000000000158948 vaddr 0x0000000000168948 paddr 0x0000000000168948 align 2**3 + filesz 0x00000000000001f0 memsz 0x00000000000001f0 flags rw- + STACK off 0x0000000000000000 vaddr 0x0000000000000000 paddr 0x0000000000000000 align 2**3 + filesz 0x0000000000000000 memsz 0x0000000000000000 flags rw- +0x70000001 off 0x0000000000150e28 vaddr 0x0000000000150e28 paddr 0x0000000000150e28 align 2**3 + filesz 0x00000000000079f8 memsz 0x00000000000079f8 flags r-- + +Dynamic Section: + NEEDED libc.so.6.1 + SONAME libglib-2.0.so.0 + INIT 0x15070 + FINI 0x106360 + INIT_ARRAY 0x168820 + INIT_ARRAYSZ 0x18 + FINI_ARRAY 0x168838 + FINI_ARRAYSZ 0x8 + HASH 0x158 + GNU_HASH 0x25c8 + STRTAB 0xc4c0 + SYMTAB 0x4a38 + STRSZ 0x5deb + SYMENT 0x18 + 0x70000000 0x168dd8 + PLTGOT 0x168dd8 + PLTRELSZ 0xcd8 + PLTREL 0x7 + JMPREL 0x14398 + RELA 0x12d18 + RELASZ 0x1680 + RELAENT 0x18 + VERNEED 0x12ce8 + VERNEEDNUM 0x1 + VERSYM 0x122ac + RELACOUNT 0x60 + +Version References: + required from libc.so.6.1: + 0x0d696913 0x00 03 GLIBC_2.3 + 0x0d696912 0x00 02 GLIBC_2.2 + +DYNAMIC SYMBOL TABLE: +00000000000bbaa0 l DF .text 00000000000006b0 .hidden IA__g_thread_pool_new +000000000007b730 l DF .text 0000000000000200 .hidden IA__g_option_group_free +00000000000b2f30 l DF .text 0000000000000060 .hidden IA__g_str_equal +00000000000cd0c0 l DF .text 0000000000000010 .hidden IA__g_direct_hash +0000000000095660 l DF .text 00000000000001d0 .hidden IA__g_scanner_warn +00000000001062e0 l DF .text 0000000000000080 .hidden __do_global_ctors_aux +0000000000071fe0 l DF .text 00000000000000f0 .hidden IA__g_free +0000000000074a30 l DF .text 0000000000000370 .hidden _g_log_fallback_handler +0000000000077080 l DF .text 0000000000000a20 .hidden IA__g_log_default_handler +00000000000afc90 l DF .text 0000000000000090 .hidden IA__g_str_hash +0000000000095830 l DF .text 00000000000001f0 .hidden IA__g_scanner_error +00000000000d4d60 l DF .text 0000000000000290 g_io_unix_get_flags +00000000000d4a60 l DF .text 0000000000000120 g_io_unix_set_flags +00000000000d4b80 l DF .text 0000000000000020 g_io_unix_free +00000000000d4ba0 l DF .text 00000000000000c0 g_io_unix_create_watch +00000000000d4c60 l DF .text 0000000000000100 g_io_unix_close +00000000000d4ff0 l DF .text 00000000000001f0 g_io_unix_seek +00000000000d51e0 l DF .text 0000000000000150 g_io_unix_write +00000000000d5330 l DF .text 0000000000000180 g_io_unix_read +00000000000d4820 l DF .text 0000000000000030 g_io_unix_finalize +00000000000d4950 l DF .text 0000000000000110 g_io_unix_dispatch +00000000000d4850 l DF .text 0000000000000080 g_io_unix_check +00000000000d48d0 l DF .text 0000000000000080 g_io_unix_prepare +00000000000cd720 l DF .text 0000000000000090 language_names_cache_free +00000000000c89f0 l DF .text 0000000000000090 charset_cache_free +00000000000c20f0 l DF .text 0000000000000050 interval_compare +00000000000bb270 l DF .text 0000000000000830 g_thread_pool_thread_proxy +00000000000b3360 l DF .text 0000000000000050 g_thread_fail +00000000000b33b0 l DF .text 00000000000000c0 gettime +00000000000b8c70 l DF .text 00000000000004a0 g_thread_cleanup +00000000000b6790 l DF .text 00000000000003b0 g_thread_create_proxy +00000000000a37a0 l DF .text 0000000000000320 private_thread_memory_cleanup +000000000009a7d0 l DF .text 00000000000000e0 iter_compare +0000000000094c10 l DF .text 0000000000000060 g_scanner_destroy_symbol_table_entry +0000000000095f50 l DF .text 00000000000001b0 g_scanner_msg_handler +0000000000096100 l DF .text 00000000000000a0 g_scanner_key_equal +0000000000093210 l DF .text 0000000000000080 g_scanner_key_hash +0000000000093290 l DF .text 00000000000000c0 g_scanner_foreach_internal +0000000000092510 l DF .text 00000000000004a0 interpolate_replacement +000000000008cd60 l DF .text 0000000000000050 literal_replacement +000000000008cd00 l DF .text 0000000000000060 free_interpolation_data +0000000000089190 l DF .text 0000000000000040 relation_delete_value_tuple +0000000000089c20 l DF .text 0000000000000030 g_relation_free_array +0000000000089690 l DF .text 0000000000000210 g_relation_delete_tuple +00000000000895a0 l DF .text 00000000000000f0 g_relation_select_tuple +0000000000088c30 l DF .text 00000000000000a0 g_relation_print_index +0000000000088cd0 l DF .text 0000000000000170 g_relation_print_one +00000000000889a0 l DF .text 0000000000000020 tuple_hash_2 +0000000000088940 l DF .text 0000000000000060 tuple_equal_2 +000000000007bc50 l DF .text 0000000000000050 dgettext_swapped +00000000000787b0 l DF .text 0000000000000040 g_node_find_func +0000000000071570 l DF .text 0000000000000200 profiler_try_realloc +0000000000071770 l DF .text 0000000000000150 profiler_try_malloc +0000000000073410 l DF .text 0000000000000190 profiler_calloc +00000000000718c0 l DF .text 00000000000001c0 profiler_free +0000000000073380 l DF .text 0000000000000090 profiler_realloc +00000000000735a0 l DF .text 0000000000000090 profiler_malloc +0000000000071a80 l DF .text 00000000000000d0 fallback_calloc +000000000005a2b0 l DF .text 0000000000000040 g_source_callback_get +000000000005d650 l DF .text 00000000000000e0 g_source_callback_unref +000000000005a290 l DF .text 0000000000000020 g_source_callback_ref +000000000005a340 l DF .text 00000000000000c0 g_idle_dispatch +000000000005a330 l DF .text 0000000000000010 g_idle_check +000000000005a310 l DF .text 0000000000000020 g_idle_prepare +000000000005a400 l DF .text 00000000000000c0 g_child_watch_dispatch +000000000005a5c0 l DF .text 0000000000000020 g_child_watch_check +000000000005a5e0 l DF .text 0000000000000030 g_child_watch_prepare +0000000000060390 l DF .text 0000000000000160 g_timeout_dispatch +00000000000604f0 l DF .text 00000000000000f0 g_timeout_check +00000000000605e0 l DF .text 0000000000000310 g_timeout_prepare +000000000005cc20 l DF .text 0000000000000030 g_main_dispatch_free +000000000005b130 l DF .text 00000000000000b0 g_child_watch_signal_handler +00000000000619f0 l DF .text 00000000000002e0 child_watch_helper_thread +000000000004d830 l DF .text 00000000000000b0 g_key_file_key_value_pair_free +0000000000041860 l DF .text 0000000000000090 default_finalize_hook +000000000002b370 l DF .text 0000000000000090 filename_charset_cache_free +000000000001fe80 l DF .text 0000000000000440 text_raw_cb +0000000000020660 l DF .text 0000000000000480 end_element_raw_cb +0000000000026110 l DF .text 0000000000001cf0 start_element_raw_cb +000000000001e790 l DF .text 0000000000000060 parse_data_free +000000000001e6e0 l DF .text 00000000000000b0 bookmark_app_info_free +000000000001e960 l DF .text 0000000000000260 bookmark_item_free +000000000001c300 l DF .text 0000000000000020 stack_trace_sigchld +0000000000019a00 l DF .text 0000000000000070 g_async_queue_invert_compare +0000000000016be0 l DF .text 0000000000000080 __do_jv_register_classes +0000000000016b20 l DF .text 00000000000000b0 __do_global_dtors_aux +0000000000016aa0 l DF .text 0000000000000070 gmon_initializer +0000000000000000 DF *UND* 0000000000000370 GLIBC_2.2 getpwuid +0000000000000000 DF *UND* 0000000000000550 GLIBC_2.2 freopen +0000000000000000 DF *UND* 0000000000000050 GLIBC_2.2 __strtod_internal +0000000000000000 DF *UND* 0000000000000240 GLIBC_2.2 feof +0000000000000000 DF *UND* 0000000000000450 GLIBC_2.2 localeconv +0000000000000000 DF *UND* 00000000000001e0 GLIBC_2.2 strcpy +0000000000000000 DF *UND* 0000000000000200 GLIBC_2.2 raise +0000000000000000 DO *UND* 0000000000000008 GLIBC_2.2 environ +0000000000000000 DF *UND* 0000000000000030 GLIBC_2.2 getuid +0000000000000000 DF *UND* 0000000000000180 GLIBC_2.2 waitpid +0000000000000000 DF *UND* 0000000000000100 GLIBC_2.2 strcasecmp +0000000000000000 DF *UND* 0000000000000060 GLIBC_2.2 select +0000000000000000 DF *UND* 0000000000000110 GLIBC_2.2 closedir +0000000000000000 DF *UND* 0000000000000440 GLIBC_2.2 fwrite +0000000000000000 DF *UND* 00000000000001d0 GLIBC_2.2 rewinddir +0000000000000000 DF *UND* 0000000000000060 GLIBC_2.2 close +0000000000000000 DF *UND* 0000000000000280 GLIBC_2.2 strstr +0000000000000000 DF *UND* 0000000000000080 GLIBC_2.2 time +0000000000000000 DF *UND* 0000000000000520 GLIBC_2.2 fdopen +0000000000000000 w D *UND* 0000000000000000 __gmon_start__ +0000000000000000 w D *UND* 0000000000000000 _Jv_RegisterClasses +0000000000000000 DF *UND* 0000000000000050 GLIBC_2.2 wcsxfrm +0000000000000000 DF *UND* 00000000000000c0 GLIBC_2.2 strncasecmp +0000000000000000 DF *UND* 00000000000000d0 GLIBC_2.2 remove +0000000000000000 DF *UND* 00000000000004f0 GLIBC_2.2 malloc +0000000000000000 DF *UND* 0000000000000080 GLIBC_2.2 execve +0000000000000000 DF *UND* 00000000000000b0 GLIBC_2.2 fprintf +0000000000000000 DF *UND* 0000000000000200 GLIBC_2.2 setpwent +0000000000000000 DF *UND* 0000000000000100 GLIBC_2.2 nl_langinfo +0000000000000000 DF *UND* 0000000000000040 GLIBC_2.2 chdir +0000000000000000 DF *UND* 0000000000000100 GLIBC_2.2 gethostname +0000000000000000 w DO *UND* 0000000000000008 GLIBC_2.2 _environ +0000000000000000 DF *UND* 0000000000000040 GLIBC_2.2 rmdir +0000000000000000 DF *UND* 0000000000000390 GLIBC_2.2 fputc +0000000000000000 DF *UND* 0000000000000170 GLIBC_2.2 poll +0000000000000000 DF *UND* 00000000000003e0 GLIBC_2.2 getcwd +0000000000000000 DO *UND* 0000000000000008 GLIBC_2.2 stdin +0000000000000000 DF *UND* 00000000000004f0 GLIBC_2.2 getpwnam_r +0000000000000000 DF *UND* 0000000000000520 GLIBC_2.2 memmove +0000000000000000 DF *UND* 0000000000000050 GLIBC_2.2 __strtoul_internal +0000000000000000 DO *UND* 0000000000000008 GLIBC_2.2 stdout +0000000000000000 DF *UND* 0000000000000050 GLIBC_2.2 strncmp +0000000000000000 DF *UND* 0000000000000320 GLIBC_2.2 vasprintf +0000000000000000 DF *UND* 0000000000000210 GLIBC_2.2 endpwent +0000000000000000 DF *UND* 00000000000001f0 GLIBC_2.2 fcntl +0000000000000000 DF *UND* 0000000000000040 GLIBC_2.2 dup2 +0000000000000000 DF *UND* 00000000000007e0 GLIBC_2.2 fork +0000000000000000 DF *UND* 0000000000000050 GLIBC_2.2 gmtime +0000000000000000 DF *UND* 0000000000000040 GLIBC_2.2 readlink +0000000000000000 DF *UND* 0000000000000080 GLIBC_2.3 __ctype_toupper_loc +0000000000000000 DF *UND* 0000000000000060 GLIBC_2.2 lseek +0000000000000000 DF *UND* 00000000000000c0 GLIBC_2.2 __fxstat +0000000000000000 DF *UND* 00000000000000b0 GLIBC_2.2 fscanf +0000000000000000 DO *UND* 0000000000000008 GLIBC_2.2 __environ +0000000000000000 DF *UND* 0000000000000040 GLIBC_2.2 munmap +0000000000000000 DF *UND* 0000000000000050 GLIBC_2.2 strftime +0000000000000000 DF *UND* 00000000000003a0 GLIBC_2.2 fread +0000000000000000 DF *UND* 0000000000007090 GLIBC_2.2 vfprintf +0000000000000000 DF *UND* 00000000000000b0 GLIBC_2.2 snprintf +0000000000000000 DF *UND* 0000000000000330 GLIBC_2.2 iconv_open +0000000000000000 DF *UND* 0000000000000080 GLIBC_2.3 __ctype_b_loc +0000000000000000 DF *UND* 0000000000000060 GLIBC_2.2 nanosleep +0000000000000000 DF *UND* 0000000000000050 GLIBC_2.2 pipe +0000000000000000 DF *UND* 0000000000000090 GLIBC_2.2 strpbrk +0000000000000000 DF *UND* 0000000000000640 GLIBC_2.2 realloc +0000000000000000 DF *UND* 0000000000000240 GLIBC_2.2 ferror +0000000000000000 DF *UND* 00000000000004f0 GLIBC_2.2 getpwuid_r +0000000000000000 DF *UND* 0000000000000030 GLIBC_2.2 strcmp +0000000000000000 DF *UND* 00000000000000e0 GLIBC_2.2 setenv +0000000000000000 DF *UND* 0000000000000650 GLIBC_2.2 fclose +0000000000000000 w DF *UND* 0000000000000220 GLIBC_2.2 __cxa_finalize +0000000000000000 DF *UND* 0000000000000020 GLIBC_2.2 __errno_location +0000000000000000 DF *UND* 00000000000002c0 GLIBC_2.2 exit +0000000000000000 DF *UND* 0000000000000060 GLIBC_2.2 open +0000000000000000 DF *UND* 0000000000000590 GLIBC_2.2 abort +0000000000000000 DF *UND* 0000000000000400 GLIBC_2.2 fputs +0000000000000000 DF *UND* 00000000000000a0 GLIBC_2.2 sigemptyset +0000000000000000 DF *UND* 0000000000000050 GLIBC_2.2 localtime_r +0000000000000000 DF *UND* 00000000000000b0 GLIBC_2.2 sprintf +0000000000000000 DF *UND* 00000000000002c0 GLIBC_2.2 unsetenv +0000000000000000 DF *UND* 0000000000000040 GLIBC_2.2 mmap +0000000000000000 DF *UND* 0000000000000040 GLIBC_2.2 mkdir +0000000000000000 DF *UND* 0000000000000060 GLIBC_2.2 creat +0000000000000000 DF *UND* 00000000000000d0 GLIBC_2.2 getpid +0000000000000000 DF *UND* 0000000000000170 GLIBC_2.2 strerror +0000000000000000 DF *UND* 0000000000000220 GLIBC_2.2 memcmp +0000000000000000 DF *UND* 0000000000000320 GLIBC_2.2 qsort +0000000000000000 DF *UND* 0000000000000c70 GLIBC_2.2 sysconf +0000000000000000 DF *UND* 0000000000000190 GLIBC_2.2 bsearch +0000000000000000 DF *UND* 00000000000001b0 GLIBC_2.2 signal +0000000000000000 DF *UND* 00000000000000c0 GLIBC_2.2 __xstat +0000000000000000 DF *UND* 00000000000000c0 GLIBC_2.2 __lxstat +0000000000000000 DF *UND* 0000000000000050 GLIBC_2.2 wcscoll +0000000000000000 DF *UND* 0000000000000160 GLIBC_2.2 vsprintf +0000000000000000 DF *UND* 0000000000000130 GLIBC_2.2 vsnprintf +0000000000000000 DF *UND* 00000000000003e0 GLIBC_2.2 strncpy +0000000000000000 DF *UND* 00000000000002e0 GLIBC_2.2 getenv +0000000000000000 DF *UND* 0000000000000120 GLIBC_2.2 strchr +0000000000000000 DF *UND* 00000000000008c0 GLIBC_2.2 calloc +0000000000000000 DF *UND* 00000000000000a0 GLIBC_2.2 __cxa_atexit +0000000000000000 DF *UND* 0000000000000060 GLIBC_2.2 write +0000000000000000 DF *UND* 0000000000000040 GLIBC_2.2 stpcpy +0000000000000000 DF *UND* 0000000000000450 GLIBC_2.2 fgets +0000000000000000 DF *UND* 0000000000000040 GLIBC_2.2 rename +0000000000000000 DF *UND* 0000000000000310 GLIBC_2.2 __uflow +0000000000000000 DF *UND* 0000000000000410 GLIBC_2.2 memset +0000000000000000 DF *UND* 0000000000000050 GLIBC_2.2 fopen +0000000000000000 DF *UND* 0000000000000050 GLIBC_2.2 __strtol_internal +0000000000000000 DF *UND* 0000000000000040 GLIBC_2.2 unlink +0000000000000000 DF *UND* 0000000000000430 GLIBC_2.2 iconv +0000000000000000 DF *UND* 00000000000001b0 GLIBC_2.2 perror +0000000000000000 DF *UND* 0000000000000880 GLIBC_2.2 execvp +0000000000000000 DF *UND* 0000000000000330 GLIBC_2.2 ungetc +0000000000000000 DF *UND* 0000000000000140 GLIBC_2.2 _exit +0000000000000000 DF *UND* 0000000000000080 GLIBC_2.3 __ctype_tolower_loc +0000000000000000 DF *UND* 0000000000000070 GLIBC_2.2 bindtextdomain +0000000000000000 DF *UND* 0000000000000040 GLIBC_2.2 chmod +0000000000000000 DF *UND* 0000000000000060 GLIBC_2.2 timegm +0000000000000000 DF *UND* 0000000000000060 GLIBC_2.2 read +0000000000000000 DF *UND* 0000000000000300 GLIBC_2.2 readdir +0000000000000000 DF *UND* 0000000000000300 GLIBC_2.2 free +0000000000000000 DF *UND* 0000000000000060 GLIBC_2.2 dcgettext +0000000000000000 DF *UND* 00000000000000e0 GLIBC_2.2 strrchr +0000000000000000 DF *UND* 0000000000000040 GLIBC_2.2 access +0000000000000000 DF *UND* 0000000000000390 GLIBC_2.2 fflush +0000000000000000 DF *UND* 0000000000000070 GLIBC_2.2 bind_textdomain_codeset +0000000000000000 DF *UND* 00000000000001c0 GLIBC_2.2 opendir +0000000000000000 DF *UND* 0000000000000530 GLIBC_2.2 strsignal +0000000000000000 DF *UND* 0000000000000070 GLIBC_2.2 isatty +0000000000000000 DF *UND* 0000000000000130 GLIBC_2.2 posix_memalign +0000000000000000 DF *UND* 0000000000000040 GLIBC_2.2 gettimeofday +0000000000000000 DF *UND* 00000000000000a0 GLIBC_2.2 iconv_close +0000000000000000 DF *UND* 0000000000000040 GLIBC_2.2 dup +0000000000000000 DF *UND* 0000000000000540 GLIBC_2.2 memcpy +0000000000000000 DO *UND* 0000000000000008 GLIBC_2.2 stderr +0000000000000000 DF *UND* 0000000000000030 GLIBC_2.2 getppid +0000000000000000 DF *UND* 0000000000000100 GLIBC_2.2 strlen +0000000000000000 DF *UND* 0000000000000060 GLIBC_2.2 execv +0000000000000000 DF *UND* 0000000000000f50 GLIBC_2.2 setlocale +0000000000000000 DF *UND* 0000000000000060 GLIBC_2.2 sigaction +00000000000909e0 g DF .text 0000000000000310 Base g_regex_match_full +0000000000038400 g DF .text 0000000000000660 Base g_date_strftime +0000000000017530 g DF .text 00000000000000f0 Base g_ptr_array_add +00000000000c6930 g DF .text 00000000000001e0 Base g_utf8_strreverse +0000000000039650 g DF .text 0000000000000030 Base g_date_set_time +00000000000cab10 g DF .text 0000000000000710 Base g_utf8_collate_key_for_filename +00000000000c26f0 g DF .text 0000000000000160 Base g_unichar_type +000000000002a930 g DF .text 0000000000000430 Base g_uri_list_extract_uris +00000000000cf850 g DF .text 0000000000000350 Base g_get_system_data_dirs +000000000008b450 g DF .text 0000000000000070 Base g_rand_new_with_seed_array +00000000000a7410 g DF .text 0000000000000080 Base g_slist_concat +0000000000033c50 g DF .text 0000000000000020 Base g_date_valid_weekday +000000000003f090 g DF .text 0000000000000190 Base g_hash_table_get_values +0000000000058710 g DF .text 0000000000000010 Base g_list_pop_allocator +000000000008c9a0 g DF .text 00000000000000b0 Base g_match_info_is_partial_match +00000000000d3620 g DF .text 0000000000000290 Base g_get_user_name +00000000000a84d0 g DF .text 0000000000000030 Base g_slist_free_1 +00000000000cccc0 g DF .text 00000000000002b0 Base g_unicode_canonical_decomposition +00000000000656e0 g DF .text 0000000000000550 Base g_main_context_unref +00000000000d42b0 g DF .text 0000000000000100 Base g_vsprintf +0000000000079f90 g DF .text 00000000000000e0 Base g_node_get_root +0000000000016df0 g DF .text 0000000000000130 Base g_ptr_array_remove_index_fast +000000000007b3b0 g DF .text 0000000000000080 Base g_option_group_set_parse_hooks +00000000000b2c80 g DF .text 0000000000000170 Base g_string_chunk_clear +0000000000021620 g DF .text 0000000000000040 Base g_bookmark_file_error_quark +0000000000088490 g DF .text 0000000000000110 Base g_queue_sort +00000000000c7c00 g DF .text 0000000000000530 Base g_utf16_to_utf8 +00000000000197e0 g DF .text 0000000000000050 Base g_byte_array_prepend +0000000000053510 g DF .text 0000000000000580 Base g_key_file_get_string_list +0000000000169a40 g DO .sdata 0000000000000008 Base glib_mem_profiler_table +00000000000a8760 g DF .text 00000000000000d0 Base g_slist_remove_link +00000000000a8130 g DF .text 0000000000000060 Base g_slist_prepend +0000000000063bf0 g DF .text 0000000000000390 Base g_main_context_find_source_by_user_data +000000000005c540 g DF .text 00000000000000d0 Base g_main_loop_is_running +000000000003c5e0 g DF .text 0000000000000030 Base g_mkstemp +00000000000b0440 g DF .text 0000000000000140 Base g_string_set_size +0000000000088160 g DF .text 0000000000000110 Base g_queue_insert_after +00000000000738a0 g DF .text 0000000000000150 Base g_log_set_default_handler +0000000000059c30 g DF .text 00000000000000b0 Base g_list_delete_link +0000000000058a10 g DF .text 0000000000000090 Base g_list_position +0000000000059110 g DF .text 0000000000000100 Base g_list_find_custom +00000000000b0990 g DF .text 00000000000000f0 Base g_string_ascii_down +00000000000629a0 g DF .text 0000000000000130 Base g_main_loop_new +000000000005acb0 g DF .text 00000000000000b0 Base g_source_get_context +0000000000033c00 g DF .text 0000000000000020 Base g_date_valid_year +00000000000a7d90 g DF .text 0000000000000030 Base g_slist_insert_sorted +000000000009f6a0 g DF .text 0000000000000f20 Base g_shell_parse_argv +00000000000bca30 g DF .text 00000000000000f0 Base g_timer_stop +0000000000099ec0 g DF .text 0000000000000120 Base g_scanner_peek_next_token +000000000002d5a0 g DF .text 00000000000000f0 Base g_filename_display_basename +00000000000305c0 g DF .text 0000000000000580 Base g_dataset_id_get_data +0000000000064a50 g DF .text 0000000000000480 Base g_source_attach +000000000003e5d0 g DF .text 0000000000000360 Base g_mkdir_with_parents +000000000001de50 g DF .text 0000000000000110 Base g_bookmark_file_has_item +0000000000065050 g DF .text 00000000000001c0 Base g_child_watch_add_full +00000000000a8830 g DF .text 0000000000000050 Base g_freopen +00000000000a8730 g DF .text 0000000000000030 Base g_slist_alloc +0000000000054a60 g DF .text 0000000000000480 Base g_key_file_get_locale_string +0000000000094fd0 g DF .text 00000000000001b0 Base g_scanner_input_file +0000000000093660 g DF .text 00000000000000a0 Base g_scanner_set_scope +0000000000022780 g DF .text 0000000000000180 Base g_bookmark_file_get_visited +000000000002f280 g DF .text 00000000000003a0 Base g_datalist_id_get_data +0000000000040000 g DF .text 00000000000000e0 Base g_hash_table_new_full +00000000000d2f40 g DF .text 0000000000000260 Base g_get_user_config_dir +0000000000059700 g DF .text 0000000000000280 Base g_list_insert_before +0000000000079270 g DF .text 00000000000000f0 Base g_node_n_children +00000000000d0680 g DF .text 0000000000000460 Base g_get_user_cache_dir +000000000006a5a0 g DF .text 00000000000000d0 Base g_markup_parse_context_get_element +00000000000aefe0 g DF .text 00000000000000a0 Base g_strndup + +