5
5
6
6
#include "../src/formatting.h"
7
7
8
+ static int (* num_format_fn )(char * , char * , enum phone_format , char * );
9
+ static int (* is_valid_number_fn )(char * , char * , int );
10
+ static int (* get_region_fn )(char * , char * , char * );
11
+ static int (* get_country_code_fn )(char * , char * );
12
+ static enum phone_type (* get_number_type_fn )(char * , char * );
13
+ static int (* get_country_code_for_region_fn )(char * region );
14
+
8
15
int main (int argc , char * * argv )
9
16
{
10
17
void * lib_handle ;
11
18
int (* fn )(char * , char * , enum phone_format , char * );
12
19
char * error ;
13
20
char out_num [100 ];
14
21
15
- lib_handle = dlopen ("/usr/lib/libastphonenumber.so" , RTLD_LAZY );
22
+ lib_handle = dlopen ("/usr/lib/libastphonenumber.so.1 " , RTLD_LAZY );
16
23
if (!lib_handle )
17
24
{
18
25
fprintf (stderr , "dlopen: %s\n" , dlerror ());
@@ -32,6 +39,15 @@ int main(int argc, char **argv)
32
39
}
33
40
34
41
(* fn )(argv [1 ], argv [2 ], PLUSE164 , out_num );
42
+
43
+ num_format_fn = (int (* )(char * , char * , enum phone_format , char * )) dlsym (lib_handle , "num_format" );
44
+ is_valid_number_fn = (int (* )(char * , char * , int )) dlsym (lib_handle , "is_valid_number" );
45
+ get_region_fn = (int (* )(char * , char * , char * )) dlsym (lib_handle , "get_region" );
46
+ get_country_code_fn = (int (* )(char * , char * )) dlsym (lib_handle , "get_country_code" );
47
+ get_number_type_fn = (enum phone_type (* )(char * , char * )) dlsym (lib_handle , "get_number_type" );
48
+ get_country_code_for_region_fn = (int (* )(char * )) dlsym (lib_handle , "get_country_code_for_region" );
49
+
50
+
35
51
printf ("Formatted: %s\n" ,out_num );
36
52
37
53
dlclose (lib_handle );
0 commit comments