- /* create a Trust Router instance */
- if (NULL == (tr = tr_create())) {
- fprintf(stderr, "Unable to create Trust Router instance, exiting.\n");
+ /* parse the command line*/
+ argp_parse(&argp, argc, argv, 0, 0, &opts);
+
+ /* process options */
+ remove_trailing_slash(opts.config_dir);
+
+
+ /***** Print version info *****/
+ print_version_info();
+ if (opts.version_requested)
+ return 0; /* requested that we print version and exit */
+
+ /***** create a Trust Router instance *****/
+ if (NULL == (tr = tr_create(main_ctx))) {
+ tr_crit("Unable to create Trust Router instance, exiting.");
+ return 1;
+ }
+
+ /***** initialize the trust path query server instance *****/
+ if (NULL == (tr->tids = tids_new(tr))) {
+ tr_crit("Error initializing Trust Path Query Server instance.");
+ return 1;
+ }
+
+ /***** initialize the trust router protocol server instance *****/
+ if (NULL == (tr->trps = trps_new(tr))) {
+ tr_crit("Error initializing Trust Router Protocol Server instance.");
+ return 1;
+ }
+
+ /***** initialize the monitoring interface instance *****/
+ if (NULL == (tr->mons = mons_new(tr))) {
+ tr_crit("Error initializing monitoring interface instance.");