+}
+
+/* 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 },
+ { "list-ciphers", 0, POPT_ARG_NONE, NULL, 0,
+ "List supported ciphers", NULL },
+ { "list-hash-funcs", 0, POPT_ARG_NONE, NULL, 0,
+ "List supported hash functions", NULL },
+ { "list-hmacs", 0, POPT_ARG_NONE, NULL, 0,
+ "List supported HMACs", NULL },
+ { "list-pkcs", 0, POPT_ARG_NONE, NULL, 0,
+ "List supported PKCSs", NULL },
+#ifdef SILC_DEBUG
+ { "debug", 'd', POPT_ARG_STRING, NULL, 0,
+ "Enable debugging", "STRING" },
+#endif /* SILC_DEBUG */
+ { "create-key-pair", 'C', POPT_ARG_NONE, NULL, 0,
+ "Create new public key pair", NULL },
+ { "pkcs", 0, POPT_ARG_STRING, &opt_pkcs, 0,
+ "Set the PKCS of the public key pair (-C)", "PKCS" },
+ { "bits", 0, POPT_ARG_INT, &opt_bits, 0,
+ "Set the length of the public key pair (-C)", "VALUE" },
+ { "passphrase-change", 'P', POPT_ARG_STRING, NULL, 0,
+ "Change the passphrase of private key file", "FILE" },
+ { "show-key", 'S', POPT_ARG_STRING, NULL, 0,
+ "Show the contents of the public key", "FILE" },
+ { NULL, '\0', 0, NULL }
+ };