+}
+
+/* Init SILC. Called from src/fe-text/silc.c */
+
+void silc_core_init(void)
+{
+ static struct poptOption silc_options[] = {
+ { NULL, '\0', POPT_ARG_CALLBACK, (void *)&silc_opt_callback, '\0', NULL },
+ { "show-key", 'S', POPT_ARG_STRING, NULL, 0,
+ "Show the contents of the public key", "FILE" },
+ { "list-ciphers", 'c', POPT_ARG_NONE, NULL, 0,
+ "List supported ciphers", NULL },
+ { "list-hash-funcs", 'H', POPT_ARG_NONE, NULL, 0,
+ "List supported hash functions", NULL },
+ { "list-hmacs", 'M', POPT_ARG_NONE, NULL, 0,
+ "List supported HMACs", NULL },
+ { "list-pkcs", 'P', POPT_ARG_NONE, NULL, 0,
+ "List supported PKCSs", NULL },
+ { "debug", 'd', POPT_ARG_STRING, NULL, 0,
+ "Enable debugging", "STRING" },
+ { NULL, '\0', 0, NULL }
+ };
+
+ static struct poptOption options[] = {
+ { NULL, '\0', POPT_ARG_INCLUDE_TABLE, silc_options, 0, NULL, NULL },
+ { "create-key-pair", 'C', POPT_ARG_NONE, &opt_create_keypair, 0,
+ "Create new public key pair", NULL },
+ { "pkcs", 0, POPT_ARG_STRING, &opt_pkcs, 0,
+ "Set the PKCS of the public key pair", "PKCS" },
+ { "bits", 0, POPT_ARG_INT, &opt_bits, 0,
+ "Set the length of the public key pair", "VALUE" },
+ { NULL, '\0', 0, NULL }
+ };